Яндекс Маршрутизация решает задачу, которую вручную не решить за разумное время: как разделить большое число заказов между машинами и в каком порядке объезжать адреса. Сервис получает список точек, список транспорта и ограничения, а возвращает готовые маршруты с расчётным временем прибытия. Доступность сервиса и условия подключения для Беларуси проверяйте на сайте Яндекса, они зависят от страны и тарифа.
Какую задачу решает сервис
В логистике её называют задачей маршрутизации транспорта. Есть склад, парк машин и набор адресов. Нужно, чтобы каждый адрес посетила одна машина, чтобы водитель успел в окно доставки и не превысил грузоподъёмность и чтобы общий пробег был как можно меньше. Диспетчер с картой и таблицей справляется с пятнадцатью точками. На двухстах точках количество вариантов становится настолько огромным, что нужен алгоритм.
Сервис использует данные о дорогах и пробках, поэтому время в пути считает с учётом реальной обстановки на дорогах, а прямую линию между точками не использует. Для городской доставки это важнее, чем километры: десять километров по кольцевой и три километра по центру в час пик занимают разное время.
Какие данные нужны на входе
- адрес склада или склад отправки для каждой машины;
- адреса получателей и желаемые интервалы приезда;
- вес и объём каждого заказа;
- грузоподъёмность и вместимость каждой машины;
- время работы водителей и обеденные перерывы;
- время, которое нужно на разгрузку у одного получателя.
Чем точнее эти данные, тем реальнее маршрут. Самая частая ошибка: не указать время на разгрузку. Алгоритм считает, что водитель отдаёт посылку за секунду, и строит график, который развалится к обеду.
Пример: десять машин и двести заказов
Условная ситуация. У транспортной компании десять машин, на день набралось двести заказов. Часть адресов в пределах города, часть за его чертой. Вручную диспетчер обычно делит город на районы и закрепляет район за машиной. Выходит просто, но неравномерно: одна машина привозит последний заказ в четыре часа дня, другая в девять вечера.
Сервис делит заказы иначе. Он смотрит на загрузку по времени и старается, чтобы все машины закончили примерно в один срок. Допустим, ручной план давал суммарный пробег 1200 километров, а расчёт сервиса 980. Цифры условные, но порядок разницы типичный для плотных городских маршрутов: экономия в десятки процентов пробега возможна, если раньше планировали по районам.
| Показатель | Ручной план | Расчёт сервиса |
|---|---|---|
| Суммарный пробег, км | 1200 | 980 |
| Последний заказ у самой загруженной машины | 21:00 | 19:30 |
| Время на составление плана | около двух часов | несколько минут |
Где сервис даёт сбой
Алгоритм не знает того, что знает диспетчер: что у получателя на Садовой всегда закрыт двор, что на одном рынке с 11 до 13 нельзя подъехать. Такие правила нужно записать в ограничения или поправить маршрут вручную после расчёта. Ещё один слабый момент: заказы, которые пришли после построения плана. Их приходится добавлять отдельным пересчётом.
Если заказов мало и адреса почти не меняются, полноценный сервис избыточен. Хватит карты и таблицы. Подробнее о городской доставке и работе курьеров есть в разделе курьерская доставка, а другие программы для логистов собраны в разделе технологии и сервисы.
Чтобы оценить, сколько стоит рейс на одну машину, пригодится калькулятор стоимости рейса.
Перед запуском в работу стоит прогнать сервис на данных за один уже прошедший день и сравнить результат с тем, как машины ездили на самом деле. Если по пробегу расчёт лучше, а окна доставки он нарушает, в ограничения не внесены какие-то правила, и их нужно дописать. Так настройки отлаживаются без риска для живых заказов.
Частые вопросы
Нужно ли знать программирование, чтобы работать с сервисом?
Для обычной загрузки заказов не нужно: данные можно вносить через таблицу. Программирование понадобится, если подключать сервис к вашей учётной системе через интерфейс обмена данными.
Можно ли поправить маршрут после расчёта?
Да. Расчёт даёт основу, а диспетчер переставляет точки и перераспределяет заказы между машинами с учётом того, чего алгоритм не знает.
Работает ли сервис за городом?
Да, но точность времени ниже, чем в городе: на загородных трассах меньше данных о скорости движения. Закладывайте запас к расчётному времени.



