Задача маршрутизации. Распределение доставок. Python

10 000 руб. за проект
27 апреля 2021, 19:27 • 3 отклика • 46 просмотров
Бюджет обсуждаем.

Уже есть готовый сервис на python (для оптимального распределения заказов-доставок по курьерам), который функционирует, но в него нужно внести изменения и доработать его.

1. Дата и время.
Сейчас алгоритм смотрит только на время, но не смотрит на дату.
Пример:
допустим, есть курьер со сменой ЗАВТРА с 09:00 до 18:00. Также есть заказ на сегодня на 14:00. Сейчас алгоритм предложит взять этот заказ этому курьеру, потому что он попадает в рамки между 09:00 и 18:00.

2. Вес заказов.
Желательно учитывать вес заказов (грузов) у курьера на руках.
Хотелось бы избежать ситуации, когда у курьера есть активный заказ на условные 10 кг и ему прилетает еще один заказ на 10 кг, который уже нужно забрать.
Т.е. если бы курьер уже бы доставил 1-ый заказ на 10 кг (или был бы близок к точке) и прилетел 2-ой заказ - это окей.

3. Начальная и конечная точка работы.
Появилась идея дать курьерам возможность указывать начальную точку работу и конечную (ст. метро): т.е. постараться распределить заказы таким образом, чтобы 1-ый и последний заказ были на указанных ст.метро.

Задача маршрутизации: https://developers.google.com/optimization/routing
Класс задачи: https://developers.google.com/optimization/routing...