Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Travelling salesman problem

From Wikipedia, the free encyclopedia
(Redirected fromTraveling salesman problem)
NP-hard problem in combinatorial optimization

Solution of a travelling salesman problem: the black line shows the shortest possible loop that connects every red dot.

In thetheory of computational complexity, thetravelling salesman problem (TSP) asks the following question: "Given a list of cities and the distances between each pair of cities, what is the shortest possible route that visits each city exactly once and returns to the origin city?" It is anNP-hard problem incombinatorial optimization, important intheoretical computer science andoperations research.

Thetravelling purchaser problem, thevehicle routing problem and thering star problem[1] are three generalizations of TSP.

The decision version of the TSP (where given a lengthL, the task is to decide whether the graph has a tour whose length is at mostL) belongs to the class ofNP-complete problems. Thus, it is possible that theworst-caserunning time for any algorithm for the TSP increasessuperpolynomially (but no more thanexponentially) with the number of cities.

The problem was first formulated in 1930 and is one of the most intensively studied problems in optimization. It is used as abenchmark for many optimization methods. Even though the problem is computationally difficult, manyheuristics andexact algorithms are known, so that some instances with tens of thousands of cities can be solved completely, and even problems with millions of cities can be approximated within a small fraction of 1%.[2]

The TSP has several applications even in its purest formulation, such asplanning,logistics, and the manufacture ofmicrochips. Slightly modified, it appears as a sub-problem in many areas, such asDNA sequencing. In these applications, the conceptcity represents, for example, customers, soldering points, or DNA fragments, and the conceptdistance represents travelling times or cost, or asimilarity measure between DNA fragments. The TSP also appears in astronomy, as astronomers observing many sources want to minimize the time spent moving the telescope between the sources; in such problems, the TSP can be embedded inside anoptimal control problem. In many applications, additional constraints such as limited resources or time windows may be imposed.

History

[edit]

The origins of the travelling salesman problem are unclear. A handbook for travelling salesmen from 1832 mentions the problem and includes example tours throughGermany andSwitzerland, but contains no mathematical treatment.[3]

William Rowan Hamilton, c. 1850

The TSP was mathematically formulated in the 19th century by the Irish mathematicianWilliam Rowan Hamilton and by the British mathematicianThomas Kirkman. Hamilton'sicosian game was a recreational puzzle based on finding aHamiltonian cycle.[4] The general form of the TSP appears to have been first studied by mathematicians during the 1930s in Vienna and atHarvard, notably byKarl Menger, who defines the problem, considers the obviousbrute-force algorithm, and observes the non-optimality of thenearest neighbour heuristic:

We denote bymessenger problem (since in practice this question should be solved by each postman, anyway also by many travelers) the task to find, for finitely many points whose pairwise distances are known, the shortest route connecting the points. Of course, this problem is solvable by finitely many trials. Rules which would push the number of trials below the number of permutations of the given points, are not known. The rule that one first should go from the starting point to the closest point, then to the point closest to this, etc., in general does not yield the shortest route.[5]

It was first considered mathematically in the 1930s byMerrill M. Flood, who was looking to solve a school bus routing problem.[6]Hassler Whitney atPrinceton University generated interest in the problem, which he called the "48 states problem". The earliest publication using the phrase "travelling [or traveling] salesman problem" was the 1949RAND Corporation report byJulia Robinson, "On the Hamiltonian game (a traveling salesman problem)."[7][8]

In the 1950s and 1960s, the problem became increasingly popular in scientific circles in Europe and the United States after theRAND Corporation inSanta Monica offered prizes for steps in solving the problem.[6] Notable contributions were made byGeorge Dantzig,Delbert Ray Fulkerson, andSelmer M. Johnson from the RAND Corporation, who expressed the problem as aninteger linear program and developed thecutting plane method for its solution. They wrote what is considered the seminal paper on the subject in which, with these new methods, they solved an instance with 49 cities to optimality by constructing a tour and proving that no other tour could be shorter. Dantzig, Fulkerson, and Johnson, however, speculated that, given a near-optimal solution, one may be able to find optimality or prove optimality by adding a small number of extra inequalities (cuts). They used this idea to solve their initial 49-city problem using a string model. They found they only needed 26 cuts to come to a solution for their 49 city problem. While this paper did not give an algorithmic approach to TSP problems, the ideas that lay within it were indispensable to later creating exact solution methods for the TSP, though it would take 15 years to find an algorithmic approach in creating these cuts.[6] As well as cutting plane methods, Dantzig, Fulkerson, and Johnson usedbranch-and-bound algorithms perhaps for the first time.[6]

In 1959,Jillian Beardwood, J.H. Halton, andJohn Hammersley published an article entitled "The Shortest Path Through Many Points" in the journal of theCambridge Philosophical Society.[9] The Beardwood–Halton–Hammersley theorem provides a practical solution to the travelling salesman problem. The authors derived an asymptotic formula to determine the length of the shortest route for a salesman who starts at a home or office and visits a fixed number of locations before returning to the start.

In the following decades, the problem was studied by many researchers frommathematics,computer science,chemistry,physics, and other sciences. In the 1960s, however, a new approach was created that, instead of seeking optimal solutions, would produce a solution whose length is provably bounded by a multiple of the optimal length, and in doing so would create lower bounds for the problem; these lower bounds would then be used with branch-and-bound approaches. One method of doing this was to create aminimum spanning tree of the graph and then double all its edges, which produces the bound that the length of an optimal tour is at most twice the weight of a minimum spanning tree.[6]

In 1976,Christofides and Serdyukov (independently of each other) made a big advance in this direction:[10] theChristofides–Serdyukov algorithm yields a solution that, in the worst case, is at most 1.5 times longer than the optimal solution. As the algorithm was simple and quick, many hoped it would give way to a near-optimal solution method. However, this hope for improvement did not immediately materialize, and the Christofides–Serdyukov algorithm remained the method with the best worst-case scenario until 2011, when a (very) slightly improved approximation algorithm was developed for the subset of "graphical" TSPs.[11] In 2020, this tiny improvement was extended to the full (metric) TSP.[12][13]

Richard M. Karp showed in 1972 that theHamiltonian cycle problem wasNP-complete, which implies theNP-hardness of TSP. This supplied a mathematical explanation for the apparent computational difficulty of finding optimal tours.

Great progress was made in the late 1970s and 1980, when Grötschel, Padberg, Rinaldi and others managed to exactly solve instances with up to 2,392 cities, using cutting planes andbranch-and-bound.

In the 1990s,Applegate,Bixby,Chvátal, andCook developed the programConcorde that has been used in many recent record solutions. Gerhard Reinelt published the TSPLIB in 1991, a collection of benchmark instances of varying difficulty, which has been used by many research groups for comparing results. In 2006, Cook and others computed an optimal tour through an 85,900-city instance given by a microchip layout problem, currently the largest solved TSPLIB instance. For many other instances with millions of cities, solutions can be found that are guaranteed to be within 2–3% of an optimal tour.[14]

Description

[edit]

As a graph problem

[edit]
Symmetric TSP with four cities

TSP can be modeled as anundirected weighted graph, such that cities are the graph'svertices, paths are the graph'sedges, and a path's distance is the edge's weight. It is a minimization problem starting and finishing at a specifiedvertex after having visited each othervertex exactly once. Often, the model is acomplete graph (i.e., each pair of vertices is connected by an edge). If no path exists between two cities, then adding a sufficiently long edge will complete the graph without affecting the optimal tour.

Asymmetric and symmetric

[edit]

