Продолжаем работать над навигационными алгоритмами. Теперь изучаем поведение дорожного трафика в городах и предлагаем маршруты с учётом прогноза пробок.
Моделирование пробок — задача, над которой давно бьются специалисты. Урбанисты и математики пишут об этом статьи, монографии и книги, а проектировщики городов используют эти данные при строительстве дорог.
Мы взяли данные о миллионах поездок и сделали шаг на это поле. Нет, строить города не будем, но лучше прогнозировать поведение пробок уже начали.
Как это работает
Серверы 2ГИС получают информацию о движении автомобилей в реальном времени. На основе этих данных мы считаем фактические скорости на дорогах и используем их для построения маршрутов (об этом релизе мы рассказывали летом). Но любая поездка может затянуться, если на пути случится мелкое ДТП или сломается светофор. Что сделает навигатор? Обновит время и предложит новый маршрут — поедем дальше.
Но куда лучше не пересчитывать время на ходу, а прогнозировать изменения дорожной ситуации. Так маршруты сразу можно строить мимо пробок или, наоборот, вести в самую пробку, если данные говорят о том, что она скоро рассосётся.
На скриншоте справа появилась ещё одна красная пробка, но оценка времени в пути не изменилась. Алгоритм знает, что ситуация не повлияет на прогнозное время
Для таких прогнозов мы берём несколько параметров: делим каждую дорогу на звенья, относим их к определённому типу (например, шоссе, трасса, двухполосная и др.) и изучаем изменение скоростей. Всё это — на основе миллионов поездок в течение разных интервалов времени — последнего месяца, недели, дня, часа и минут. Для модели машинного обучения имеет значение только это, а в каком городе эта улица, в Магадане, Омске или Великом Новгороде, уже не так важно. Правила дорожного движения везде одинаковые, и пробки ведут себя схожим образом.
Что получилось
Модель вышла в начале октября. Она уже доступна в навигаторе 2ГИС на iOS и Android и в 2GIS.Kit. Прогноз хорошо себя зарекомендовал во множестве городов и позволил значительно уменьшить ошибки предсказания.
Вот два графика. На первом — средняя скорость за 5 минут на улице Большевистская в Новосибирске. На втором — прогноз по этому же участку, сделанный за 20 минут до наблюдений за фактической скоростью.
Прогноз угадывает среднюю скорость, и, что очень важно, ведёт себя гораздо стабильнее, потому что менее подвержен влиянию краткосрочных выбросов — светофоров и локальных краткосрочных заторов.
И главное. Маршруты по пробкам навигатор строит только в том случае, если модель уверена в том, что пробка рассосётся. Если затор глухой и никуда не денется, то предложим маршрут в объезд.
А на экране построения маршрута, как и на слое с пробками, показываем фактическую дорожную ситуацию здесь и сейчас. К этому все привыкли. Прогноз у нас тоже есть, но его используем для вычисления оптимального пути.
Нажимая кнопку «Комментировать», вы принимаете условия Лицензионного соглашения и даёте ООО «ДубльГИС» согласие на обработку персональных данных на условиях и в целях, определённых «Политикой конфиденциальности».