public PassengerDto[] CreatePassengers(TransportInitData transportInitData) { return(Enumerable.Range(0, transportInitData.PassengersCount) .Select(index => new PassengerDto { Id = $"{index}", Quality = Math.Round(randomizer.GetRandomDouble(), 2), TransportType = TransportTypes.GetRandomTransportType(randomizer, transportInitData.AvailableTransportTypes), Satisfaction = DefaultSatisfaction, FirstBusQuality = 0.5 }) .ToArray()); }
public IActionResult InitPassengers([FromBody] TransportInitData transportInitData) { var allPassengers = passengersFactory.CreatePassengers(transportInitData); var neighborhood = neighborsManager.GetEachPassengerNeighbors(transportInitData.NeighboursCount, transportInitData.Columns, allPassengers); allPassengers.SetNeighborhood(neighborhood); var averageSatisfaction = transportSystemSatisfaction.Evaluate(allPassengers); return(Ok( new IterationResult { Passengers = allPassengers, AverageSatisfaction = averageSatisfaction, AlgorithmType = ChoiceTransportAlgorithmType.QLearning, AvailableTransportTypes = transportInitData.AvailableTransportTypes })); }