In thesymmetric TSP, the distance between two cities is the same in each opposite direction, forming anundirected graph. This symmetry halves the number of possible solutions. In theasymmetric TSP, paths may not exist in both directions or the distances might be different, forming adirected graph. Traffic congestion, one-way streets, and airfares for cities with different departure and arrival fees are real-world considerations that could yield a TSP problem in asymmetric form.

Related problems

[edit]
  • An equivalent formulation in terms ofgraph theory is: Given acomplete weighted graph (where the vertices would represent the cities, the edges would represent the roads, and the weights would be the cost or distance of that road), find aHamiltonian cycle with the least weight. This is more general than theHamiltonian path problem, which only asks if a Hamiltonian path (or cycle) exists in a non-complete unweighted graph.
  • The requirement of returning to the starting city does not change thecomputational complexity of the problem; seeHamiltonian path problem.
  • Another related problem is thebottleneck travelling salesman problem: Find a Hamiltonian cycle in aweighted graph with the minimal weight of the weightiestedge. A real-world example is avoiding narrow streets with big buses.[15] The problem is of considerable practical importance, apart from evident transportation and logistics areas. A classic example is inprinted circuit manufacturing: scheduling of a route of thedrill machine to drill holes in a PCB. In robotic machining or drilling applications, the "cities" are parts to machine or holes (of different sizes) to drill, and the "cost of travel" includes time for retooling the robot (single-machine job sequencing problem).[16]
  • Thegeneralized travelling salesman problem, also known as the "travelling politician problem", deals with "states" that have (one or more) "cities", and the salesman must visit exactly one city from each state. One application is encountered in ordering a solution to thecutting stock problem in order to minimize knife changes. Another is concerned with drilling insemiconductor manufacturing; see e.g.,U.S. patent 7,054,798. Noon and Bean demonstrated that the generalized travelling salesman problem can be transformed into a standard TSP with the same number of cities, but a modifieddistance matrix.
  • The sequential ordering problem deals with the problem of visiting a set of cities, where precedence relations between the cities exist.
  • A common interview question atGoogle is how to route data among data processing nodes; routes vary by time to transfer the data, but nodes also differ by their computing power and storage, compounding the problem of where to send data.
  • Thetravelling purchaser problem deals with a purchaser who is charged with purchasing a set of products. He can purchase these products in several cities, but at different prices, and not all cities offer the same products. The objective is to find a route between a subset of the cities that minimizes total cost (travel cost + purchasing cost) and enables the purchase of all required products.

Integer linear programming formulations

[edit]

The TSP can be formulated as aninteger linear program.[17][18][19] Several formulations are known. Two notable formulations are the Miller–Tucker–Zemlin (MTZ) formulation and the Dantzig–Fulkerson–Johnson (DFJ) formulation. The DFJ formulation is stronger, though the MTZ formulation is still useful in certain settings.[20][21]

Common to both these formulations is that one labels the cities with the numbers1,,n{\displaystyle 1,\ldots ,n} and takescij>0{\displaystyle c_{ij}>0} to be the cost (distance) from cityi{\displaystyle i} to cityj{\displaystyle j}. The main variables in the formulations are:

