stringtranslate.com

Проблема маршрутизации транспортных средств

Рисунок, иллюстрирующий проблему маршрутизации транспортных средств

Задача маршрутизации транспортных средств ( VRP ) — это задача комбинаторной оптимизации и целочисленного программирования , которая спрашивает: «Каков оптимальный набор маршрутов для парка транспортных средств, которые необходимо пройти, чтобы доставить грузы заданному набору клиентов?» Она обобщает задачу коммивояжера (TSP). Впервые она появилась в статье Джорджа Данцига и Джона Рамсера в 1959 году [1] , в которой был описан первый алгоритмический подход, примененный к доставке бензина. Часто контекстом является доставка товаров, находящихся на центральном складе, клиентам, которые разместили заказы на такие товары. Целью VRP является минимизация общей стоимости маршрута. В 1964 году Кларк и Райт улучшили подход Данцига и Рамсера, используя эффективный жадный алгоритм, называемый алгоритмом сбережений.

Определение оптимального решения VRP является NP-трудным [ 2], поэтому размер задач, которые можно оптимально решить с помощью математического программирования или комбинаторной оптимизации, может быть ограничен. Поэтому коммерческие решатели, как правило, используют эвристики из-за размера и частоты реальных VRP, которые им необходимо решить.

VRP имеет множество прямых приложений в промышленности. Поставщики инструментов маршрутизации VRP часто заявляют, что они могут предложить экономию затрат в размере 5%–30%. [3]

Постановка проблемы

VRP касается услуг компании по доставке. Как вещи доставляются из одного или нескольких депо , которые имеют заданный набор домашних транспортных средств и управляются набором водителей , которые могут перемещаться по заданной дорожной сети к набору клиентов . Он требует определения набора маршрутов , S , (один маршрут для каждого транспортного средства, которое должно начинаться и заканчиваться на своем собственном депо) таким образом, чтобы все требования клиентов и эксплуатационные ограничения были удовлетворены, а глобальные транспортные расходы были минимизированы. Эти расходы могут быть денежными, дальними или иными. [2]

Дорожную сеть можно описать с помощью графа , где дуги — это дороги, а вершины — перекрестки между ними. Дуги могут быть направленными или ненаправленными из-за возможного наличия улиц с односторонним движением или различных затрат в каждом направлении. Каждая дуга имеет связанную с ней стоимость, которая обычно равна ее длине или времени в пути, которое может зависеть от типа транспортного средства. [2]

Чтобы узнать глобальную стоимость каждого маршрута, необходимо знать стоимость поездки и время в пути между каждым клиентом и депо. Для этого наш исходный граф преобразуется в граф, вершинами которого являются клиенты и депо, а дуги — дороги между ними. Стоимость каждой дуги — это наименьшая стоимость между двумя точками исходной дорожной сети. Это легко сделать, поскольку задачи поиска кратчайшего пути относительно легко решаются. Это преобразует разреженный исходный граф в полный граф . Для каждой пары вершин i и j существует дуга (i,j) полного графа, стоимость которой записывается как и определяется как стоимость кратчайшего пути от i до j . Время в пути — это сумма времен перемещения дуг по кратчайшему пути от i до j на исходном дорожном графе.

Иногда невозможно удовлетворить все требования клиентов, и в таких случаях решатели могут снизить требования некоторых клиентов или оставить некоторых клиентов необслуженными. Для решения этих ситуаций может быть введена приоритетная переменная для каждого клиента или соответствующие штрафы за частичное или необслуживание каждого клиента [2]

Целевая функция VRP может сильно различаться в зависимости от конкретного применения результата, но вот несколько наиболее распространенных целей: [2]

Варианты ВРП

Карта, показывающая взаимосвязь между общими подзадачами VRP.

Существует несколько разновидностей и специализаций задачи маршрутизации транспортных средств:

Несколько поставщиков программного обеспечения создали программные продукты для решения различных проблем VRP. Для получения более подробной информации об их исследованиях и результатах доступны многочисленные статьи.

Хотя VRP связана с задачей планирования работ в цехе , эти две проблемы обычно решаются с использованием разных методов. [9]

Точные методы решения

