Задача коммивояжёра

Зада́ча коммивояжёра (англ. Traveling Salesman Problem – TSP), классическая задача комбинаторной оптимизации, результаты в области точного и приближённого решения которой во многом определили направления развития современной теории комбинаторных алгоритмов и теории вычислительной сложности (см., например, [1]).

Задача коммивояжёра и её модификации: задача коммивояжёра с ограничениями предшествования (англ. Precedence Constrained TSP), временными промежутками обслуживания (англ. TSP with Time Windows); ряд близких комбинаторных задач, среди которых обобщённая задача коммивояжёра (англ. Generalized TSP), задача маршрутизации транспортных средств (англ. Vehicle Routing Problem – VRP), задача ориентирования (англ. Orienteering Problem – OP), обладают широким спектром важных приложений в области исследования операций.

Содержательная постановка задачи коммивояжёра на удивление проста: «Задано множество из городов, каждой паре которых сопоставлена транспортная издержка , определяющая стоимость проезда из пункта в пункт . Требуется указать циклический маршрут, посещающий каждый город в точности один раз и обладающий минимальной стоимостью». Вероятно, поэтому до начала 20 в. задачу коммивояжёра было принято относить к математическим головоломкам. Среди наиболее известных – опубликованная в 1859 г. У. Р. Гамильтоном игра «Вокруг света» (англ. icosian game), связанная с построением гамильтонова обхода множества вершин додекаэдра, и задача о кратчайшем маршруте велосипедиста (англ. bicycle tour) из известной книги С. Лойда ([2]).

Формальная постановка в виде задачи комбинаторной оптимизации, по-видимому, впервые была представлена в работе К. Менгера. Систематические исследования в области алгоритмического анализа задачи восходят к классической работе Дж. Данцига, Р. Фалкерсона и С. Джонсона ([3]), а в области моделирования и индустриальных приложений – к работе Дж. Данцига и Дж. Рамсера ([4]). Наиболее подробные обзоры полученных за прошедшие десятилетия теоретических и прикладных результатов можно найти в монографиях ([5]; [6]).

Математическая постановка

Условие задачи коммивояжёра задаётся рёберно-взвешенным (ориентированным) графом , , весовая функция которого сопоставляет произвольному ребру – дуге транспортную издержку . Допустимыми решениями задачи являются гамильтоновы циклы (перестановки множества вершин) , стоимость которых задаётся соотношением

.

Задача состоит в нахождении цикла минимальной стоимости.

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

Принято различать постановки, заданные на неориентированных и ориентированных графах. По традиции задачей коммивояжёра принято называть именно первую версию задачи, с симметричной функцией транспортных издержек. В свою очередь задачу на ориентированном графе, с несимметричной функцией затрат, называют асимметричной задачей коммивояжёра (англ. Asymmetric Traveling Salesman Problem – ATSP).

Выделяют несколько специальных случаев классической симметричной задачи. Так, постановка, в которой для произвольных вершин , и справедливо неравенство треугольника

(1),

называется метрической. Если множество вершин является подмножеством конечномерного числового пространства, а транспортные издержки определяются евклидовыми расстояниями между вершинами, постановку задачи также принято называть евклидовой.

Целочисленные формулировки

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

Исторически первая и, по-видимому, наиболее исследованная в теоретическом плане формулировка была приведена в работе Дж. Данцига, Р. Фалкерсона и С. Джонсона ([7]). Остановившись для определённости на рассмотрении асимметричной постановки задачи коммивояжёра, сопоставим произвольному гамильтонову контуру характеристический вектор , значение произвольной координаты которого, соответствующей дуге , задаётся соотношением

Зададимся стандартными обозначениями

для исходящего и входящего разрезов произвольного собственного подмножества и для их объединения, а также , и для частного случая разрезов, порождаемого подмножеством . Приведённая ниже задача булевой линейной оптимизации известна в литературе как модель Данцига – Фалкерсона – Джонсона:

Нередко модель рассматривается в эквивалентной постановке, где подсистема

заменяется подсистемой

.