xij={1the path goes from city i to city j0otherwise.{\displaystyle x_{ij}={\begin{cases}1&{\text{the path goes from city }}i{\text{ to city }}j\\0&{\text{otherwise.}}\end{cases}}}

It is because these are 0/1 variables that the formulations become integer programs; all other constraints are purely linear. In particular, the objective in the program is to minimize the tour length

i=1nji,j=1ncijxij.{\displaystyle \sum _{i=1}^{n}\sum _{j\neq i,j=1}^{n}c_{ij}x_{ij}.}

Without further constraints, the{xij}i,j{\displaystyle \{x_{ij}\}_{i,j}} will effectively range over all subsets of the set of edges, which is very far from the sets of edges in a tour, and allows for a trivial minimum where allxij=0{\displaystyle x_{ij}=0}. Therefore, both formulations also have the constraints that, at each vertex, there is exactly one incoming edge and one outgoing edge, which may be expressed as the2n{\displaystyle 2n} linear equations

i=1,ijnxij=1{\displaystyle \sum _{i=1,i\neq j}^{n}x_{ij}=1} forj=1,,n{\displaystyle j=1,\ldots ,n} andj=1,jinxij=1{\displaystyle \sum _{j=1,j\neq i}^{n}x_{ij}=1} fori=1,,n.{\displaystyle i=1,\ldots ,n.}

These ensure that the chosen set of edges locally looks like that of a tour, but still allow for solutions violating the global requirement that there isone tour which visits all vertices, as the edges chosen could make up several tours, each visiting only a subset of the vertices; arguably, it is this global requirement that makes TSP a hard problem. The MTZ and DFJ formulations differ in how they express this final requirement as linear constraints.

Miller–Tucker–Zemlin formulation

[edit]

In addition to thexij{\displaystyle x_{ij}} variables as above, there is for eachi=1,,n{\displaystyle i=1,\ldots ,n} a dummy variableui{\displaystyle u_{i}} that keeps track of the order in which the cities are visited, counting from city1{\displaystyle 1}; the interpretation is thatui<uj{\displaystyle u_{i}<u_{j}} implies cityi{\displaystyle i} is visited before cityj.{\displaystyle j.} For a given tour (as encoded into values of thexij{\displaystyle x_{ij}} variables), one may find satisfying values for theui{\displaystyle u_{i}} variables by makingui{\displaystyle u_{i}} equal to the number of edges along that tour, when going from city1{\displaystyle 1} to cityi.{\displaystyle i.}[22]

Because linear programming favors non-strict inequalities ({\displaystyle \geq }) over strict(>{\displaystyle >}), we would like to impose constraints to the effect that

ujui+1{\displaystyle u_{j}\geq u_{i}+1} ifxij=1.{\displaystyle x_{ij}=1.}

Merely requiringujui+xij{\displaystyle u_{j}\geq u_{i}+x_{ij}} wouldnot achieve that, because this also requiresujui{\displaystyle u_{j}\geq u_{i}} whenxij=0,{\displaystyle x_{ij}=0,} which is not correct. Instead MTZ use then(n1){\displaystyle n(n-1)} linear constraints

uiuj+1(n1)(1xij){\displaystyle u_{i}-u_{j}+1\leq (n-1)(1-x_{ij})} for all distincti,j{2,,n},{\displaystyle i,j\in \{2,\dotsc ,n\},}

where the constant termn1{\displaystyle n-1} provides sufficient slack thatxij=0{\displaystyle x_{ij}=0} does not impose a relation betweenuj{\displaystyle u_{j}} andui.{\displaystyle u_{i}.}

The way that theui{\displaystyle u_{i}} variables then enforce that a single tour visits all cities is that they increase by at least1{\displaystyle 1} for each step along a tour, with a decrease only allowed where the tour passes through city 1.{\displaystyle 1.} That constraint would be violated by every tour which does not pass through city 1,{\displaystyle 1,} so the only way to satisfy it is that the tour passing city 1{\displaystyle 1} also passes through all other cities.

The MTZ formulation of TSP is thus the following integer linear programming problem:

mini=1nji,j=1ncijxij:xij{0,1}i,j=1,,n;i=1,ijnxij=1j=1,,n;j=1,jinxij=1i=1,,n;uiuj+1(n1)(1xij)2ijn;2uin2in.{\displaystyle {\begin{aligned}\min \sum _{i=1}^{n}\sum _{j\neq i,j=1}^{n}c_{ij}x_{ij}&\colon &&\\x_{ij}\in {}&\{0,1\}&&i,j=1,\ldots ,n;\\\sum _{i=1,i\neq j}^{n}x_{ij}={}&1&&j=1,\ldots ,n;\\\sum _{j=1,j\neq i}^{n}x_{ij}={}&1&&i=1,\ldots ,n;\\u_{i}-u_{j}+1\leq {}&(n-1)(1-x_{ij})&&2\leq i\neq j\leq n;\\2\leq u_{i}\leq {}&n&&2\leq i\leq n.\end{aligned}}}

The first set of equalities requires that each city is arrived at from exactly one other city, and the second set of equalities requires that from each city there is a departure to exactly one other city. The last constraint enforces that there is only a single tour covering all cities, and not two or more disjointed tours that only collectively cover all cities.

Dantzig–Fulkerson–Johnson formulation

[edit]

Label the cities with the numbers 1, ...,n and define:

xij={1the path goes from city i to city j0otherwise.{\displaystyle x_{ij}={\begin{cases}1&{\text{the path goes from city }}i{\text{ to city }}j\\0&{\text{otherwise.}}\end{cases}}}

Takecij>0{\displaystyle c_{ij}>0} to be the distance from cityi to cityj. Then TSP can be written as the following integer linear programming problem:

mini=1nji,j=1ncijxij:i=1,ijnxij=1j=1,,n;j=1,jinxij=1i=1,,n;iQji,jQxij|Q|1Q{1,,n},|Q|2.{\displaystyle {\begin{aligned}\min &\sum _{i=1}^{n}\sum _{j\neq i,j=1}^{n}c_{ij}x_{ij}\colon &&\\&\sum _{i=1,i\neq j}^{n}x_{ij}=1&&j=1,\ldots ,n;\\&\sum _{j=1,j\neq i}^{n}x_{ij}=1&&i=1,\ldots ,n;\\&\sum _{i\in Q}{\sum _{j\neq i,j\in Q}{x_{ij}}}\leq |Q|-1&&\forall Q\subsetneq \{1,\ldots ,n\},|Q|\geq 2.\\\end{aligned}}}

The last constraint of the DFJ formulation—called asubtour elimination constraint—ensures that no proper subset Q can form a sub-tour, so the solution returned is a single tour and not the union of smaller tours. Intuitively, for each proper subset Q of the cities, the constraint requires that there be fewer edges than cities in Q: if there were to be as many edges in Q as cities in Q, that would represent a subtour of the cities of Q. Because this leads to an exponential number of possible constraints, in practice it is solved withrow generation.[23]

Computing a solution

[edit]

The traditional lines of attack for the NP-hard problems are the following:

  • Devisingexact algorithms, which work reasonably fast only for small problem sizes.
  • Devising "suboptimal" orheuristic algorithms, i.e., algorithms that deliver approximated solutions in a reasonable time.
  • Finding special cases for the problem ("subproblems") for which either better or exact heuristics are possible.

Exact algorithms

[edit]

The most direct solution would be to try allpermutations (ordered combinations) and see which one is cheapest (usingbrute-force search). The running time for this approach lies within a polynomial factor ofO(n!){\displaystyle O(n!)}, thefactorial of the number of cities, so this solution becomes impractical even for only 20 cities.

One of the earliest applications ofdynamic programming is theHeld–Karp algorithm, which solves the problem in timeO(n22n){\displaystyle O(n^{2}2^{n})}.[24] This bound has also been reached by Exclusion-Inclusion in an attempt preceding the dynamic programming approach.

Solution to a symmetric TSP with 7 cities using brute force search. Note: Number of permutations: (7−1)!/2 = 360

Improving these time bounds seems to be difficult. For example, it has not been determined whether a classicalexact algorithm for TSP that runs in timeO(1.9999n){\displaystyle O(1.9999^{n})} exists.[25] The currently best quantumexact algorithm for TSP due to Ambainis et al. runs in timeO(1.728n){\displaystyle O(1.728^{n})}.[26]

Other approaches include:

  • Variousbranch-and-bound algorithms, which can be used to process TSPs containing thousands of cities.
Solution of a TSP with 7 cities using a simple Branch and bound algorithm. Note: The number of permutations is much less than Brute force search

An exact solution for 15,112 German towns from TSPLIB was found in 2001 using thecutting-plane method proposed byGeorge Dantzig,Ray Fulkerson, andSelmer M. Johnson in 1954, based onlinear programming. The computations were performed on a network of 110 processors located atRice University andPrinceton University. The total computation time was equivalent to 22.6 years on a single 500 MHzAlpha processor. In May 2004, the travelling salesman problem of visiting all 24,978 towns in Sweden was solved: a tour of length approximately 72,500 kilometres was found, and it was proven that no shorter tour exists.[29] In March 2005, the travelling salesman problem of visiting all 33,810 points in a circuit board was solved usingConcorde TSP Solver: a tour of length 66,048,945 units was found, and it was proven that no shorter tour exists. The computation took approximately 15.7 CPU-years (Cook et al. 2006). In April 2006 an instance with 85,900 points was solved usingConcorde TSP Solver, taking over 136 CPU-years; seeApplegate et al. (2006).

Heuristic and approximation algorithms

[edit]

Variousheuristics andapproximation algorithms, which quickly yield good solutions, have been devised. These include themulti-fragment algorithm. Modern methods can find solutions for extremely large problems (millions of cities) within a reasonable time which are, with a high probability, just 2–3% away from the optimal solution.[14]

Several categories of heuristics are recognized.

Constructive heuristics

[edit]
Nearest Neighbour algorithm for a TSP with 7 cities. The solution changes as the starting point is changed

Thenearest neighbour (NN) algorithm (agreedy algorithm) lets the salesman choose the nearest unvisited city as his next move. This algorithm quickly yields an effectively short route. ForN cities randomly distributed on a plane, the algorithm on average yields a path 25% longer than the shortest possible path;[30] however, there exist many specially-arranged city distributions which make the NN algorithm give the worst route.[31] This is true for both asymmetric and symmetric TSPs.[32] Rosenkrantz et al.[33] showed that the NN algorithm has the approximation factorΘ(log|V|){\displaystyle \Theta (\log |V|)} for instances satisfying the triangle inequality. A variation of the NN algorithm, called nearest fragment (NF) operator, which connects a group (fragment) of nearest unvisited cities, can find shorter routes with successive iterations.[34] The NF operator can also be applied on an initial solution obtained by the NN algorithm for further improvement in an elitist model, where only better solutions are accepted.

Thebitonic tour of a set of points is the minimum-perimetermonotone polygon that has the points as its vertices; it can be computed efficiently withdynamic programming.

Anotherconstructive heuristic, Match Twice and Stitch (MTS), performs two sequentialmatchings, where the second matching is executed after deleting all the edges of the first matching, to yield a set of cycles. The cycles are then stitched to produce the final tour.[35]

The Algorithm of Christofides and Serdyukov

[edit]
Creating a matching
Using a shortcut heuristic on the graph created by the matching above

Thealgorithm of Christofides and Serdyukov follows a similar outline but combines the minimum spanning tree with a solution of another problem, minimum-weightperfect matching. This gives a TSP tour which is at most 1.5 times the optimal. It was one of the firstapproximation algorithms, and was in part responsible for drawing attention to approximation algorithms as a practical approach tointractable problems. As a matter of fact, the term "algorithm" was not commonly extended to approximation algorithms until later; the Christofides algorithm was initially referred to as the Christofides heuristic.[10]

This algorithm looks at things differently by using a result from graph theory which helps improve on the lower bound of the TSP which originated from doubling the cost of the minimum spanning tree. Given anEulerian graph, we can find anEulerian tour inO(n){\displaystyle O(n)} time,[6] so if we had an Eulerian graph with cities from a TSP as vertices, then we can easily see that we could use such a method for finding an Eulerian tour to find a TSP solution. By thetriangle inequality, we know that the TSP tour can be no longer than the Eulerian tour, and we therefore have a lower bound for the TSP. Such a method is described below.

  1. Find a minimum spanning tree for the problem.
  2. Create duplicates for every edge to create an Eulerian graph.
  3. Find an Eulerian tour for this graph.
  4. Convert to TSP: if a city is visited twice, then create a shortcut from the city before this in the tour to the one after this.

To improve the lower bound, a better way of creating an Eulerian graph is needed. By the triangle inequality, the best Eulerian graph must have the same cost as the best travelling salesman tour; hence, finding optimal Eulerian graphs is at least as hard as TSP. One way of doing this is by minimum weightmatching using algorithms with a complexity ofO(n3){\displaystyle O(n^{3})}.[6]

Making a graph into an Eulerian graph starts with the minimum spanning tree; all the vertices of odd order must then be made even, so a matching for the odd-degree vertices must be added, which increases the order of every odd-degree vertex by 1.[6] This leaves us with a graph where every vertex is of even order, which is thus Eulerian. Adapting the above method gives the algorithm of Christofides and Serdyukov:

  1. Find a minimum spanning tree for the problem.
  2. Create a matching for the problem with the set of cities of odd order.
  3. Find an Eulerian tour for this graph.
  4. Convert to TSP using shortcuts.

Pairwise exchange

[edit]
An example of a 2-opt iteration

The pairwise exchange or2-opt technique involves iteratively removing two edges and replacing them with two different edges that reconnect the fragments created by edge removal into a new and shorter tour. Similarly, the3-opt technique removes 3 edges and reconnects them to form a shorter tour. These are special cases of thek-opt method. The labelLin–Kernighan is an often heard misnomer for 2-opt; Lin–Kernighan is actually the more generalk-opt method.

For Euclidean instances, 2-opt heuristics give on average solutions that are about 5% better than those yielded by Christofides' algorithm. If we start with an initial solution made with agreedy algorithm, then the average number of moves greatly decreases again and isO(n){\displaystyle O(n)}; however, for random starts, the average number of moves isO(nlog(n)){\displaystyle O(n\log(n))}. While this is a small increase in size, the initial number of moves for small problems is 10 times as big for a random start compared to one made from a greedy heuristic. This is because such 2-opt heuristics exploit 'bad' parts of a solution such as crossings. These types of heuristics are often used withinvehicle routing problem heuristics to re-optimize route solutions.[30]

k-opt heuristic, or Lin–Kernighan heuristics

[edit]

TheLin–Kernighan heuristic is a special case of theV-opt or variable-opt technique. It involves the following steps:

  1. Given a tour, deletek mutually disjoint edges.
  2. Reassemble the remaining fragments into a tour, leaving no disjoint subtours (that is, do not connect a fragment's endpoints together). This in effect simplifies the TSP under consideration into a much simpler problem.
  3. Each fragment endpoint can be connected to2k − 2 other possibilities: of 2k total fragment endpoints available, the two endpoints of the fragment under consideration are disallowed. Such a constrained 2k-city TSP can then be solved with brute-force methods to find the least-cost recombination of the original fragments.

The most popular of thek-opt methods are 3-opt, as introduced by Shen Lin ofBell Labs in 1965. A special case of 3-opt is where the edges are not disjoint (two of the edges are adjacent to one another). In practice, it is often possible to achieve substantial improvement over 2-opt without the combinatorial cost of the general 3-opt by restricting the 3-changes to this special subset where two of the removed edges are adjacent. This so-called two-and-a-half-opt typically falls roughly midway between 2-opt and 3-opt, both in terms of the quality of tours achieved and the time required to achieve those tours.

V-opt heuristic

[edit]

The variable-opt method is related to, and a generalization of, thek-opt method. Whereas thek-opt methods remove a fixed number (k) of edges from the original tour, the variable-opt methods do not fix the size of the edge set to remove. Instead, they grow the set as the search process continues. The best-known method in this family is the Lin–Kernighan method (mentioned above as a misnomer for 2-opt).Shen Lin andBrian Kernighan first published their method in 1972, and it was the most reliable heuristic for solving travelling salesman problems for nearly two decades. More advanced variable-opt methods were developed at Bell Labs in the late 1980s by David Johnson and his research team. These methods (sometimes calledLin–Kernighan–Johnson) build on the Lin–Kernighan method, adding ideas fromtabu search andevolutionary computing. The basic Lin–Kernighan technique gives results that are guaranteed to be at least 3-opt. The Lin–Kernighan–Johnson methods compute a Lin–Kernighan tour, and then perturb the tour by what has been described as a mutation that removes at least four edges and reconnects the tour in a different way, thenV-opting the new tour. The mutation is often enough to move the tour from thelocal minimum identified by Lin–Kernighan.V-opt methods are widely considered the most powerful heuristics for the problem, and are able to address special cases, such as the Hamilton Cycle Problem and other non-metric TSPs that other heuristics fail on. For many years, Lin–Kernighan–Johnson had identified optimal solutions for all TSPs where an optimal solution was known and had identified the best-known solutions for all other TSPs on which the method had been tried.

Randomized improvement

[edit]

OptimizedMarkov chain algorithms which use local searching heuristic sub-algorithms can find a route extremely close to the optimal route for 700 to 800 cities.

TSP is a touchstone for many general heuristics devised for combinatorial optimization such asgenetic algorithms,simulated annealing,tabu search,ant colony optimization,river formation dynamics (seeswarm intelligence), and thecross entropy method.

Constricting Insertion Heuristic

[edit]

This starts with a sub-tour such as theconvex hull and then inserts other vertices.[36]

Ant colony optimization

[edit]
Main article:Ant colony optimization algorithms

Artificial intelligence researcherMarco Dorigo described in 1993 a method of heuristically generating "good solutions" to the TSP using asimulation of an ant colony calledACS (ant colony system).[37] It models behavior observed in real ants to find short paths between food sources and their nest, anemergent behavior resulting from each ant's preference to followtrail pheromones deposited by other ants.

ACS sends out a large number of virtual ant agents to explore many possible routes on the map. Each ant probabilistically chooses the next city to visit based on a heuristic combining the distance to the city and the amount of virtual pheromone deposited on the edge to the city. The ants explore, depositing pheromone on each edge that they cross, until they have all completed a tour. At this point the ant which completed the shortest tour deposits virtual pheromone along its complete tour route (global trail updating). The amount of pheromone deposited is inversely proportional to the tour length: the shorter the tour, the more it deposits.

1) An ant chooses a path among all possible paths and lays a pheromone trail on it. 2) All the ants are travelling on different paths, laying a trail of pheromones proportional to the quality of the solution. 3) Each edge of the best path is more reinforced than others. 4) Evaporation ensures that the bad solutions disappear. The map is a work of Yves Aubry [2].
1) An ant chooses a path among all possible paths and lays a pheromone trail on it. 2) All the ants are travelling on different paths, laying a trail of pheromones proportional to the quality of the solution. 3) Each edge of the best path is more reinforced than others. 4) Evaporation ensures that the bad solutions disappear. The map is a work of Yves Aubry[2].
Ant colony optimization algorithm for a TSP with 7 cities: Red and thick lines in the pheromone map indicate presence of more pheromone

