Машинное обучение может помочь в достаточно большом количестве задач логистической сфере. Это не только задачи для компаний, которые работают в этой сфере, но и для бизнеса, который пользуется услугами логистических компаний: дистрибьюторы, компании FMCG, ретейлеры и т.д. Я говорю о задачах, начиная с базовых (проверка автомобилей перед выездом на безопасность) и заканчивая оптимизацией работы склада за счет машинного обучения.
В городской логистике есть два направления, где можно использовать машинное обучение. Первое – автоматизация доставки. Например, у «Яндекса» есть роботы-курьеры, которые сейчас ездят по Москве (от места отправки заказа до адреса получателя) и обучаются, автоматические дроны Amazon успешно развозят заказы клиентам в пилотном режиме.
Второе направление - построение маршрутов для доставки покупок, более проработанная область, поскольку машинное обучение помогает не столько построить маршрут, сколько скорректировать его. У того же «Яндекса» есть большая проблема – он плохо предсказывает пробки и влияние погодных условий на дорожный трафик. Даже если вы просто ездите на такси, можно заметите, что цена 300 рублей, ехать 10 минут. Но это в 17.55 вечера, когда все едут с работы домой и, хотя цена небольшая, на одного клиента водитель потратит минут 40. Вот это никак не учитывается.
Однако, есть менее изученное направление в логистике с точки зрения пользы для него машинного обучения - это полное планирование маршрутов для доставки на день, неделю, месяц по нескольким точкам для энного количества автомобилей. Речь идет как о всем известной задаче коммивояжера, так и более частном - так называемые задачи VRP, которые сейчас решаются по большей части эврестическими алгоритмами. И у этих решений есть определенные проблемы.
Одна из них – NP-полная задача, то есть время расчета полного маршрута сильно увеличивается в зависимости от числа параметров построения маршрута. Чем больше точек доставки заказов, тем сильнее увеличивается время доставки. Здесь связь непрямая, то есть для 10 точек расчет маршрута может занять минуту, для 100 точек не 10 минут, а час (соотношение приведено условно, для понимания). Есть методики, которые позволяет уменьшить это время, но они же снижают и качество планирования маршрутов, потому что алгоритму приходится разбивать эту задачу на несколько подзадач и решать их. Самый простой вариант: разбиваем город на геозоны и алгоритм планирует доставку в каждой из них по отдельности. Такой подход может приводить к ухудшению финального качества.
Строго говоря, пока что решение VRP-задач с помощью машинного обучения плохо изучено. Загрузка авто по грузогабаритным параметрам делается хорошо, по остальным задачам - пустота. Для примера. Нет ни одного решения, в котором четко указывается количество машин для доставки. Алгоритм с машинным обучением при планировании доставки будет считать, что у компании бесконечное количество машин и все эти авто с одинаковой грузоподъемностью. Между тем это ведь базовый параметр доставки.
Важный факт: машинное обучение оперирует гипотезами, мы никогда не сможем сказать до того, как проверим результат работы алгоритма, работает ли созданная нами модель. Иногда можно потратить 1-2 недели на обучение алгоритма, а в итоге ничего не работает. Тогда все приходится стирать и начинать заново. И с этим надо смириться. Однако, чем больше у компании данных, чем больше маршрутов смоделирует алгоритм с машинным обучением, тем лучшего качества решение он выдаст.
Важный нюанс заключается в том, что конкретный алгоритм машинного обучения выполняет конкретную задачу, для которой ты его реализовал. Например, цель создания – построение маршрутов, делаем под нее алгоритм. Так вот он строит маршруты, но никогда в жизни сам не посчитает их длину, так как машинное обучение пока не может решать широкий спектр задач. У бизнеса же есть такая проблема, как гибкое понимание проблемы. То есть компания ставит AI-инженеру задачу, потом ее корректирует, но ведь инженер реализовал алгоритм под первоначальную формулировку цели. Если появляются какие-то малейшие отклонения от нее, все – алгоритм не справится.
При этом не надо думать, что алгоритм при построении маршрутов будет обучен только под один город, например, под Москву. Если он научился строить маршруты, то создаст гипотетически хороший маршрут везде. Почему “предположительно”? Стоит не забывать, что машинное обучение работает только с вероятностью.
Еще раз скажу, что логистика с точки зрения использования машинного обучения пока что одна из самых неизученных сфер. По крайней мере публичных научных статей, исследований по ней нет. Хотя мы не знаем, что происходит внутри Amazon. С точки зрения развития это отбрасывает логистику назад, поскольку не дает сделать рывок, а ведь сейчас качество сервиса – основной аргумент в конкурентной борьбе за клиента и росте продаж.