Доставка: решаем задачу оптимизации путей и вскрываем «леваки»
Пример карты из ГИС-системы, на которой обозначены зоны доставки – для разных машин свой цвет.
Cотня курьеров с точки зрения руководителя – это такой филиал ада с краткосрочным планированием. Эта формулировка, конечно, не передаёт ощущения от намертво вставшего Рязанского шоссе, прыгуна на путях на Новокузнецкой и девушку-оператора, которая отправила машину в Зеленоград вместо Москвы. Ну и до кучи – ДТП с грузовиком, везущим срочный товар.
С точки зрения клиента, даже опоздание на 5 минут превращается в трагедию. И это, кстати, правильно и понятно. С точки зрения маркетинга, каждый промах курьера – это потерянный клиент. А вот с точки зрения части водителей – автоматизация – это явное зло. Потому что даже бензин не даёт сливать в своё удовольствие. В реальности мы встречались с настоящими бунтами водителей против внедрения IT-систем.
Итак, для компаний, у которых основная часть перевозок является внутригородской доставкой, достаточно строго стоит вопрос планирования маршрутов. Ключевая особенность – с учетом транспортных условий города. То есть система должна уметь считать движение с помощью всех видов транспорта, учитывать проблемы на дороге и при этом оптимизировать ресурсы.
«Леваки» и бунты водителей
Ещё в нашей практике для крупного ритейла довольно быстро выяснилось, что система вскрывает просто огромное количество нарушений, которые допускали водители. Сливают бензин, не так ездят, много всего. А IT-инструменты всю эту кормушку делают прозрачной. Логично, что встаёт не только обычное сопротивление новым процессам, но и желание прикрыться и вернуть всё как было. Мы один раз наткнулись на такую ситуацию: фактически, движение по правилам отнимало у водителей половину заработка – его «теневую» часть.
Кому и когда нужна автоматизация?
- Курьерским службам — очевидно.
- Интернет-магазинам – при появлении где-то 50 курьеров.
- Компаниям-перевозчикам – тоже где-то при штате от 50 человек.
- Пиццериям и другим компаниям с доставкой по звонку.
- Крупным оптовикам, например, для развоза скоропортящихся товаров или оптимизации схемы доставки товаров на точки.
- Рознице для организации допоставок в магазины и так далее.
Одна из самых интересных решаемых в этом плане задач — оптимизация движения инкассаторов по банкоматам (вот отдельный топик).
Понятно, что когда компания маленькая, обычно всё решается через маршруты Яндекс.Карт и листочек с ручкой.
Какие есть особенности?
- Нужно правильное построение маршрутов: в какое время как лучше ехать, где одностороннее движение и так далее.
- Для автотранспорта есть граф ограничений: где-то машина не пролезет по высоте или тоннажу, пропуску. Например, в Москве, это несколько зон – пропуск 0, пропуск 2, пропуск 3.
- Учитывать пробки. В Москве и Санкт-Петербурге, например, всё большую популярность обретают решения, которые построены на базе ГИС-систем, и выполняют маршрутизацию с учетом статистики по пробкам. При этом в TMS-системе заложена логика формирования маршрутов, и есть отдельные ГИС-системы, которые используются для оперативных правок.
- Хорошо не вводить данные руками, а автоматом получать из картографических сервисов. Например, в решениях Oracle, есть возможность вычислять данные по расстояниям и по времени маршрута не из своих таблиц, а из внешних модулей. То есть если у вас есть где-то источник данных о ремонте на дороге, не нужно будет заносить его внутрь системы, достаточно будет обновить кусочек базы данных внешнего модуля.
Две основных системы: TMS и ГИС
Как видите, для правильного плана нужно иметь две основных системы. Первая — TMS, которая делает графы распределения маршрутов по точкам. Здесь собирается информация, на основании которой строится этот оптимальный граф. Обычно она берётся из справочников внутри системы: например, координаты точек для объезда или наличие автотранспорта в компании.
При этом в России пробки меняют всё так, что планировать более чем на 12 часов по общей статистике уже проблематично. Как вы наверняка знаете, доставка может быть отложена и больше, особенно, в праздники, в пики. То есть вот здесь нужна картина, которая обновляется хотя бы раз в час – и здесь TMS запрашивает ГИС-модули. Плюс проверяется то, что не просто машина поехала по такому-то пути, а добавляются ограничения. Эта машина такая-то поехала по такому-то пути с таким-то грузом и с таким-то комплектом документов. И надо, например, выписать водителю доверенность на получение груза, плюс дать пропуск.
Пример простейшей задачи TMS
У вас есть три курьера: пеший Вася, мотоциклист Иван и водитель газели Пётр. И 20 заказов в магазине электротоваров. TMS определяет, как максимально быстро развести всё, что нужно, используя известные параметры курьеров и точек. Например, если у нас есть два заказа на 80-м и 90-м километре МКАД, причём один из них – это ящик перфораторов, а второй – отвёртка, туда поедет Пётр на газели. При этом «жадный» алгоритм подсказал бы, что отвёртку возить на машине не очень логично, но компоновка заказов помогла оптимизации. Далее, в городе нужно просчитать, куда пойдёт Вася, а куда поедет Иван. Будет выстроено два графа: для мотоцикла и для пешехода (с учётом грузоподъёмности и возможностей движения каждого). После оценки точек будут подобраны такие варианты, которые уложатся во все ограничения и позволят максимально быстро и просто развести заказы. Также может оказаться, что один из заказов пришел с высокой срочностью – система использует это условие как ограничение и поставит его в начало маршрута.
Зачем тогда ГИС?
Всё было бы здорово, если бы не пробки. Наша TMS-система считает время движения по маршруту, например, на основе средней скорости 80 км/ч по одной из дорог. Если мы говорим о повышении точности процедуры планирования, и использовании данных из ГИС-системы, то тогда таким правилом является – брать информацию по расстоянию и по времени движения из внешней системы. То есть при взвешивании вершин графа с элементами маршрута мы будем использовать самые свежие данные.
Какие алгоритмы используются?
Привычные для решения задачи коммивояжера. Как правило, речь идет о комплексе алгоритмов под задачу: например, на высоконагруженных системах с невозможностью полного перебора более чем в 90% случаев решения разворачиваются на достаточно хорошем железе, поэтому считается чаще всего либо перебором в лоб, либо методом ветвей и границ.
Модуль мониторинга
Ещё одна важная задача – это контроль. Если мы говорим о доставке, как на ладони, то это не только планирование с учетом пробок, но и мониторинг. Когда машина оснащена GPS-оборудованием или курьер имеет на руках корпоративный планшет или смартфон, либо трекер. На основе данных GPS, это, во-первых, можно визуализировать местонахождение каждого транспортного средства на карте, во-вторых, регистрировать события, происходящие с этим транспортным средством.
События обычно делятся на два типа. Это форс-мажоры и события плановые. Опоздание на 10 минут для развоза товара по своим точкам – событие частое и в целом некритичное и не нуждающееся в специальном алерте. А вот если машина свернула с маршрута и поехала в Рязань – это уже повод для уведомления.
Бывают и более сложные варианты, это когда датчик интегрирован в CAN-шину автомобиля и можно регистрировать, допустим, уровень топлива, температурный режим. Кстати, наверное, лучший пример температурного контроля – это даже не замороженные овощи, а лабораторные анализы. Например, если анализ крови приморозить в рефрижераторе, он уже может дать ложноотрицательные результаты по ряду инфекций.
Обратный поток
Для разруливания оперативных ситуаций одно из самых удобных решений — когда водителям ставятся мобильные терминалы и, фактически, они получают задания в онлайн-режиме. И расшаривать часть данных для клиентов, например, о том, где конкретно их грузы. Соответственно, важным становится делать простой web-интерфейс, понятный человеку «с улицы». Это важно, поскольку TMS-система часто становится единым источником правды для всех участников логистического процесса.
Если возится дорогой или хрупкий груз, обычно заказчик сам настаивает на включении в такую систему, кстати.
Аналитика
3-4 года назад всем нравилось ставить большой экран в офисе и смотреть на свои машины и людей на карте. Сейчас этого мало, нужна ещё и аналитика. Например – прогноз по тому, где возможен риск опоздания, где нецелесообразно гонять транспорт вместо пеших курьеров и так далее. При формировании отклонения на него обращается внимание диспетчера.
Бывают у него рекомендации – позвонить тому-то, предупредить. Это важно тем, кто заботится о клиенте: например, можно отправлять SMS автоматом за 15 минут до прибытия курьера или же в реальном времени сообщать о статусе доставки.
В TMS-системе можно настроить различные реакции на триггеры. Первое, что настраивается – это отклонения с алертами для ответственных лиц, уже потом – разные статусы для клиентов.
Затем планируются автоматические реакции. Пример — перепланирование маршрута, перерасчет времени по прибытию машины в последующие точки маршрута. И самая сложная реакция – это, допустим, поиск нового ресурса, в случае выполнения перевозки – поиск нового автомобиля.
Звонит водитель или на мониторинге видно ДТП. Система на основе GPS-данных проверяет ближайшие ресурсы, сверяет через TMS загрузку и возможность «манёвра», и перенаправляет его в данную точку. К примеру – находится грузовик, у которого свободно полкузова. Он идёт в точку с ДТП, забирает груз, его маршрут далее перепланируется, все участники цепочки предупреждаются о новом хронометраже.
За что идёт борьба?
Понятно, что ни один нормальный человек не захочет ввязываться во внедрение ещё одной IT-системы, которая всем поперек горла, если не будет существенной прибыли. Так вот, такие системы дают:
- Экономию рабочего времени. То есть там, где раньше справлялись 100 курьеров, теперь могут так же эффективно работать 75.
- Экономию топлива.
- Снижение пиковых нагрузок, особенно на праздники.
- Снижение уровня некондиции товара (просроченные йогурты, охлаждённые мандарины, тёплое мясо и так далее).
- Уменьшение инцидентов «ГДЕМОЙТОВАР?!».
- Уменьшение инцидентов потери клиентов.
Недавно попадалось исследование по американскому рынку, в котором говорили, что лидеры опережают аутсайдеров по уровню качества своих товаров и доставки в срок на 70%. А вот аутсайдеры не озадачиваются этой задачей, потому они и аутсайдеры.
Окупаемость
В среднем от года. Но зависит, конечно, от многого. В первую очередь от того, что наиболее критично для компании и за что идет борьба, это все пункты выше. Ну и, конечно, также от размера компании, количества заказов в день, от сложности инфраструктуры города, по которому осуществляются перевозки и пр.
Скриншоты
Пример формы заказа доставки товара – прописываются все детали – временной интервал погрузки и доставки, все адреса, количество и вес товара и пр.
Пример формы просмотра маршрутов с детализацией. Справа показаны детали маршрута, выделенного строкой слева. Сиреневым обозначено то, что уже выполнено. Восклицательные знаки – алерты. Зелена я галочка – полностью отработанный маршрут.
И еще один скриншот из ГИСа. Это карта на этапе построения маршрутов, так мы можем контролировать, чтобы одна машина у нас не нарезала круги, а двигалась последовательно. Иконки с тремя кубами – еще не охваченные точки, в которые тоже нужно доставить товар.
Готов ответить на ваши вопросы в комментариях или по почте AlIsaev@croc.ru.
Автор: AIsaev