Special cases

[edit]

Metric

[edit]

In themetric TSP, also known asdelta-TSP or Δ-TSP, the intercity distances satisfy thetriangle inequality.

A very natural restriction of the TSP is to require that the distances between cities form ametric to satisfy thetriangle inequality; that is, the direct connection fromA toB is never farther than the route via intermediateC:

dABdAC+dCB{\displaystyle d_{AB}\leq d_{AC}+d_{CB}}.

The edges then build ametric on the set of vertices. When the cities are viewed as points in the plane, many naturaldistance functions are metrics, and so many natural instances of TSP satisfy this constraint.

The following are some examples of metric TSPs for various metrics.

  • In the Euclidean TSP (see below), the distance between two cities is theEuclidean distance between the corresponding points.
  • In the rectilinear TSP, the distance between two cities is the sum of the absolute values of the differences of theirx- andy-coordinates. This metric is often called theManhattan distance or city-block metric.
  • In themaximum metric, the distance between two points is the maximum of the absolute values of differences of theirx- andy-coordinates.

The last two metrics appear, for example, in routing a machine that drills a given set of holes in aprinted circuit board. The Manhattan metric corresponds to a machine that adjusts first one coordinate, and then the other, so the time to move to a new point is the sum of both movements. The maximum metric corresponds to a machine that adjusts both coordinates simultaneously, so the time to move to a new point is the slower of the two movements.