Существует три основных подхода к моделированию VRP:

  1. Формулировки потока транспортных средств — здесь используются целочисленные переменные, связанные с каждой дугой, которые подсчитывают количество раз, которое ребро пересекается транспортным средством. Обычно это используется для базовых VRP. Это хорошо для случаев, когда стоимость решения может быть выражена как сумма любых затрат, связанных с дугами. Однако это не может использоваться для обработки многих практических приложений. [2]
  2. Формулировки товарного потока — дополнительные целочисленные переменные связаны с дугами или ребрами, которые представляют поток товаров вдоль путей, пройденных транспортными средствами. Это только недавно было использовано для нахождения точного решения. [2]
  3. Задача разбиения множества — они имеют экспоненциальное число двоичных переменных , каждая из которых связана с отдельной допустимой схемой. Тогда VRP вместо этого формулируется как задача разбиения множества, которая спрашивает, каков набор схем с минимальной стоимостью, удовлетворяющих ограничениям VRP. Это допускает очень общие затраты маршрута. [2]

Формулы расхода транспортного средства

Формулировка TSP Данцига, Фулкерсона и Джонсона была расширена для создания двух индексных формул потока транспортных средств для VRP.

при условии

В этой формулировке представляет собой стоимость перехода от узла к узлу , является двоичной переменной, которая имеет значение , если дуга, идущая от к , рассматривается как часть решения, и в противном случае является количеством доступных транспортных средств и соответствует минимальному количеству транспортных средств, необходимых для обслуживания множества . Мы также предполагаем, что является узлом депо.

Ограничения 1 и 2 устанавливают, что ровно одна дуга входит и ровно одна выходит из каждой вершины, связанной с клиентом, соответственно. Ограничения 3 и 4 устанавливают, что количество транспортных средств, покидающих депо, равно количеству входящих. Ограничения 5 являются ограничениями сокращения пропускной способности, которые устанавливают, что маршруты должны быть соединены и что спрос на каждом маршруте не должен превышать пропускную способность транспортного средства. Наконец, ограничения 6 являются ограничениями целостности. [2]

Одно произвольное ограничение среди ограничений фактически подразумевается оставшимися, поэтому его можно удалить. Каждый разрез, определенный набором клиентов, пересекается числом дуг, не меньшим, чем (минимальное количество транспортных средств, необходимых для обслуживания набора ). [2]

Альтернативную формулировку можно получить путем преобразования ограничений по сокращению пропускной способности в обобщенные ограничения по исключению подтуров (GSEC).

что требует, чтобы по крайней мере ⁠ ⁠ дуги покидали каждый набор клиентов . [2]

GCEC и CCC имеют экспоненциальное число ограничений, поэтому практически невозможно решить линейную релаксацию. Возможный способ решения этой проблемы — рассмотреть ограниченное подмножество этих ограничений и добавить остальные при необходимости. Определение необходимых ограничений выполняется с помощью процедуры разделения. Разработаны эффективные точные методы разделения для таких ограничений (основанные на смешанном целочисленном программировании). [10]

Другой метод заключается в использовании семейства ограничений, имеющих полиномиальную мощность, которые известны как ограничения MTZ. Они были впервые предложены для TSP [11] и впоследствии расширены Кристофидесом, Мингоцци и Тотом [12] .

где - дополнительная непрерывная переменная, которая представляет собой груз, оставленный в транспортном средстве после посещения клиента , и является спросом клиента . Они налагают как требования к подключению, так и к вместимости. Когда ограничение, то не является обязательным, поскольку и в то время как они налагают, что .

Они широко использовались для моделирования базового VRP (CVRP) и VRPB. Однако их возможности ограничены этими простыми задачами. Их можно использовать только тогда, когда стоимость решения может быть выражена как сумма стоимости стоимости дуг. Мы также не можем знать, какое транспортное средство пересекает каждую дугу. Следовательно, мы не можем использовать это для более сложных моделей, где стоимость и/или осуществимость зависят от порядка клиентов или используемых транспортных средств. [2]

Оптимальная маршрутизация вручную или автоматически

Существует множество методов ручного решения проблем маршрутизации транспортных средств. Например, оптимальный маршрут — это большая проблема эффективности для погрузчиков на больших складах. Некоторые ручные методы выбора наиболее эффективного маршрута: Наибольший зазор, S-образная форма, проход за проходом, комбинированный и комбинированный + Хотя комбинированный + метод является самым сложным, поэтому его труднее всего использовать операторам погрузчиков, это самый эффективный метод маршрутизации. Тем не менее, процентная разница между ручным методом оптимального маршрута и реальным оптимальным маршрутом в среднем составила 13%. [13] [14]

Метаэвристический

Из-за сложности решения оптимальности крупномасштабных примеров задач маршрутизации транспортных средств значительные исследовательские усилия были посвящены метаэвристикам, таким как генетические алгоритмы , поиск с запретами , имитация отжига и адаптивный поиск в больших окрестностях (ALNS). Некоторые из самых последних и эффективных метаэвристик для задач маршрутизации транспортных средств достигают решений в пределах 0,5% или 1% от оптимума для примеров задач, насчитывающих сотни или тысячи точек доставки. [15] Эти методы также более надежны в том смысле, что их можно легче адаптировать для работы с различными побочными ограничениями. Таким образом, применение метаэвристических методов часто является предпочтительным для крупномасштабных приложений со сложными ограничениями и наборами решений.