Заметим также, обе подсистемы содержат экспоненциальное (по отношению к числу вершин графа) число неравенств, что в определённом смысле затрудняет непосредственное применение модели для численного решения исходной задачи. Поэтому наряду с данной классической моделью развиваются компактные модели MILP, число ограничений и переменных в которых ограничено сверху некоторым полиномом от , первой из них и одной из самых компактных, по-видимому, является модель Миллера – Такера – Землина, предложенная в работе Integer Programming Formulation of Traveling Salesman Problems ([8]).

Последующие результаты в области совершенствования целочисленных моделей для задачи коммивояжёра получены в работах ([9]; [10]; [11]). На сегодня наиболее эффективными (с точки зрения точности нижних оценок соответствующих вещественных релаксаций) считаются результаты, приведённые в книгах New tighter polynomial length formulations for the asymmetric traveling salesman problem with and without precedence constraints ([12]) и Combining and projecting flow models for the (precedence constrained) asymmetric traveling salesman problem ([13]).

Вычислительная сложность

Как следует из классической работы Р. Карпа ([14]), задача коммивояжёра -трудна в сильном смысле, т. е. наличие точного алгоритма, находящего оптимальное решение задачи за полиномиальное или псевдополиномиальное время от длины записи её условия влечёт равенство . Результат следует из полиномиальной сводимости к данной задаче -полной задачи «Гамильтонов цикл». Известно также, что задача коммивояжёра сохраняет труднорешаемость даже в чрезвычайно специфических постановках, например на евклидовой плоскости, как показано в известной работе Х. Пападимитриу ([15]).

Точные алгоритмы

Как и для многих задач комбинаторной оптимизации, оптимальное решение задачи коммивояжёра может быть найдено полным перебором, путём перечисления всех перестановок вершин графа , с трудоёмкостью . См. также «О большое».

Один из известных подходов к проектированию точных алгоритмов для задачи коммивояжёра опирается на фундаментальные результаты Р. Беллмана ([16]) и М. Хелда – Р. Карпа ([17]) и связан с развитием метода динамического программирования (см., например, Меламед. 1989; Ченцов. 1998). Классическая схема динамического программирования находит оптимальное решение задачи за время и при затратах памяти .

Другой известный подход к построению точных алгоритмов для задачи коммивояжёра и её обобщений опирается на результаты в области полиэдральной теории допустимых маршрутов задачи ([18]; [19]) и связан с проектированием эффективных методов ветвей и границ (англ. branch-and-bound) и ветвей и отсечений (англ. branch-and-cut) (см., например, [20]; [21]; [22]; [23]; [24]; [25]).

Эвристические алгоритмы

Несмотря на математическую элегантность и ряд вычислительных преимуществ, использование обсуждавшихся выше алгоритмов ограничено постановками относительно малого размера, ввиду -трудности исследуемой задачи коммивояжёра. Поэтому история её алгоритмического анализа тесно связана с развитием метаэвристических и эвристических алгоритмов ([26]; [27]). Известно (см., например, [28]; [29]), что эвристические алгоритмы нередко демонстрируют удивительную производительность, позволяя находить близкие к оптимальным или даже оптимальные решения для постановок задачи большого размера, возникающих в практических приложениях. Кроме того, использование таких алгоритмов в составе методов ветвления в качестве первичных эвристик (англ. primal heuristics), как правило, приводит к существенному ускорению последних.

Наибольшего развития в контексте задачи коммивояжёра получили алгоритмы локального поиска ([30]; [31]; [32]), восходящие к классическому алгоритму С. Лина (Линя) и Б. Кернигана ([33]) генетические и меметические алгоритмы Г. Гутина и Д. Карапетяна ([34]; [35]), алгоритмы поиска с переменными окрестностями (англ. Variable Neighborhood Search – VNS) ([36]; [37]; [38]) и алгоритмы адаптивного поиска в больших окрестностях (англ. Adaptive Search in Large Neighborhoods – ALNS) ([39]; [40]).

Приближённые алгоритмы с теоретическими гарантиями

Общая постановка задачи коммивояжёра не аппроксимируема в классе приближённых алгоритмов с полиномиальной трудоёмкостью. В частности, как следует из работы P-Complete Approximation Problems ([41]), наличие полиномиального приближённого алгоритма с точностью влечёт равенство .