In its definition, the TSP does not allow cities to be visited twice, but many applications do not need this constraint. In such cases, a symmetric, non-metric instance can be reduced to a metric one. This replaces the original graph with a complete graph in which the inter-city distancedAB{\displaystyle d_{AB}} is replaced by theshortest path length betweenA andB in the original graph.

Euclidean

[edit]

For points in theEuclidean plane, the optimal solution to the travelling salesman problem forms asimple polygon through all of the points, apolygonalization of the points.[38] Any non-optimal solution with crossings can be made into a shorter solution without crossings by local optimizations. TheEuclidean distance obeys the triangle inequality, so the Euclidean TSP forms a special case of metric TSP. However, even when the input points have integer coordinates, their distances generally take the form ofsquare roots, and the length of a tour is asum of radicals, making it difficult to perform thesymbolic computation needed to perform exact comparisons of the lengths of different tours.

Like the general TSP, the exact Euclidean TSP is NP-hard, but the issue with sums of radicals is an obstacle to proving that its decision version is in NP, and therefore NP-complete. A discretized version of the problem with distances rounded to integers is NP-complete.[39] With rational coordinates and the actual Euclidean metric, Euclidean TSP is known to be in the Counting Hierarchy,[40] a subclass of PSPACE. With arbitrary real coordinates, Euclidean TSP cannot be in such classes, since there are uncountably many possible inputs. Despite these complications, Euclidean TSP is much easier than the general metric case for approximation.[41] For example, the minimum spanning tree of the graph associated with an instance of the Euclidean TSP is aEuclidean minimum spanning tree, and so can be computed in expectedO(n logn) time forn points (considerably less than the number of edges). This enables the simple 2-approximation algorithm for TSP with triangle inequality above to operate more quickly.

In general, for anyc > 0, whered is the number of dimensions in the Euclidean space, there is a polynomial-time algorithm that finds a tour of length at most (1 + 1/c) times the optimal for geometric instances of TSP in

O(n(logn)O(cd)d1){\displaystyle O{\left(n(\log n)^{O(c{\sqrt {d}})^{d-1}}\right)}}

time; this is called apolynomial-time approximation scheme (PTAS).[42]Sanjeev Arora andJoseph S. B. Mitchell were awarded theGödel Prize in 2010 for their concurrent discovery of a PTAS for the Euclidean TSP.

In practice, simpler heuristics with weaker guarantees continue to be used.

Asymmetric

[edit]

In most cases, the distance between two nodes in the TSP network is the same in both directions. The case where the distance fromA toB is not equal to the distance fromB toA is called asymmetric TSP. A practical application of an asymmetric TSP is route optimization using street-level routing (which is made asymmetric by one-way streets, slip-roads, motorways, etc.).

Thestacker crane problem can be viewed as a special case of the asymmetric TSP. In this problem, the input consists of ordered pairs of points in a metric space, which must be visited consecutively in order by the tour. These pairs of points can be viewed as the nodes of an asymmetric TSP, with asymmetric distances reflecting the combined cost of traveling from the first point of a pair to its second and then from the second point of a pair to the first point of the next pair.

Conversion to symmetric

[edit]

Solving an asymmetric TSP graph can be somewhat complex. The following is a 3×3 matrix containing all possible path weights between the nodesA,B andC. One option is to turn an asymmetric matrix of sizeN into a symmetric matrix of size 2N.[43]

Asymmetric path weights
ABC
A12
B63
C54

To double the size, each of the nodes in the graph is duplicated, creating a secondghost node, linked to the original node with a "ghost" edge of very low (possibly negative) weight, here denoted −w. (Alternatively, the ghost edges have weight 0, and weight w is added to all other edges.) The original 3×3 matrix shown above is visible in the bottom left and the transpose of the original in the top-right. Both copies of the matrix have had their diagonals replaced by the low-cost hop paths, represented by −w. In the new graph, no edge directly links original nodes and no edge directly links ghost nodes.

Symmetric path weights
ABCA′B′C′
Aw65
B1w4
C23w
A′w12
B′6w3
C′54w

