← Все версии

Обновление Яндекс Маршрутизации от 27 мая 2022 года

Делимся новостями об очередных обновлениях Яндекс Маршрутизации. 
В этой версии появились возможности задавать пропускную способность точки заказа (например, для ограничений по количеству автомобилей, которые могут одновременно разгружаться на одном адресе), максимальную длительность смены водителя, поддержка мультискладов; в приложении Яндекс Курьер появилась возможность загрузки фото для подтверждения факта доставки. Коротко обо всех изменениях смотрите в видео или читайте ниже.
  1. Пропускная способность в точке заказа

Внимание: данная опция сейчас доступна только пользователям API

В случаях, когда на один адрес доставляется несколько заказов, может возникнуть необходимость ограничить кол-во автомобилей, которые одновременно разгружаются на этом адресе.

Пример:

  • Доставляем со склада в магазин 2 вида товаров: замороженное мясо и хлеб, которые невозможно перевозить в одной машине одновременно из-за условий хранения (т.е. потребуется 2 разных вида транспорта).
  • 2 заказа (один – замороженное мясо, другой – хлеб) везём в 1 продуктовый магазин.
  • Окно приёмки в магазине: 9:00 – 10:00



На примере видим, что при планировании 2 разных машины привезут оба заказа одновременно.
Однако если магазин может одновременно разгружать только одну машину, то для учёта данного ограничения при планировании нам как раз потребуется настройка пропускной способности.

Пропускная способность точки задаётся в опции points_throughputs несколькими блоками параметров:

В данном примере мы зададим координаты точки, пропускную способность в 1 машину (vehicle_count: 1), и высокие штрафы за превышение пропускной способности.

Посмотрим, как изменились результаты планирования при таком решении:

Мы видим не только соблюдение ограничения пропускной способности на точке (машины приезжают в магазин в 9:00 и 9:30, соответственно), но и корректно рассчитанное время старта каждой из машин со склада.

  1. Максимальная длительность смены водителя

Ранее можно было использовать параметр vehicles.shifts.max_duration_s для указания максимальной длительности смены, однако приходилось отдельно настраивать высокие штрафы, чтобы при планировании не допускалась переработка курьеров.

Теперь для задания жёсткого окна смены (которое не может быть нарушено) можно использовать vehicles.shifts.hard_max_duration_s. Жесткое окно для смен может быть указано вокруг мягкого (так же как и для заказов).

Рассмотрим пример:

  • 2 машины
  • 3 заказа
  • Желательная продолжительность смены – не более 1 часа


В рассматриваемом случае был использован параметр vehicles.shifts.max_duration_s, поэтому смена у курьера получилось больше 1 часа, и был назначен штраф за превышение смены (так как для системы это выгоднее, чем добавлять второго курьера).

Теперь добавим жесткое ограничение на длительность смены (она не должна быть дольше 3 часов) в файле планирования:

Соответственно, теперь заказы распределятся между курьерами так, чтобы смена каждого из них не превышала 3 часа. А это возможно только с использованием 2 машин, как видно ниже:

  1. Мультисклады

Теперь для машин можно указывать несколько возможных складов для старта или для дозагрузки в течение дня. Для заказов теперь можно указывать перечень складов, откуда они могут быть отправлены.

Рассмотрим пример:

  • 2 склада
  • 2 машины, каждая из которых может стартовать с любого склада и заезжать на любой склад для дозагрузки
  • 20 заказов, часть из которых есть только на складе 1, часть — на складе 2 и еще часть на обоих складах


Чтобы его реализовать создаём в файле планирования 2 склада на вкладке Depot.

На вкладке Vehicles в параметре depot_id добавим через запятую оба склада для каждой машины.

Возможность заезда на дополнительный склад задаётся параметром allow_different_depots_in_route (устанавливаем TRUE).

Максимальное кол-во промежуточных складов, на которые машина может заезжать для дозагрузки, можно указать в max_middle_depots.

На вкладке Orders соответствующие склады, откуда можно привезти товар под заказ, указываем в depot_id для каждого заказа.

Посмотрим результаты.
Машина Citroen Jumper стартует со Склада 1, довозит первый заказ, дозагружается на Складе 2 и развозит остальные заказы.

Машина Ford Transit стартует со Склада 1 и развозит все заказы без дозагрузок.

Эта фича разрабатывалась, чтобы упростить процесс планирования для случаев, когда один и тот же товар можно забрать с разных складов.

Для реализации подобного планирования ранее необходимо было использовать схему pickup-and-delivery и указывать много дублирующих точек с типом pickup.

  1. Фотоподтверждение доставки

При планировании появилась возможность задавать максимальное Мобильное приложение Яндекс Курьер теперь даёт возможность добавить фото для подтверждения факта доставки товара заказчику.

Теперь можно нажать «Добавить фото», а затем сфотографировать доставленный товар или загрузить фото из галереи.

Фото будет привязано к заказу и попадёт в личный кабинет логиста, откуда логист сможет посмотреть фотографии интересующего его заказа, открыв карточку заказа.

Помимо самой фотографии можно посмотреть её геометку и время её создания.

На этом сегодня все, по всем вопросам пишите на routing-support@yandex-team.ru

Для тех, у кого нет возможности посмотреть видеообзор на нашем Youtube-канале дублируем его ниже

Fri Jul 01 2022 13:40:38 GMT+0300 (Moscow Standard Time)