Многие важные частные случаи задачи, наоборот, успешно аппроксимируются в классе полиномиальных алгоритмов. Действительно, постановки задачи (симметричная и асимметричная), функции транспортных издержек которых удовлетворяют неравенству треугольника , принадлежат классу оптимизационных задач, обладающих полиномиальными приближёнными алгоритмами с фиксированными (константными) оценками точности.

Для метрической задачи коммивояжёра хорошо известен -приближённый алгоритм Кристофидеса – Сердюкова (Christofides. 1975; Сердюков. 1978) с трудоёмкостью , состоящий в последовательном решении трёх вспомогательных экстремальных задач на графах: поиска остовного дерева минимального веса, совершённого паросочетания минимальной стоимости и кратчайшего эйлерова цикла, каждая из которых полиномиально разрешима.

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

В работе 2018 г. О. Свенссоном, Я. Тарнавским и Л. Вегом ([42]) для асимметричной задачи с неравенством треугольника впервые предложен приближённый алгоритм с константной оценкой точности . В недавней работе этих авторов ([43]) и статьях В. Трауб и Й. Вигена ([44]; [45]) данную оценку удалось существенно улучшить, до и соответственно. Как в своё время алгоритм Кристофидеса – Сердюкова, эти результаты открыли возможность проектирования эффективных приближённых алгоритмов для широкого класса асимметричных комбинаторных задач ([46]). Поэтому теоретическая значимость их вряд ли может быть переоценена, несмотря на то что с практической точки зрения полученные оценки точности по-прежнему представляются далёкими от идеала.

Для более узких специальных случаев задачи наиболее известны результаты С. Ароры ([47]) и Дж. Митчелла ([48]), впервые обосновавших аппроксимируемость задачи коммивояжёра на евклидовой плоскости в классе полиномиальных приближённых схем (англ. Polynomial Time Approximation Scheme – PTAS). Впоследствии алгоритм С. Ароры удалось обобщить на случай произвольных конечномерных числовых пространств. Наиболее общим на данный момент считается революционный результат Я. Бартала, Л. Готтлиба и Р. Краутгеймера ([49]), обосновывающий существование PTAS для задачи коммивояжёра, заданной в метрическом пространстве произвольной фиксированной размерности удвоения. Разработанный этими авторами подход позволил разработать полиномиальные приближённые схемы для целого ряда близких задач комбинаторной оптимизации (см., например, [50]; [51]).

Примечания

  1. The Traveling Salesman Problem ... 2007
  2. Loyd. 1914
  3. Dantzig. 1954
  4. Dantzig. 1959
  5. The Traveling Salesman Problem ... 2007
  6. The traveling Salesman Problem ... 1991
  7. Dantzig. 1954
  8. Miller. 1960
  9. Desrochers. 1991
  10. Gouveia. 1999
  11. Sherali. 2002
  12. Sarin. 2005
  13. Combining and projecting flow models ... 2018
  14. Karp. 1972
  15. Papadimitriou. 1977
  16. Bellman. 1962
  17. Held. 1962
  18. The Traveling Salesman Problem ... 2007
  19. The Traveling Salesman Problem ... 1991
  20. Padberg. 1991
  21. Ascheuer. 2000
  22. Hoffman. 2013
  23. Gouveia. 2015
  24. A branch-and-cut algorithm ... 2020
  25. Precedence constrained generalized traveling salesman problem ... 2023
  26. The Traveling Salesman Problem ... 2007
  27. Handbook of Metaheuristics. 2019
  28. Traveling salesman problem heuristics ... 2011
  29. Smith. 2017
  30. Helsgaun. 2000
  31. Helsgaun. 2009
  32. Helsgaun. 2014
  33. Lin. 1973
  34. Gutin. 2010
  35. Gutin. 2011
  36. Hansen. 1999
  37. Hore. 2018
  38. Karakostas. 2022
  39. Smith. 2017
  40. Ropke. 2006
  41. Sahni. 1976
  42. Svensson. 2018
  43. Svensson. 2020
  44. Traub. 2020
  45. Traub. 2022
  46. Khachay. 2022
  47. Arora. 1998
  48. Mitchell. 1999
  49. Bartal. 2016
  50. Chan. 2018
  51. Khachay. 2021

