АЛГОРИТМ МАРШРУТИЗАЦИИ БЕЗ КОМПРОМИССА МЕЖДУ КАЧЕСТВОМ И СКОРОСТЬЮ
Максим Берёзов�ML-инженер
О СЕБЕ
Работаю над маршрутизацией для логистических сервисов в сферах e-grocery, e-commerce.
ЗАКАЗОВ ДОСТАВЛЕНО КЛИЕНТАМ �ЗА 2022 ГОД (ВРЕМЯ ДОСТАВКИ �ОТ 15 МИНУТ).
БЫСТРАЯ ДОСТАВКА ПРОДУКТОВ �ДОСТУПНА В 103 ГОРОДАХ РОССИИ.
УНИКАЛЬНЫХ ПОСЕТИТЕЛЕЙ МАРКЕТПЛЕЙСА КАЖДЫЙ МЕСЯЦ.
НАПРАВЛЕНИЙ — ЛОГИСТИЧЕСКОЕ ПОКРЫТИЕ ДЛЯ ДОСТАВКИ ТОВАРОВ.
4
ИТ ДЛЯ РИТЕЙЛА РЕАЛЬНОГО ВРЕМЕНИ
>126 млн
>20 млн
26 тысяч
103 города
ИТ ДЛЯ РИТЕЙЛА РЕАЛЬНОГО ВРЕМЕНИ В ЦИФРАХ:
5
СЕРВИСОВ ОБЕСПЕЧИВАЮТ РАБОТОСПОСОБНОСТЬ СИСТЕМЫ
УСПЕШНО ОБРАБАТЫВАЮТ НАШИ БЭКЕНДЫ
МАКСИМАЛЬНОЕ ВРЕМЯ ОТКЛИКА БЭКЕНДОВ �В 99% СЛУЧАЕВ
РАЗ АВТОМАТИЧЕСКИ ПЕРЕСЧИТЫВАЕМ СПРОС, ОЖИДАЕМЫЙ НА СЛЕДУЮЩИЙ ДЕНЬ
300+
300 MS.
90M
18K RPS
РЕШЕНИЙ ЕЖЕДНЕВНО ПРИНИМАЮТСЯ ДЛЯ АВТОМАТИЧЕСКОГО ПЛАНИРОВАНИЯ ЧАСОВ ДОСТАВКИ
200K
О ЧЕМ ЭТОТ ДОКЛАД?�
6
TRAVELLING SALESMAN PROBLEM (TSP)�
количество вариантов: n! 65! > атомов во Вселенной
7
VRP
8
НО ЭТО ЕЩЕ ДАЛЕКО НЕ ВСЕ...
Что же еще нужно бизнесу?
9
Pickup/Delivery
Ограничения по габаритам
Стоимость курьера
Временные окна на точке сбора
Штрафы за невыполнение заказы
Временные окна работы курьера
Время работы склада
Штрафы за нарушение временных окон
Пробки
Дозагрузка
Группа балансировки
Вместительность
НО ЭТО ЕЩЕ ДАЛЕКО НЕ ВСЕ...
10
Pickup/Delivery
Ограничения по габаритам
Стоимость курьера
Временные окна на точке сбора
Штрафы за невыполнение заказы
Временные окна работы курьера
Время работы склада
Штрафы за нарушение временных окон
Пробки
Дозагрузка
Группа балансировки
Вместительность
КАК ЭТО ВСЕ РЕШАТЬ?
Опытный логист
11
Методы дискретной оптимизации
Обучение с подкреплением
1
2
3
* — Fontaine, Pirmin, Florian Taube, and Stefan Minner. "Human solution strategies for the vehicle routing problem: Experimental findings and a choice-based theory."Computers Operations Research 120 (2020): 104962.
?
?
ФРЕЙМВОРК МЕТОДОВ ДИСКР. ОПТИМИЗАЦИИ
12
Current solution
Acceptor
MoveSelector
Forager
Initial solution
Candidates
Filtered candidates
Chosen candidate
ИМПЛЕМЕНТАЦИЯ / КАКИЕ ОСНОВНЫЕ МЕТОДЫ ИСПОЛЬЗУЮТСЯ?
Технологический стек:
15
Методы:
Python
ORTools (Google)
+
ПРИМЕР РЕАЛЬНОГО ЗАПРОСА�
16
КАКИЕ СЛОЖНОСТИ?
17
ЧТО ТАКОЕ �REINFORCEMENT LEARNING
18
область машинного обучения, изучающая то, �как интеллектуальная среда (agent/brain) �должна принимать действия в окружающей среде (environment), чтобы максимизировать кумулятивную награду.
ЧТО ТАКОЕ �REINFORCEMENT LEARNING
19
область машинного обучения, изучающая то, �как интеллектуальная среда (agent/brain) �должна принимать действия в окружающей среде (environment), чтобы максимизировать кумулятивную награду.
ВЗАИМОДЕЙСТВИЕ АГЕНТА И СРЕДЫ
20
ЗАДАЧА МАРШРУТИЗАЦИИ В ТЕРМИНАХ RL
�
ИМПЛЕМЕНТАЦИЯ / КАКИЕ ОСНОВНЫЕ МЕТОДЫ ИСПОЛЬЗУЮТСЯ?
Технологический стек:
22
Python
PyTorch
+
Подходы:
ПЛЮСЫ И МИНУСЫ RL
Плюсы:
Минусы:
23
МОДЕЛИ МОЖНО КОМБИНИРОВАТЬ
24
More than 200 points?
Discrete optimization model
Reinforcement �Learning model
No
Yes
МОДЕЛИ МОЖНО КОМБИНИРОВАТЬ
25
Solution 1
Discrete optimization model
Reinforcement �Learning model
Compare �solutions
Task
Solution 2
Final �solution
МОДЕЛИ МОЖНО КОМБИНИРОВАТЬ
26
Discrete
optimization model
Reinforcement �Learning model
Task
Solution
Final �solution
КЕЙС №1. �ОСНОВНЫЕ МЕТРИКИ E-GROCERY
27
Процент �опозданий
Процент ранних �приездов
Среднее время �в пути на курьера
Среднее расстояние �на курьера
< 6,1%
< 3,8%
< 5963 с.
< 19,3 км
КЕЙС №1. КАКИЕ РЕЗУЛЬТАТЫ?
28
|
Процент опозданий |
Процент ранних приездов |
Среднее время в пути на курьера |
Среднее расстояние на курьера |
|
Результат |
|
|
|
|
|
До |
6,1% |
3,8% |
5 963 сек. |
19,3 км |
|
0,52%
5 464 сек.
18,9 км
4,4%
КЕЙС №2. САМОКАТ BEAUTY
29
|
Алгоритм построения |
Время построения маршрута |
Интерфейс для построения маршрутов |
Онлайн трекинг результатов |
|
Результат |
|
|
|
|
|
До |
Логист |
600 секунд |
Excel + Карты |
Нет |
|
1-2 секунды
Сервис для логиста
В разработке
Модель DS
САМОКАТ BEAUTY. БЫЛО
30
Excel
Excel
Запрос
Маршрутизация
Логист
САМОКАТ BEAUTY. ПИЛОТИРОВАНИЕ
31
Excel
Excel
Запрос
Маршрутизация
Запрос
Router
DS
САМОКАТ BEAUTY. СЕЙЧАС
32
optimize
Логист
Application
Router
get result
КАКИЕ СЛОЖНОСТИ ПРИ ПРОВЕДЕНИИ ПИЛОТОВ?
33
НЕВОЗМОЖНОСТЬ ОНЛАЙН-СРАВНЕНИЯ
34
План маршрутизации
Реальность
План маршрутизации и реальная маршрутизация часто отличаются :-(
ОЦЕНКА ВРЕМЕНИ НА УЧАСТКЕ А—Б
35
Время (А,Б) = 15 минут, а не 10 минут
А
Б
10 минут
15 минут
Мы закладываем возможные риски, которые могут возникнуть при перемещении от точки А к точке Б
АДАПТАЦИЯ ПОД ТРЕБОВАНИЯ БИЗНЕСА. �НОВЫЕ ГРАФЫ
36
Петровский�парк
Аэропорт
Савеловская
Динамо
ЦСКА
ПОДВЕДЁМ ИТОГИ
37
НАЗВАНИЕ ПРЕЗЕНТАЦИИ
СПАСИБО�ЗА ВНИМАНИЕ
ПИШИТЕ:
mberezov@samokat.ru
Tg. @MaximBer