Ride-Hailing Simulator (MVP)
2D city · drivers · orders · zones · surge · cancellations
City
Ready
How to read this
  • Заказы (orders) появляются в зонах города в соответствии с выбранным распределением спроса (demand pattern). У каждого заказа есть точка подачи (pickup) и точка высадки (dropoff).
  • Матчинг (matching) выполняется пакетно: система периодически назначает свободных водителей (idle drivers) ожидающим заказам, используя пространственный поиск ближайших кандидатов.
  • Surge рассчитывается по зонам на основе дисбаланса между ожидающим спросом (pending demand) и доступным предложением (idle supply), затем сглаживается во времени (EMA).
  • Отмены (cancellations) возможны до подачи и во время ожидания. Вероятность отмены растёт при увеличении времени подачи (pickup ETA) относительно базового значения ETA₀ (ETA reference).
  • Цвета объектов:
    • водители: свободен (gray), едет на подачу (blue), выполняет поездку (green);
    • заказы: ожидает (dot), назначен водителю (ring).
  • Метрики справа считаются по скользящему окну (rolling window) последних ~60 секунд, графики показывают более длинную динамику во времени.
  • Если спрос значительно превышает предложение, очередь заказов может расти. В симуляции введены ограничения на активные заказы, чтобы система оставалась устойчивой.
  • Параметр Seed используется для воспроизводимости: при одинаковом seed симуляция развивается одинаково; Randomize меняет стохастическую траекторию.