Учет минимального количества остановок только для используемых ТС

Параметр minimal_stops (см. раздел Ограничение количества остановок в смене) работает на всех заданных автомобилях. Его использование может привести к тому, что алгоритм построит маршрут для всего транспорта, даже если для доставки нужно меньше. Но такой подход позволяет избежать штрафов за нарушение ограничения по минимальному количеству остановок.

Опция ignore_min_stops_for_unused будет полезна, если при планировании необходимо учитывать такие условия:

  • автомобилей задано больше, чем необходимо для доставки заказов, и нужно оптимизировать количество транспорта на маршруте;

  • есть обязательное требование по минимальному количеству остановок.

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

По умолчанию значение ignore_min_stops_for_unused = false, и в этом случае штрафы за несоблюдение minimal_stops будут работать для всех заданных автомобилей.

Пример 1

В автопарке курьерской службы 5 автомобилей. Есть 15 заказов, которые нужно доставить сегодня. Параметр minimal_stops = 3, то есть каждый автомобиль должен совершить минимум 3 остановки. Параметр penalty.stop_lack.per_stop = 2000, что значит — штраф за каждую остановку меньше минимального количества равен 2000. Опция ignore_min_stops_for_unused = false.

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

Пример ExcelЗапрос API (JSON)Ответ APIОткрыть на карте

Пример 2

То же что в примере 1, но с опцией ignore_min_stops_for_unused = true.

Алгоритм планирует также 15 доставок, но позволяет использовать не все машины, которые есть в нашем распоряжении, а только те, что уже задействованы. При этом у всех маршрутов выполняется ограничение по minimal_stops.

Пример ExcelЗапрос API (JSON)Ответ APIОткрыть на карте

Написать в службу поддержки