Смотрите также

Ссылки

  1. ^ Данциг, Джордж Бернард; Рамсер, Джон Хьюберт (октябрь 1959 г.). «Проблема диспетчеризации грузовиков» (PDF) . Наука управления . 6 (1): 80–91. doi :10.1287/mnsc.6.1.80.
  2. ^ abcdefghijkl Toth, P.; Vigo, D., ред. (2002). Проблема маршрутизации транспортных средств . Монографии по дискретной математике и ее приложениям. Том 9. Филадельфия: Общество промышленной и прикладной математики. ISBN 0-89871-579-2.
  3. ^ Гейр Хасле; Кнут-Андреас Ли; Эвальд Куак, ред. (2007). Геометрическое моделирование, численное моделирование и оптимизация:: прикладная математика в SINTEF. Берлин: Springer Verlag. стр. 397–398. ISBN 978-3-540-68783-2.
  4. ^ Чао, И-Мин; Голден, Брюс Л.; Васил, Эдвард А. (1996). «Проблема командного ориентирования». Европейский журнал операционных исследований . 88 (3): 464–474. doi :10.1016/0377-2217(94)00289-4.
  5. ^ Archetti, C.; Sperenza, G.; Vigo, D. (2014). «Проблемы маршрутизации транспортных средств с прибылью». В Toth, P.; Vigo, D. (ред.). Маршрутизация транспортных средств: проблемы, методы и приложения (второе изд.). стр. 273–297. doi :10.1137/1.9781611973594.ch10.
  6. ^ Хаммами, Фарук; Рекик, Мония; Коэльо, Леандро К. (2020). «Гибридная адаптивная эвристика поиска в большом соседстве для задачи командного ориентирования». Компьютеры и исследования операций . 123 : 105034. doi : 10.1016/j.cor.2020.105034. S2CID  221134904.
  7. ^ Экичи, Али; Озенер, Окан Орсан; Куйзу, Гюльтекин (ноябрь 2015 г.). «Циклические графики доставки для задачи маршрутизации запасов». Транспортная наука . 49 (4): 817–829. дои : 10.1287/trsc.2014.0538.
  8. ^ Махмуд, Нафикс; Хак, Мд. Мокаммель (февраль 2019 г.). Решение задачи маршрутизации транспортных средств с несколькими депо (MDVRP) с использованием генетического алгоритма . Международная конференция по электротехнике, вычислительной технике и коммуникационной технике (ECCE) 2019 г. doi : 10.1109/ECACE.2019.8679429.
  9. ^ Бек, Дж. К.; Проссер, П.; Селенски, Э. (2003). «Маршрутизация транспортных средств и планирование работы цеха: в чем разница?» (PDF) . Труды 13-й Международной конференции по планированию и составлению расписаний с использованием искусственного интеллекта .
  10. ^ Павликов, К.; Петерсен, NC; Сёренсен, JL (2023). «Точное разделение округленных неравенств пропускной способности для задачи маршрутизации транспортных средств с пропускной способностью». Сети . 83. Сети: 197–209. doi : 10.1002/net.22183 . S2CID  263321558.
  11. ^ Миллер, CE; Такер, EW; Землин, RA (1960). «Формулировки целочисленного программирования и задачи коммивояжера». J. ACM . 7 : 326–329. doi : 10.1145/321043.321046 . S2CID  2984845.
  12. ^ Кристофидес, Н.; Мингоцци, А.; Тот, П. (1979). Проблема маршрутизации транспортных средств . Чичестер, Великобритания: Wiley. С. 315–338.
  13. ^ «Почему ручная оптимальная маршрутизация на складе так неэффективна?». Locatible.com . 2016-09-26 . Получено 2016-09-26 .
  14. ^ Рудберген, Кис Ян (2001). «Методы маршрутизации для складов с несколькими поперечными проходами» (PDF) . roodbergen.com . Получено 26.09.2016 .
  15. ^ Видал Т., Крейник Т.Г., Джендро М., Принс К. (2014). «Унифицированная структура решения для многоатрибутивных задач маршрутизации транспортных средств» (PDF) . Европейский журнал операционных исследований . 234 (3): 658–673. doi :10.1016/j.ejor.2013.09.045. S2CID  21037953.

Дальнейшее чтение