Транспорт / логистика

Реализованный проект

Алгоритмическое планирование доставки

03

Распределение заказов по машинам с учётом веса, объёма, временных окон и рабочей смены. Сравнение планов на одном наборе данных.

Попробовать решение
  • Python
  • Google OR-Tools
  • PostgreSQL
  • FastAPI
  • Картографические данные

МАСШТАБ ДЕМОНСТРАЦИИ

50заказов в исходном наборе
12машин в модельном парке
1,5–4,5 тбазовая грузоподъёмность
1 деньгоризонт планирования

Это параметры тестового набора, не результаты клиента. Показатели планов рассчитывает OR-Tools при запуске. Карта реальная, но расстояния модельные: по координатам × 1,3, средняя скорость 30 км/ч, без дорожной сети и пробок. Полученный план не предназначен для реального выпуска машин.

01 / ЗАДАЧА

Короткий маршрут
ещё не значит допустимый.

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

02 / РЕШЕНИЕ

Вместо ручной сборки —
модель ограничений.

Разработали алгоритмический планировщик: он превращает ограничения в модель маршрутизации, назначает заказы допустимым машинам и рассчитывает стоимость. Диспетчер видит необслуженные заказы и принимает решение, а не получает непрозрачный список адресов.

  • 01Учёт массы и объёма грузов
  • 02Окна доставки, разгрузка и длительность смены
  • 03Стоимость пробега и выхода машины
  • 04Добавление срочного заказа
  • 05Сравнение допустимого исходного и улучшенного плана
  • 06Список необслуженных заказов при жёстких ограничениях

ПУТЬ ДАННЫХ / АРХИТЕКТУРА

  1. 01Заказы / парк
  2. 02Матрица расстояний
  3. 03OR-Tools / ограничения
  4. 04Маршруты / стоимость
  5. 05Диспетчер

03 / ВАШ ТЕСТОВЫЙ СЦЕНАРИЙ

Решение.
В ваших руках.

Измените ограничения и сравните рассчитанные планы на одном наборе заказов. Только тестовые данные.

ПЕСОЧНИЦА / Планирование доставки

Распределите 50 заказов по 12 машинам

Измените ограничения и запустите расчёт.

OR-Tools выполняет ограниченный по времени поиск, а не гарантирует глобальный оптимум. Оба плана используют одинаковые исходные данные. Маршруты показаны линиями между точками, не дорожной навигацией. Внешние платные API не используются.

04 / ПОД КАПОТОМ

Важное
за интерфейсом.

Ограничения и инженерные решения, от которых зависит работа системы.

01

Допустимость прежде красоты

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

02

Честное сравнение

Исходный план — первая допустимая конструкция OR-Tools; улучшенный — поиск на тех же заказах, парке и модели стоимости. Проценты не подставлены заранее, глобальный оптимум не гарантируется.

03

Решение под контролем

Изменение ограничения запускает новый расчёт. Срочный заказ имеет повышенный приоритет. Диспетчер видит состав маршрута, загрузку и расчётное время прибытия.

СЛЕДУЮЩИЙ ШАГ

Есть процесс,
который пора упростить?

Разберём задачу, ограничения ваших систем и возможные варианты решения. Предложим реалистичный объём первого этапа.

Обсудить проект
Следующий проект / 04Сбои → один инцидент