The weight −w of the "ghost" edges linking the ghost nodes to the corresponding original nodes must be low enough to ensure that all ghost edges must belong to any optimal symmetric TSP solution on the new graph (w = 0 is not always low enough). As a consequence, in the optimal symmetric tour, each original node appears next to its ghost node (e.g. a possible path isAACCBBA{\displaystyle \scriptstyle {A\to A'\to C\to C'\to B\to B'\to A}}), and by merging the original and ghost nodes again we get an (optimal) solution of the original asymmetric problem (in our example,ACBA{\displaystyle \scriptstyle {A\to C\to B\to A}}).

Analyst's problem

[edit]

There is an analogous problem ingeometric measure theory which asks the following: under what conditions may a subsetE ofEuclidean space be contained in arectifiable curve (that is, when is there a curve with finite length that visits every point inE)? This problem is known as theanalyst's travelling salesman problem.

Path length for random sets of points in a square

[edit]

SupposeX1,,Xn{\displaystyle X_{1},\ldots ,X_{n}} aren{\displaystyle n} independent random variables with uniform distribution in the square[0,1]2{\displaystyle [0,1]^{2}}, and letLn{\displaystyle L_{n}^{\ast }} be the shortest path length (i.e. TSP solution) for this set of points, according to the usualEuclidean distance. It is known[9] that, almost surely,

Lnnβwhen n,{\displaystyle {\frac {L_{n}^{*}}{\sqrt {n}}}\rightarrow \beta \qquad {\text{when }}n\to \infty ,}

whereβ{\displaystyle \beta } is a positive constant that is not known explicitly. SinceLn2n+2{\displaystyle L_{n}^{*}\leq 2{\sqrt {n}}+2} (see below), it follows frombounded convergence theorem thatβ=limnE[Ln]/n{\displaystyle \beta =\lim _{n\to \infty }\mathbb {E} [L_{n}^{*}]/{\sqrt {n}}}, hence lower and upper bounds onβ{\displaystyle \beta } follow from bounds onE[Ln]{\displaystyle \mathbb {E} [L_{n}^{*}]}.

Thealmost-sure limitLnnβ{\displaystyle {\frac {L_{n}^{*}}{\sqrt {n}}}\rightarrow \beta } asn{\displaystyle n\to \infty } may not exist if the independent locationsX1,,Xn{\displaystyle X_{1},\ldots ,X_{n}} are replaced with observations from a stationary ergodic process with uniform marginals.[44]

Upper bound

[edit]

Lower bound

[edit]
E[Ln]12n.{\displaystyle \mathbb {E} [L_{n}^{*}]\geq {\tfrac {1}{2}}{\sqrt {n}}.}
E[Ln](14+38)n=58n,{\displaystyle \mathbb {E} [L_{n}^{*}]\geq {\bigl (}{\tfrac {1}{4}}+{\tfrac {3}{8}}{\bigr )}{\sqrt {n}}={\tfrac {5}{8}}{\sqrt {n}},}
E[Ln](58+195184)n,{\displaystyle \mathbb {E} [L_{n}^{*}]\geq {\bigl (}{\tfrac {5}{8}}+{\tfrac {19}{5184}}{\bigr )}{\sqrt {n}},}
Ln0.7080n+0.522,{\displaystyle L_{n}^{*}\gtrsim 0.7080{\sqrt {n}}+0.522,}

where 0.522 comes from the points near the square boundary which have fewer neighbours, and Christine L. Valenzuela andAntonia J. Jones obtained the following other numerical lower bound:[51]

Ln0.7078n+0.551{\displaystyle L_{n}^{*}\gtrsim 0.7078{\sqrt {n}}+0.551}.

Computational complexity

[edit]

The problem has been shown to beNP-hard (more precisely, it is complete for thecomplexity class FPNP; seefunction problem), and thedecision problem version ("given the costs and a numberx, decide whether there is a round-trip route cheaper thanx") isNP-complete. Thebottleneck travelling salesman problem is also NP-hard. The problem remains NP-hard even for the case when the cities are in the plane withEuclidean distances, as well as in a number of other restrictive cases. Removing the condition of visiting each city "only once" does not remove the NP-hardness, since in the planar case there is an optimal tour that visits each city only once (otherwise, by thetriangle inequality, a shortcut that skips a repeated visit would not increase the tour length).

Complexity of approximation

[edit]

In the general case, finding a shortest travelling salesman tour isNPO-complete.[52] If the distance measure is ametric (and thus symmetric), the problem becomesAPX-complete,[53] andthe algorithm of Christofides and Serdyukov approximates it within 1.5.[54][55][10]

If the distances are restricted to 1 and 2 (but still are a metric), then the approximation ratio becomes 8/7.[56] In the asymmetric case withtriangle inequality, in 2018, a constant factor approximation was developed by Svensson, Tarnawski, and Végh.[57] An algorithm byVera Traub andJens Vygen [de] achieves a performance ratio of22+ε{\displaystyle 22+\varepsilon }.[58] The best known inapproximability bound is 75/74.[59]

The corresponding maximization problem of finding thelongest travelling salesman tour is approximable within 63/38.[60] If the distance function is symmetric, then the longest tour can be approximated within 4/3 by a deterministic algorithm[61] and within(33+ε)/25{\displaystyle (33+\varepsilon )/25} by a randomized algorithm.[62]

Human and animal performance

[edit]

The TSP, in particular theEuclidean variant of the problem, has attracted the attention of researchers incognitive psychology. It has been observed that humans are able to produce near-optimal solutions quickly, in a close-to-linear fashion, with performance that ranges from 1% less efficient, for graphs with 10–20 nodes, to 11% less efficient for graphs with 120 nodes.[63][64] The apparent ease with which humans accurately generate near-optimal solutions to the problem has led researchers to hypothesize that humans use one or more heuristics, with the two most popular theories arguably being the convex-hull hypothesis and the crossing-avoidance heuristic.[65][66][67] However, additional evidence suggests that human performance is quite varied, and individual differences as well as graph geometry appear to affect performance in the task.[68][69][70] Nevertheless, results suggest that computer performance on the TSP may be improved by understanding and emulating the methods used by humans for these problems,[71] and have also led to new insights into the mechanisms of human thought.[72] The first issue of theJournal of Problem Solving was devoted to the topic of human performance on TSP,[73] and a 2011 review listed dozens of papers on the subject.[72]

A 2011 study inanimal cognition titled "Let the Pigeon Drive the Bus," named after the children's bookDon't Let the Pigeon Drive the Bus!, examined spatial cognition in pigeons by studying their flight patterns between multiple feeders in a laboratory in relation to the travelling salesman problem. In the first experiment, pigeons were placed in the corner of a lab room and allowed to fly to nearby feeders containing peas. The researchers found that pigeons largely used proximity to determine which feeder they would select next. In the second experiment, the feeders were arranged in such a way that flying to the nearest feeder at every opportunity would be largely inefficient if the pigeons needed to visit every feeder. The results of the second experiment indicate that pigeons, while still favoring proximity-based solutions, "can plan several steps ahead along the route when the differences in travel costs between efficient and less efficient routes based on proximity become larger."[74] These results are consistent with other experiments done with non-primates, which have proven that some non-primates were able to plan complex travel routes. This suggests non-primates may possess a relatively sophisticated spatial cognitive ability.

Natural computation

[edit]

When presented with a spatial configuration of food sources, theamoeboidPhysarum polycephalum adapts its morphology to create an efficient path between the food sources, which can also be viewed as an approximate solution to TSP.[75]

Benchmarks

[edit]

For benchmarking of TSP algorithms, TSPLIB[76] is a library of sample instances of the TSP and related problems is maintained; see the TSPLIB external reference. Many of them are lists of actual cities and layouts of actualprinted circuits.

Popular culture

[edit]
  • Travelling Salesman, by director Timothy Lanzone, is the story of four mathematicians hired by the U.S. government to solve the most elusive problem in computer-science history:P vs. NP.[77]
  • Solutions to the problem are used by mathematicianRobert A. Bosch in a subgenre called TSP art.[78]

See also

[edit]

Notes

[edit]
  1. ^Labbé, Martine; Laporte, Gilbert; Martín, Inmaculada Rodríguez; González, Juan José Salazar (May 2004). "The Ring Star Problem: Polyhedral analysis and exact algorithm".Networks.43 (3):177–189.doi:10.1002/net.10114.ISSN 0028-3045.
  2. ^See the TSP world tour problem which has already been solved to within 0.05% of the optimal solution.[1]
  3. ^"Der Handlungsreisende – wie er sein soll und was er zu tun hat, um Aufträge zu erhalten und eines glücklichen Erfolgs in seinen Geschäften gewiß zu sein – von einem alten Commis-Voyageur" (The travelling salesman – how he must be and what he should do in order to get commissions and be sure of the happy success in his business – by an oldcommis-voyageur)
  4. ^A discussion of the early work of Hamilton and Kirkman can be found inGraph Theory, 1736–1936 by Biggs, Lloyd, and Wilson (Clarendon Press, 1986).
  5. ^Cited and English translation inSchrijver (2005). Original German: "Wir bezeichnen alsBotenproblem (weil diese Frage in der Praxis von jedem Postboten, übrigens auch von vielen Reisenden zu lösen ist) die Aufgabe, für endlich viele Punkte, deren paarweise Abstände bekannt sind, den kürzesten die Punkte verbindenden Weg zu finden. Dieses Problem ist natürlich stets durch endlich viele Versuche lösbar. Regeln, welche die Anzahl der Versuche unter die Anzahl der Permutationen der gegebenen Punkte herunterdrücken würden, sind nicht bekannt. Die Regel, man solle vom Ausgangspunkt erst zum nächstgelegenen Punkt, dann zu dem diesem nächstgelegenen Punkt gehen usw., liefert im allgemeinen nicht den kürzesten Weg."
  6. ^abcdefghLawler, E. L. (1985).The Travelling Salesman Problem: A Guided Tour of Combinatorial Optimization (Repr. with corrections. ed.). John Wiley & sons.ISBN 978-0-471-90413-7.
  7. ^Robinson, Julia (5 December 1949).On the Hamiltonian game (a traveling salesman problem)(PDF) (Technical report). Santa Monica, CA: The RAND Corporation. RM-303. Retrieved2 May 2020 – via Defense Technical Information Center.
  8. ^A detailed treatment of the connection between Menger and Whitney as well as the growth in the study of TSP can be found inSchrijver (2005).
  9. ^abcBeardwood, Halton & Hammersley (1959).
  10. ^abcvan Bevern, René; Slugina, Viktoriia A. (2020). "A historical note on the 3/2-approximation algorithm for the metric traveling salesman problem".Historia Mathematica.53:118–127.arXiv:2004.02437.doi:10.1016/j.hm.2020.04.003.S2CID 214803097.
  11. ^Klarreich, Erica (30 January 2013)."Computer Scientists Find New Shortcuts for Infamous Traveling Salesman Problem".WIRED. Retrieved14 June 2015.
  12. ^Klarreich, Erica (8 October 2020)."Computer Scientists Break Traveling Salesperson Record".Quanta Magazine. Retrieved13 October 2020.
  13. ^Karlin, Anna R.; Klein, Nathan; Gharan, Shayan Oveis (2021), "A (slightly) improved approximation algorithm for metric TSP", inKhuller, Samir;Williams, Virginia Vassilevska (eds.),STOC '21: 53rd Annual ACM SIGACT Symposium on Theory of Computing, Virtual Event, Italy, June 21-25, 2021, pp. 32–45,arXiv:2007.01409,doi:10.1145/3406325.3451009,ISBN 978-1-4503-8053-9,S2CID 220347561
  14. ^abRego, César; Gamboa, Dorabela; Glover, Fred; Osterman, Colin (2011), "Traveling salesman problem heuristics: leading methods, implementations and latest advances",European Journal of Operational Research,211 (3):427–441,doi:10.1016/j.ejor.2010.09.010,MR 2774420,S2CID 2856898.
  15. ^"How Do You Fix School Bus Routes? Call MIT in Wall street Journal"(PDF).
  16. ^Behzad, Arash; Modarres, Mohammad (2002), "New Efficient Transformation of the Generalized Traveling Salesman Problem into Traveling Salesman Problem",Proceedings of the 15th International Conference of Systems Engineering (Las Vegas)
  17. ^Papadimitriou, C.H.; Steiglitz, K. (1998),Combinatorial optimization: algorithms and complexity, Mineola, NY: Dover, pp.308-309.
  18. ^Tucker, A. W. (1960), "On Directed Graphs and Integer Programs", IBM Mathematical research Project (Princeton University)
  19. ^Dantzig, George B. (1963),Linear Programming and Extensions, Princeton, NJ: PrincetonUP, pp. 545–7,ISBN 0-691-08000-3, sixth printing, 1974.
  20. ^Velednitsky, Mark (2017). "Short combinatorial proof that the DFJ polytope is contained in the MTZ polytope for the Asymmetric Traveling Salesman Problem".Operations Research Letters.45 (4):323–324.arXiv:1805.06997.doi:10.1016/j.orl.2017.04.010.S2CID 6941484.
  21. ^Bektaş, Tolga; Gouveia, Luis (2014). "Requiem for the Miller–Tucker–Zemlin subtour elimination constraints?".European Journal of Operational Research.236 (3):820–832.doi:10.1016/j.ejor.2013.07.038.
  22. ^C. E. Miller, A. W. Tucker, and R. A. Zemlin. 1960. Integer Programming Formulation of Traveling Salesman Problems.J. ACM 7, 4 (Oct. 1960), 326–329. DOI:https://doi.org/10.1145/321043.321046
  23. ^Dantzig, G.; Fulkerson, R.; Johnson, S. (November 1954). "Solution of a Large-Scale Traveling-Salesman Problem".Journal of the Operations Research Society of America.2 (4):393–410.doi:10.1287/opre.2.4.393.
  24. ^Bellman (1960),Bellman (1962),Held & Karp (1962)
  25. ^Woeginger (2003).
  26. ^Ambainis, Andris; Balodis, Kaspars; Iraids, Jānis; Kokainis, Martins; Prūsis, Krišjānis; Vihrovs, Jevgēnijs (2019)."Quantum Speedups for Exponential-Time Dynamic Programming Algorithms".Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms. pp. 1783–1793.doi:10.1137/1.9781611975482.107.ISBN 978-1-61197-548-2.S2CID 49743824.
  27. ^Padberg & Rinaldi (1991).
  28. ^Traveling Salesman Problem - Branch and Bound onYouTube. How to cut unfruitful branches using reduced rows and columns as inHungarian matrix algorithm
  29. ^Applegate, David; Bixby, Robert; Chvátal, Vašek; Cook, William; Helsgaun, Keld (June 2004)."Optimal Tour of Sweden". Retrieved11 November 2020.
  30. ^abJohnson, D. S.; McGeoch, L. A. (1997)."The Traveling Salesman Problem: A Case Study in Local Optimization"(PDF). In Aarts, E. H. L.;Lenstra, J. K. (eds.).Local Search in Combinatorial Optimisation. London: John Wiley and Sons Ltd. pp. 215–310.
  31. ^Gutina, Gregory; Yeob, Anders; Zverovich, Alexey (15 March 2002)."Traveling salesman should not be greedy: domination analysis of greedy-type heuristics for the TSP".Discrete Applied Mathematics.117 (1–3):81–86.doi:10.1016/S0166-218X(01)00195-0.>
  32. ^Zverovitch, Alexei; Zhang, Weixiong; Yeo, Anders; McGeoch, Lyle A.; Gutin, Gregory; Johnson, David S. (2007), "Experimental Analysis of Heuristics for the ATSP",The Traveling Salesman Problem and Its Variations, Combinatorial Optimization, Springer, Boston, MA, pp. 445–487,CiteSeerX 10.1.1.24.2386,doi:10.1007/0-306-48213-4_10,ISBN 978-0-387-44459-8
  33. ^Rosenkrantz, D. J.; Stearns, R. E.; Lewis, P. M. (14–16 October 1974).Approximate algorithms for the traveling salesperson problem. 15th Annual Symposium on Switching and Automata Theory (swat 1974).doi:10.1109/SWAT.1974.4.
  34. ^Ray, S. S.; Bandyopadhyay, S.; Pal, S. K. (2007). "Genetic Operators for Combinatorial Optimization in TSP and Microarray Gene Ordering".Applied Intelligence.26 (3):183–195.CiteSeerX 10.1.1.151.132.doi:10.1007/s10489-006-0018-y.S2CID 8130854.
  35. ^Kahng, A. B.; Reda, S. (2004). "Match Twice and Stitch: A New TSP Tour Construction Heuristic".Operations Research Letters.32 (6):499–509.doi:10.1016/j.orl.2004.04.001.
  36. ^Alatartsev, Sergey; Augustine, Marcus; Ortmeier, Frank (2 June 2013)."Constricting Insertion Heuristic for Traveling Salesman Problem with Neighborhoods"(PDF).Proceedings of the International Conference on Automated Planning and Scheduling.23:2–10.doi:10.1609/icaps.v23i1.13539.ISSN 2334-0843.S2CID 18691261.
  37. ^Dorigo, Marco; Gambardella, Luca Maria (1997). "Ant Colonies for the Traveling Salesman Problem".Biosystems.43 (2):73–81.Bibcode:1997BiSys..43...73D.CiteSeerX 10.1.1.54.7734.doi:10.1016/S0303-2647(97)01708-5.PMID 9231906.S2CID 8243011.
  38. ^Quintas, L. V.; Supnick, Fred (1965). "On some properties of shortest Hamiltonian circuits".The American Mathematical Monthly.72 (9):977–980.doi:10.2307/2313333.JSTOR 2313333.MR 0188872.
  39. ^Papadimitriou (1977).
  40. ^Allender et al. (2007).
  41. ^Larson & Odoni (1981).
  42. ^Arora (1998).
  43. ^Jonker, Roy; Volgenant, Ton (1983). "Transforming asymmetric into symmetric traveling salesman problems".Operations Research Letters.2 (161–163): 1983.doi:10.1016/0167-6377(83)90048-2.
  44. ^Arlotto, Alessandro;Steele, J. Michael (2016), "Beardwood–Halton–Hammersley theorem for stationary ergodic sequences: a counterexample",The Annals of Applied Probability,26 (4):2141–2168,arXiv:1307.0221,doi:10.1214/15-AAP1142,S2CID 8904077
  45. ^Few, L. (1955). "The shortest path and the shortest road through n points".Mathematika.2 (2):141–144.doi:10.1112/s0025579300000784.
  46. ^Fiechter, C.-N. (1994)."A parallel tabu search algorithm for large traveling salesman problems".Disc. Applied Math.51 (3):243–267.doi:10.1016/0166-218X(92)00033-I.
  47. ^Steinerberger (2015).
  48. ^Held, M.; Karp, R.M. (1970). "The Traveling Salesman Problem and Minimum Spanning Trees".Operations Research.18 (6):1138–1162.doi:10.1287/opre.18.6.1138.
  49. ^Goemans, Michel X.;Bertsimas, Dimitris J. (1991). "Probabilistic analysis of the Held and Karp lower bound for the Euclidean traveling salesman problem".Mathematics of Operations Research.16 (1):72–89.doi:10.1287/moor.16.1.72.
  50. ^"error".about.att.com.
  51. ^Christine L. Valenzuela and Antonia J. JonesArchived 25 October 2007 at theWayback Machine
  52. ^Orponen, P.;Mannila, H. (1987). On approximation preserving reductions: Complete problems and robust measures' (Report). Department of Computer Science, University of Helsinki. Technical Report C-1987–28.
  53. ^Papadimitriou & Yannakakis (1993).
  54. ^Christofides (1976).
  55. ^Serdyukov, Anatoliy I. (1978),"О некоторых экстремальных обходах в графах" [On some extremal walks in graphs](PDF),Upravlyaemye Sistemy (in Russian),17:76–79
  56. ^Berman & Karpinski (2006).
  57. ^Svensson, Ola; Tarnawski, Jakub; Végh, László A. (2018)."A constant-factor approximation algorithm for the asymmetric traveling salesman problem"(PDF).Proceedings of the 50th Annual ACM SIGACT Symposium on Theory of Computing. Stoc 2018. Los Angeles, CA, USA: ACM Press. pp. 204–213.doi:10.1145/3188745.3188824.ISBN 978-1-4503-5559-9.S2CID 12391033.
  58. ^Traub, Vera; Vygen, Jens (8 June 2020)."An improved approximation algorithm for ATSP".Proceedings of the 52nd Annual ACM SIGACT Symposium on Theory of Computing. Stoc 2020. Chicago, IL: ACM. pp. 1–13.arXiv:1912.00670.doi:10.1145/3357713.3384233.ISBN 978-1-4503-6979-4.S2CID 208527125.
  59. ^Karpinski, Lampis & Schmied (2015).
  60. ^Kosaraju, Park & Stein (1994).
  61. ^Serdyukov (1984).
  62. ^Hassin & Rubinstein (2000).
  63. ^Macgregor, J. N.; Ormerod, T. (June 1996), "Human performance on the traveling salesman problem",Perception & Psychophysics,58 (4):527–539,doi:10.3758/BF03213088,PMID 8934685.
  64. ^Dry, Matthew; Lee, Michael D.; Vickers, Douglas; Hughes, Peter (2006). "Human Performance on Visually Presented Traveling Salesperson Problems with Varying Numbers of Nodes".The Journal of Problem Solving.1 (1).CiteSeerX 10.1.1.360.9763.doi:10.7771/1932-6246.1004.ISSN 1932-6246.
  65. ^Rooij, Iris Van; Stege, Ulrike; Schactman, Alissa (1 March 2003). "Convex hull and tour crossings in the Euclidean traveling salesperson problem: Implications for human performance studies".Memory & Cognition.31 (2):215–220.CiteSeerX 10.1.1.12.6117.doi:10.3758/bf03194380.ISSN 0090-502X.PMID 12749463.S2CID 18989303.
  66. ^MacGregor, James N.; Chu, Yun (2011)."Human Performance on the Traveling Salesman and Related Problems: A Review".The Journal of Problem Solving.3 (2).doi:10.7771/1932-6246.1090.ISSN 1932-6246.
  67. ^MacGregor, James N.; Chronicle, Edward P.; Ormerod, Thomas C. (1 March 2004)."Convex hull or crossing avoidance? Solution heuristics in the traveling salesperson problem".Memory & Cognition.32 (2):260–270.doi:10.3758/bf03196857.ISSN 0090-502X.PMID 15190718.
  68. ^Vickers, Douglas; Mayo, Therese; Heitmann, Megan; Lee, Michael D; Hughes, Peter (2004). "Intelligence and individual differences in performance on three types of visually presented optimisation problems".Personality and Individual Differences.36 (5):1059–1071.doi:10.1016/s0191-8869(03)00200-9.
  69. ^Kyritsis, Markos; Gulliver, Stephen R.; Feredoes, Eva (12 June 2017). "Acknowledging crossing-avoidance heuristic violations when solving the Euclidean travelling salesperson problem".Psychological Research.82 (5):997–1009.doi:10.1007/s00426-017-0881-7.ISSN 0340-0727.PMID 28608230.S2CID 3959429.
  70. ^Kyritsis, Markos; Blathras, George; Gulliver, Stephen; Varela, Vasiliki-Alexia (11 January 2017)."Sense of direction and conscientiousness as predictors of performance in the Euclidean travelling salesman problem".Heliyon.3 (11): e00461.Bibcode:2017Heliy...300461K.doi:10.1016/j.heliyon.2017.e00461.PMC 5727545.PMID 29264418.
  71. ^Kyritsis, Markos; Gulliver, Stephen R.; Feredoes, Eva; Din, Shahab Ud (December 2018). "Human behaviour in the Euclidean Travelling Salesperson Problem: Computational modelling of heuristics and figural effects".Cognitive Systems Research.52:387–399.doi:10.1016/j.cogsys.2018.07.027.S2CID 53761995.
  72. ^abMacGregor, James N.; Chu, Yun (2011),"Human performance on the traveling salesman and related problems: A review",Journal of Problem Solving,3 (2),doi:10.7771/1932-6246.1090.
  73. ^Journal of Problem Solving 1(1), 2006, retrieved 2014-06-06.
  74. ^Gibson, Brett; Wilkinson, Matthew; Kelly, Debbie (1 May 2012). "Let the pigeon drive the bus: pigeons can plan future routes in a room".Animal Cognition.15 (3):379–391.doi:10.1007/s10071-011-0463-9.ISSN 1435-9456.PMID 21965161.S2CID 14994429.
  75. ^Jones, Jeff; Adamatzky, Andrew (2014),"Computation of the travelling salesman problem by a shrinking blob"(PDF),Natural Computing: 2, 13,arXiv:1303.4969,Bibcode:2013arXiv1303.4969J
  76. ^"TSPLIB".comopt.ifi.uni-heidelberg.de. Retrieved10 October 2020.
  77. ^Geere, Duncan (26 April 2012)."'Travelling Salesman' movie considers the repercussions if P equals NP".Wired UK. Retrieved26 April 2012.
  78. ^When the Mona Lisa is NP-HardBy Evelyn Lamb, Scientific American, 31 April 2015

References

[edit]

Further reading

[edit]

External links

[edit]
Wikimedia Commons has media related toTraveling salesman problem.
Authority control databases: NationalEdit this at Wikidata
Retrieved from "https://en.wikipedia.org/w/index.php?title=Travelling_salesman_problem&oldid=1289716920"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp