Разработка AI-системы оптимизации маршрутов общественного транспорта
Городской транспорт — система с постоянно меняющимися пассажиропотоками. AI оптимизирует расписание и маршрутную сеть на основе реальных данных, сокращая время ожидания и повышая заполняемость.
Анализ пассажиропотоков
Источники данных:
- Турникеты (AFC — Automated Fare Collection): точное время входа/выхода, тип карты
- GPS-трекеры транспортных средств: реальное местоположение, отклонение от расписания
- Камеры в салоне: CV-подсчёт пассажиров (YOLOv8 + tracking)
- Мобильное приложение: геопозиция пользователей с согласия
Прогноз пассажиропотока:
import pandas as pd
import numpy as np
from lightgbm import LGBMRegressor
class PassengerFlowPredictor:
"""Прогноз пассажиропотока на остановке по 15-минутным интервалам"""
def build_features(self, df):
df = df.copy()
df['hour'] = df['timestamp'].dt.hour
df['minute_bin'] = df['timestamp'].dt.minute // 15
df['dayofweek'] = df['timestamp'].dt.dayofweek
df['is_weekend'] = df['dayofweek'].isin([5, 6]).astype(int)
df['month'] = df['timestamp'].dt.month
# Лаги: те же интервалы в предыдущие периоды
for lag_days in [1, 7, 14]:
df[f'lag_{lag_days}d'] = df['passengers'].shift(lag_days * 96) # 96 интервалов/день
# Скользящее среднее
df['ma_7d'] = df['passengers'].rolling(7 * 96).mean()
return df
def train_and_predict(self, historical_df, forecast_horizon=96):
df = self.build_features(historical_df)
feature_cols = ['hour', 'minute_bin', 'dayofweek', 'is_weekend', 'month',
'lag_1d', 'lag_7d', 'lag_14d', 'ma_7d', 'is_holiday',
'weather_temp', 'weather_rain']
train = df.dropna(subset=feature_cols + ['passengers'])
model = LGBMRegressor(n_estimators=300, learning_rate=0.05, num_leaves=64)
model.fit(train[feature_cols], train['passengers'])
# Прогноз на следующие 24 часа
future = df.tail(forecast_horizon)[feature_cols]
return model.predict(future).clip(min=0)
Оптимизация расписания
Headway Optimization:
Задача: определить оптимальный интервал отправления (headway) для каждого маршрута в каждый временной период:
- Минимизировать ожидание пассажиров (proportional to headway)
- Минимизировать затраты на транспорт (proportional to frequency)
- Ограничение: вместимость при пиковом спросе ≤ 85% мест
Для каждого маршрута и часа: headway* = sqrt(2 × vehicle_capacity × cycle_cost / (passenger_demand × vot))
Динамическое расписание:
В отличие от фиксированного расписания на квартал, AI корректирует частоту в реальном времени:
- Прогноз пиков на следующие 1–2 часа → увеличение частоты заранее
- Выход транспортного средства из строя → перераспределение интервалов
Маршрутная сеть
Transit Network Design:
Оптимизация конфигурации маршрутной сети — задача мета-эвристики (Genetic Algorithm, Simulated Annealing):
- Покрытие: % жителей в шаговой доступности от остановки (норма: 500 м)
- Пересадочность: средние число пересадок до цели
- Дублирование: минимизировать параллельные маршруты
Demand Responsive Transport (DRT):
Мини-бусы по требованию (как Uber Pool для общественного транспорта):
- Пассажир запрашивает поездку A→B через приложение
- Алгоритм объединяет запросы с пересекающимися маршрутами
- VRP-solver в реальном времени → маршрут для мини-автобуса
- Используется в малонаселённых районах, где нерентабелен фиксированный маршрут
Управление парком
Depot allocation:
Сколько транспортных средств выпустить из каждого депо для обслуживания утреннего пика:
- Оптимизация MILP: минимизация пустых пробегов в/из депо
- Учёт технического состояния каждой единицы (ТО расписание)
Electric fleet charging:
Для электробусов (ЛиАЗ 6274, Yutong E12):
- Прогноз потребления заряда по каждому маршруту
- Оптимизация зарядки: ночью дешёвый тариф + в промежутках маршрута
- Гарантия: к началу каждого рейса достаточно заряда
Интеграция с городскими системами
- АСУДД: светофорный приоритет для общественного транспорта (TSP — Transit Signal Priority)
- ГИС Москва/города: публикация расписания через GTFS (General Transit Feed Specification)
- Пассажирские приложения (Яндекс.Транспорт, 2ГИС): real-time позиции через API
Срок разработки: 4–7 месяцев для платформы с прогнозом пассажиропотока, оптимизацией расписания и DRT-модулем.