Литература

  • Loyd S. Cyclopedia of 5000 puzzles, tricks, and conundrums with answers. – New York : The Lamb Publishing Company, 1914.
  • Menger K. Das botenproblem // Ergebnisse Eines Mathematischen Kolloquiums / hrsg. K. Menger. – Leipzig : Teubner, 1932. – № 2. – S. 11–12.
  • Dantzig G. Solution of a Large-Scale Traveling-Salesman Problem / G. Dantzig, R. Fulkerson, S. Johnson // Journal of the Operations Research Society of America. – 1954. – Vol. 2, № 4. – P. 393–410.
  • Dantzig G. B. The Truck Dispatching Problem / G. B. Dantzig, J. H. Ramser // Management Science. – 1959. – Vol. 6, № 1. – P. 80–91.
  • Miller C. Integer Programming Formulation of Traveling Salesman Problems / C. Miller, A. Tucker, R. Zemlin // Journal of the ACM. – 1960. – Vol. 7, № 4. – P. 326–329.
  • Bellman R. Dynamic programming treatment of the travelling Salesman problem // Journal of the ACM. – 1962. – Vol. 9, № 1. – P. 61–63.
  • Held M. A Dynamic Programming Approach to Sequencing Problems / M. Held, R. M. Karp // Journal of the Society for Industrial and Applied Mathematics. – 1962. – Vol. 10, № 1. – P. 196–210.
  • Karp R. M. Reducibility Among Combinatorial Problems
  • Lin S. An Effective Heuristic Algorithm for the Traveling-Salesman Problem / S. Lin, B. W. Kernighan // Operations Research. – 1973. – Vol. 21, № 2. – P. 498–516.
  • Christofides N. Worst-case analysis of a new heuristic for the Traveling Salesman Problem // Symposium on New Directions and Recent Results in Algorithms and Complexity. – 1976. – P. 441.
  • Sahni S. P-Complete Approximation Problems / S. Sahni, T. Gonzalez // Journal of the ACM. – 1976. – Vol. 23, № 3. – P. 555–565.
  • Papadimitriou C. H. The Euclidean travelling salesman problem is NP-complete // Theoretical Computer Science. – 1977. – Vol. 4, № 3. – P. 237–244.
  • Сердюков А. И. О некоторых экстремальных обходах в графах // Управляемые системы. – 1978. – Вып. 17. – С. 76–79.
  • Меламед И. И. Задача коммивояжера. Точные методы / И. И. Меламед, С. И. Сергеев, И. Х. Сигал // Автоматика и телемеханика. – 1989. – Вып. 10. – С. 3–29.
  • Desrochers M. Improvements and extensions to the Miller-Tucker-Zemlin subtour elimination constraints / M. Desrochers, G. Laporte // Operations Research Letters. – 1991. – Vol. 10, № 1. – P. 27–36.
  • Padberg M. A Branch-and-Cut Algorithm for the Resolution of Large-Scale Symmetric Traveling Salesman Problems / M. Padberg, G. Rinaldi // SIAM Review. – 1991. – Vol. 33, № 1. – P. 60–100.
  • The traveling Salesman Problem: a guided tour of combinatorial optimization / ed. by E. L. Lawler [et al.]. – Chichester [et al.] : John Wiley & Sons, 1991. – (Wiley-Interscience series in discrete mathematics).
  • Arora S. Polynomial time approximation schemes for Euclidean traveling salesman and other geometric problems // Journal of the ACM. – 1998. – Vol. 45, № 5. – P. 753–782.
  • Ченцов А. А. О решении задачи маршрутной оптимизации методом динамического программирования / А. А. Ченцов, А. Г. Ченцов // Автоматика и телемеханика. – 1998. – № 9. – С. 117–129.
  • Gouveia L. The asymmetric travelling salesman problem and a reformulation of the Miller–Tucker–Zemlin constraints / L. Gouveia, J. M. Pires // European Journal of Operational Research. – 1999. – Vol. 112, № 1. – P. 134–146.
  • Meta-heuristics : advances and trends in local search paradigms for optimization / ed. by S. Voß [et al.]. – Boston : Kluwer Academic Publishers, 1999.
  • Mitchell J. S. B. Guillotine Subdivisions Approximate Polygonal Subdivisions: A Simple Polynomial-Time Approximation Scheme for Geometric TSP, k -MST, and Related Problems // SIAM Journal on Computing . – 1999. – Vol. 28, № 4. – P. 1298–1309.
  • Ascheuer N. A Branch & Cut Algorithm for the Asymmetric Traveling Salesman Problem with Precedence Constraints / N. Ascheuer, M. Jünger, G. Reinelt // Computational Optimization and Applications. – 2000. – Vol. 17, № 1. – P. 61–84.
  • Helsgaun K. An effective implementation of the Lin–Kernighan traveling salesman heuristic // European Journal of Operational Research. – 2000. – Vol. 126, № 1. – P. 106–130.
  • Helsgaun K. General k-opt submoves for the Lin–Kernighan TSP heuristic // Mathematical Programming Computation. – 2009. – Vol. 1, № 2/3. – P. 119–163.
  • Helsgaun K. Solving the equality generalized traveling salesman problem using the Lin–Kernighan–Helsgaun Algorithm // Mathematical Programming Computation. – 2015. – Vol. 7, № 3. – P. 269–287.
  • Sherali H. D. On Tightening the Relaxations of Miller-Tucker-Zemlin Formulations for Asymmetric Traveling Salesman Problems / H. D. Sherali, P. J. Driscoll // Operations Research. – 2002. – Vol. 50, № 4. – P. 656–669.
  • Sarin S. C. New tighter polynomial length formulations for the asymmetric traveling salesman problem with and without precedence constraints / S. C. Sarin, H. D. Sherali, A. Bhootra // Operations Research Letters. – 2005. – Vol. 33, № 1. – P. 62–70.
  • Ropke S. An Adaptive Large Neighborhood Search Heuristic for the Pickup and Delivery Problem with Time Windows / S. Ropke, D. Pisinger // Transportation Science. – 2006. – Vol. 40, № 4. – P. 455–472.
  • The Traveling Salesman Problem and Its Variations / ed. by G. Gutin, A. P. Punnen. – New York : Springer, 2007. – (Combinatorial Optimization ; 12).
  • Gutin G. A memetic algorithm for the generalized traveling salesman problem / G. Gutin, D. Karapetyan // Natural Computing. – 2010. – Vol. 9, № 1. – P. 47–60.
  • Gutin G. Lin–Kernighan heuristic adaptations for the generalized traveling salesman problem / G. Gutin, D. Karapetyan // European Journal of Operational Research. – 2011. – Vol. 208, № 3. – P. 221–232.
  • Traveling salesman problem heuristics: Leading methods, implementations and latest advances / C. Rego, D. Gamboa, F. Glover, C. Osterman // European Journal of Operational Research. – 2011. – Vol. 211, № 3. – P. 427–441.
  • Encyclopedia of operations research and management science / ed. by Saul I. Gass, Michael C. Fu. – 3rd ed. – New York ; London : Springer, 2013. – Vol. 2.
  • Gouveia L. Load-dependent and precedence-based models for pickup and delivery problems / L. Gouveia, M. Ruthmair // Computers & Operations Research. – 2015. – Vol. 63. – P. 56–71.
  • Bartal Y. The Traveling Salesman Problem: Low-Dimensionality Implies a Polynomial Time Approximation Scheme / Y. Bartal, L.-A. Gottlieb, R. Krauthgamer // SIAM Journal on Computing. – 2016. – Vol. 45, № 4. – P. 1563–1581.
  • Smith S. L. GLNS: An Effective Large Neighborhood Search Heuristic for the Generalized Traveling Salesman Problem / S. L. Smith, F. Imeson // Computers & Operations Research. – 2017. – Vol. 87. – P. 1–19.
  • Chan T.-H. H. Reducing Curse of Dimensionality: Improved PTAS for TSP (with Neighborhoods) in Doubling Metrics / T.-H. H. Chan, Shaofeng H.-C. Jiang // ACM Transactions on Algorithms. – 2018. – Vol. 14, № 1. – P. 1–18.
  • Chan T.-H. H. A Unified PTAS for Prize Collecting TSP and Steiner Tree Problem in Doubling Metrics / T.-H. H. Chan, Haotian Jiang, Shaofeng H.-C. Jiang // ACM Transactions on Algorithms. – 2020. – Vol. 16, № 2. – P. 1–23.
  • Combining and projecting flow models for the (precedence constrained) asymmetric traveling salesman problem / L. Gouveia, P. Pesneau, M. Ruthmair, D. Santos // Networks. – 2018. – Vol. 71, № 4. – P. 451–465.
  • Hore S. Improving variable neighborhood search to solve the traveling salesman problem / S. Hore, A. Chatterjee, A. Dewanji // Applied Soft Computing. – 2018. – Vol. 68. – P. 83–91.
  • Svensson O. A constant-factor approximation algorithm for the asymmetric traveling salesman problem / O. Svensson, J. Tarnawski, L. A. Végh // STOC 2018: Proceedings of the 50th Annual ACM SIGACT Symposium on the Theory of Computing, June 25–29, 2018 in Los Angeles. – New York : Association for Computing Machinery, 2018. – P. 204–213.
  • Svensson O. A Constant-factor Approximation Algorithm for the Asymmetric Traveling Salesman Problem / O. Svensson, J. Tarnawski, L. A. Vegh // Journal of the ACM. – 2020. – Vol. 67, № 6. – P. 1–53.
  • Handbook of Metaheuristics / ed. by M. Gendreau, J.-Y. Potvin. – 3rd ed. – Cham : Springer, 2019. – (International Series in Operations Research & Management Science ; 272).
  • A branch-and-cut algorithm for the generalized traveling salesman problem with time windows / Y. Yuan, D. Cattaruzza, M. Ogier, F. Semet // European Journal of Operational Research. – 2020. – Vol. 286, № 3. – P. 849–866.
  • Traub V. An improved approximation algorithm for ATSP / V. Traub, J. Vygen // STOC 2020 : Proceedings of the 52nd Annual ACM SIGACT Symposium on Theory of Computing, June 22–26, 2020 in Chicago. – New York : Association for Computing Machinery, 2020. – P. 1–13.
  • Traub V. An Improved Approximation Algorithm for The Asymmetric Traveling Salesman Problem / V. Traub, J. Vygen // SIAM Journal on Computing. – 2022. – Vol. 51, № 1. – P. 139–173.
  • Khachay M. Efficient approximation of the metric CVRP in spaces of fixed doubling dimension / M. Khachay, Y. Ogorodnikov, D. Khachay // Journal of Global Optimization. – 2021. – Vol. 80, № 3. – P. 679–710.
  • Khachay M. Y. Constant-Factor Approximation Algorithms for a Series of Combinatorial Routing Problems Based on the Reduction to the Asymmetric Traveling Salesman Problem / M. Y. Khachay, E. D. Neznakhina, K. V. Ryzhenko // Proceedings of the Steklov Institute of Mathematics. – 2022. – Vol. 319, suppl. 1. – P. S140–S155.
  • Karakostas P. A Double-Adaptive General Variable Neighborhood Search algorithm for the solution of the Traveling Salesman Problem / P. Karakostas, A. Sifaleras // Applied Soft Computing. – 2022. – Vol. 121. – Art. 108746.
  • Precedence constrained generalized traveling salesman problem: Polyhedral study, formulations, and branch-and-cut algorithm / D. Khachai, R. Sadykov, O. Battaia, M. Khachay // European Journal of Operational Research. – 2023. – Vol. 309, № 2. – P. 488–505.
Материалы портала bigenc.ru переданы в ведение АНО «Интернет-энциклопедия «РУВИКИ» на основе лицензионного соглашения. Возможны неточности в отображении материалов. Если у вас возникли вопросы или вы увидели ошибку, пожалуйста, сообщите нам на info@ruwiki.ru