По всей стране сотни тысяч водителей ежедневно доставляют посылки и посылки клиентам и компаниям, при этом время доставки до двери во многих случаях составляет в среднем всего несколько дней. Координация действий в цепочке поставок такого масштаба предсказуемым и своевременным образом является давней проблемой исследования операций, где исследователи работают над оптимизацией последнего этапа маршрутов доставки. Это связано с тем, что последний этап процесса часто является самым дорогостоящим из-за неэффективности, такой как большие расстояния между остановками из-за увеличения спроса на электронную торговлю, задержек из-за погодных условий, пробок, отсутствия парковки, предпочтений клиентов по доставке или частично полных грузовиков – неэффективности, которая становится все более преувеличены и очевидны во время пандемии.
Благодаря новым технологиям и более индивидуализированным и детальным данным исследователи могут разрабатывать модели с лучшими вариантами маршрутизации, но в то же время им необходимо сбалансировать вычислительные затраты на их запуск. Маттиас Винкенбах, главный научный сотрудник Массачусетского технологического института, директор по исследованиям Центра транспорта и логистики Массачусетского технологического института (CTL) и исследователь лаборатории MIT-IBM Watson AI Lab, обсуждает, как искусственный интеллект может обеспечить лучшие и более эффективные в вычислительном отношении решения для комбинаторной оптимизации. такая проблема.
Вопрос: В чем заключается проблема маршрутизации транспортных средств и как ее решают традиционные методы исследования операций (ИЛИ)?
А: С проблемой маршрутизации транспортных средств ежедневно сталкивается практически каждая компания по логистике и доставке, такая как USPS, Amazon, UPS, FedEx, DHL. Проще говоря, это поиск эффективного маршрута, который соединяет группу клиентов, которым необходимо либо доставить товар, либо что-то от него забрать. Он решает, каких клиентов каждый из этих автомобилей, которые вы видите на дороге, должен посетить в определенный день и в какой последовательности. Обычно цель состоит в том, чтобы найти маршруты, ведущие к самому короткому, самому быстрому или самому дешевому маршруту. Но очень часто они также обусловлены ограничениями, специфичными для клиента. Например, если у вас есть клиент, для которого указан срок доставки, или клиент на 15-м этаже высотного здания по сравнению с первым этажом. Это затрудняет интеграцию этих клиентов в эффективный маршрут доставки.
Очевидно, что для решения проблемы маршрутизации транспортных средств мы не можем проводить моделирование без надлежащей информации о спросе и, в идеале, характеристик, связанных с клиентом. Например, нам нужно знать размер или вес посылок, заказанных конкретным клиентом, или сколько единиц определенного продукта необходимо отправить в определенное место. Все это определяет время, которое вам понадобится для обслуживания конкретной остановки. В случае реальных проблем вам также необходимо знать, где водитель может безопасно припарковать автомобиль. Традиционно планировщик маршрута должен был получить хорошие оценки этих параметров, поэтому очень часто можно встретить модели и инструменты планирования, которые делают общие предположения, поскольку не было доступных данных для конкретных остановок.
Машинное обучение может быть очень интересно для этого, потому что сейчас у большинства водителей есть смартфоны или GPS-трекеры, поэтому существует масса информации о том, сколько времени занимает доставка посылки. Теперь вы можете в достаточном масштабе, в некоторой степени автоматизированным способом, извлечь эту информацию и откалибровать каждую остановку для реалистичного моделирования.
Использование традиционного подхода ИЛИ означает, что вы пишете модель оптимизации, начиная с определения целевой функции. В большинстве случаев это своего рода функция стоимости. Кроме того, существует множество других уравнений, определяющих внутреннюю работу задачи маршрутизации. Например, вы должны сообщить модели, что если автомобиль посетит клиента, ему также необходимо снова покинуть клиента. В академических терминах это обычно называется сохранением потока. Аналогичным образом вам необходимо убедиться, что каждый клиент посещается ровно один раз по данному маршруту. Эти и многие другие ограничения реального мира вместе определяют, что представляет собой жизнеспособный маршрут. Нам это может показаться очевидным, но это необходимо закодировать явно.
После формулировки задачи оптимизации существуют алгоритмы, которые помогают нам найти наилучшее возможное решение; мы называем их решателями. Со временем они находят решения, соответствующие всем ограничениям. Затем он пытается найти маршруты, которые становятся все лучше и лучше, а значит, все дешевле и дешевле, пока вы либо не скажете: «Хорошо, этого достаточно для меня», либо пока он не сможет математически доказать, что нашел оптимальное решение. Среднестатистический автомобиль доставки в городе США делает около 120 остановок. Чтобы решить эту проблему явно, может потребоваться некоторое время, поэтому компании обычно так не делают, потому что это слишком затратно в вычислительном отношении. Поэтому они используют так называемую эвристику — алгоритмы, которые очень эффективны в поиске достаточно хороших решений, но обычно не могут количественно определить, насколько эти решения далеки от теоретического оптимума.
Вопрос: В настоящее время вы применяете машинное обучение для решения задачи выбора маршрута транспортного средства. Как вы используете его, чтобы усилить и, возможно, превзойти традиционные методы операционной?
А: Именно над этим мы сейчас работаем с ребятами из лаборатории MIT-IBM Watson AI Lab. Здесь общая идея заключается в том, что вы обучаете модель на большом наборе существующих решений маршрутизации, которые вы либо наблюдали в реальных операциях компании, либо создали с помощью одной из этих эффективных эвристик. В большинстве моделей машинного обучения у вас больше нет явной целевой функции. Вместо этого вам нужно дать модели понять, какую проблему она на самом деле рассматривает и как выглядит хорошее решение проблемы. Например, аналогично обучению большой языковой модели словам на данном языке, вам необходимо обучить модель обучения маршруту концепции различных остановок доставки и их характеристикам спроса. Подобно пониманию внутренней грамматики естественного языка, ваша модель должна понимать, как соединить эти остановки доставки таким образом, чтобы получить хорошее решение — в нашем случае дешевое или быстрое решение. Если вы затем бросите ему совершенно новый набор требований клиентов, он все равно сможет соединить точки в буквальном смысле так, как вы бы это сделали, если бы пытались найти хороший маршрут для соединения этих клиентов.
Для этого мы используем архитектуры моделей, знакомые большинству людей из области языковой обработки. Это кажется немного нелогичным, потому что какое отношение языковая обработка имеет к маршрутизации? Но на самом деле свойства этих моделей, особенно моделей-трансформеров, хороши для поиска структуры в языке — соединения слов таким образом, чтобы они образовывали предложения. Например, в языке у вас есть определенный словарный запас, и он фиксирован. Это дискретный набор возможных слов, которые вы можете использовать, и задача состоит в том, чтобы объединить их осмысленным образом. В маршрутизации ситуация аналогичная. В Кембридже около 40 000 адресов, которые вы можете посетить. Обычно необходимо посетить подмножество этих адресов, и проблема заключается в следующем: как объединить это подмножество — эти «слова» — в последовательность, которая имеет смысл?
В этом и заключается новизна нашего подхода — использование структуры, доказавшей свою чрезвычайно высокую эффективность в языковом пространстве, и применение ее в комбинаторной оптимизации. Маршрутизация — это для нас просто отличный испытательный полигон, поскольку это самая фундаментальная проблема в логистической отрасли.
Конечно, уже существуют очень хорошие алгоритмы маршрутизации, возникшие в результате десятилетий исследований операций. В этом проекте мы пытаемся показать, что с помощью совершенно другого методологического подхода, чисто основанного на машинном обучении, мы можем прогнозировать маршруты, которые почти так же хороши или лучше, чем маршруты, которые вы могли бы получить от использование современной эвристики оптимизации маршрута.
Вопрос: Какие преимущества имеет такой метод, как ваш, по сравнению с другими современными методами операционной?
А: На данный момент лучшие методы по-прежнему очень требовательны к вычислительным ресурсам, необходимым для обучения этих моделей, но вы можете заранее загрузить часть этих усилий. Тогда обученная модель относительно эффективна в создании нового решения по мере необходимости.
Еще один аспект, который следует учитывать, заключается в том, что условия эксплуатации маршрута, особенно в городах, постоянно меняются. Возможно, изменится имеющаяся дорожная инфраструктура, правила дорожного движения и ограничения скорости, идеальная парковка может быть занята чем-то другим, а строительная площадка может перекрыть дорогу. При использовании подхода, основанного исключительно на ИЛИ, у вас могут возникнуть проблемы, поскольку вам придется решать всю проблему мгновенно, как только станет доступна новая информация о проблеме. Поскольку операционная среда динамически меняется, вам придется делать это снова и снова. Хотя если у вас есть хорошо обученная модель, которая уже сталкивалась с подобными проблемами раньше, она потенциально может практически мгновенно предложить следующий лучший маршрут. Это скорее инструмент, который поможет компаниям приспособиться к все более непредсказуемым изменениям в окружающей среде.
Более того, алгоритмы оптимизации часто создаются вручную для решения конкретной проблемы конкретной компании. Качество решений, полученных с помощью таких явных алгоритмов, ограничено уровнем детализации и сложности, заложенных в разработку алгоритма. С другой стороны, модель, основанная на обучении, постоянно изучает политику маршрутизации на основе данных. После того, как вы определили структуру модели, хорошо продуманная модель обучения маршруту позволит выявить потенциальные улучшения вашей политики маршрутизации на основе огромного количества маршрутов, на которых она обучается. Проще говоря, инструмент маршрутизации, основанный на обучении, продолжит находить улучшения в ваших маршрутах без необходимости вкладывать средства в явное внесение этих улучшений в алгоритм.
Наконец, методы, основанные на оптимизации, обычно ограничиваются оптимизацией для очень четко определенной целевой функции, которая часто направлена на минимизацию затрат или максимизацию прибыли. На самом деле цели, стоящие перед компаниями и водителями, гораздо сложнее и зачастую несколько противоречивы. Например, компания хочет найти эффективные маршруты, но при этом хочет иметь низкий уровень выбросов. Водитель также хочет быть в безопасности и иметь удобный способ обслуживания этих клиентов. Помимо всего этого, компании также заботятся о последовательности. Хорошо спроектированная модель обучения маршрутам в конечном итоге может сама по себе решить эти многомерные задачи, а это то, чего вы никогда не сможете достичь таким же образом с помощью традиционного подхода к оптимизации.
Таким образом, это приложение машинного обучения, которое действительно может оказать ощутимое реальное влияние на промышленность, общество и окружающую среду. Логистическая отрасль сталкивается с гораздо более сложными проблемами. Например, если вы хотите оптимизировать всю цепочку поставок — скажем, поток товара от производителя в Китае через сеть различных портов по всему миру, через дистрибьюторскую сеть крупного ритейлера в Северной Америке до вашего магазина. где вы на самом деле его покупаете — здесь требуется так много решений, что, очевидно, это делает эту задачу гораздо более сложной, чем оптимизация маршрута одного транспортного средства. Мы надеемся, что с помощью этой первоначальной работы мы сможем заложить основу для исследований, а также усилий по развитию частного сектора для создания инструментов, которые в конечном итоге позволят улучшить сквозную оптимизацию цепочки поставок.