Effective Tour Searching for Large TSP Instances Gerold Jäger Martin-Luther-University Halle-Wittenberg (Germany) joint work with Changxing Dong, Paul Molitor, Dirk Richter German Research Foundation Grant Tolerance Based Algorithms for Solving the Traveling Salesman Problem
Overview 1 Introduction Definition Graph Model Importance of TSP
Overview 2 Algorithms for the TSP Exact Algorithms Helsgaun s Heuristic
Overview 3 Description of the Algorithm Experimental Results Work on World-TSP
Introduction Definition A traveling salesman wants to visit a given number of cities. Finally he wants to return to the starting point. This is called a tour through all cities. Each pair of cities receives a cost value for the distance between these cities. The Traveling Salesman Problem (TSP) is to find a tour with minimum costs.
Introduction Graph Model Let G = (V, E) be a graph defined by the set of vertices (cities) V the set of edges (connections) E = V V i.e., an edge is a pair of distinct vertices Let c : E R + 0 be a cost function. Let V = n. Find a tour (v 1, v 2,..., v n, v 1 ) such that the following term is minimized: n 1 c(v n, v 1 ) + c(v i, v i+1 ) i=1
Introduction Importance of TSP Easy to understand. Hard to solve: NP-Hard. Gap between few performance guarantees good practical results Many important applications: public transport tour planning design of microchips genome sequencing
Algorithms for the TSP Exact Algorithms Largest solved example instances Year Research Team # Vertices 1954 Dantzig, Fulkerson, Johnson 49 1971 Held, Karp 64 1975 Camerini, Fratta, Maffioli 100 1977 Grötschel 120 1980 Crowder, Padberg 318 1987 Padberg, Rinaldi 532 1987 Grötschel, Holland 666 1987 Padberg, Rinaldi 2,392 1994 Applegate, Bixby, Chvátal, Cook 7.397 1998 Applegate, Bixby, Chvátal, Cook 13,509 (USA tour) 2001 Applegate, Bixby, Chvátal, Cook 15,112 (D tour) 2004 App., Bixby, Chvátal, Cook, Helsgaun 24,978 (Swe tour) 2006 App., Bixby, Chvátal, Cook, Helsgaun 85,900 The 5 largest instances were solved by Concorde which is based on branch-and-cut.
Algorithms for the TSP Exact Algorithms Shortest tour through 15, 112 cities in Germany
Algorithms for the TSP Helsgaun s Heuristic 1 Start with an arbitrary vertex. 2 In each step go to the nearest non-visited vertex. 3 If all vertices are visited, return to the starting point. 4 Use the resulted tour as starting tour for the next steps. 5 For k n apply a k-opt step, i.e.: Replace tour edges by non-tour edges, such that the edges are still a tour the tour is better than the original one 6 Repeat step 5 as often as possible.
Algorithms for the TSP Helsgaun s Heuristic Example of a 2-OPT step
Algorithms for the TSP Helsgaun s Heuristic Best TSP heuristic: [Helsgaun, 1998, improved: 2007] Main ideas: [Lin, Kernighan, 1971] Optimizations: 1 Choose k small. 2 For each vertex consider only the s best neighboring edges, the so-called candidate system. Helsgaun s main improvement: For each vertex do not consider the s shortest neighboring edges, but the s neighboring edges with a criterion based on the minimum spanning tree. 3 Apply t (nearly) independent runs of the algorithm. The larger the algorithm parameters k, s and t are, the slower, but more effective is Helsgaun s Algorithm.
Description of the Algorithm 1 Using known algorithms, e.g., Helsgaun s Algorithm, find good starting tours. a b c
Such edges are called pseudo backbone edges. Effective Tour Searching for Large TSP Instances Description of the Algorithm 2 Find all common edges in these starting tours. a b c d
Description of the Algorithm 3 Create a new instance by omitting the vertices, which lie on a path of pseudo backbone edges: d e 0011 1111111110000 1111111110000 01 111111111 01 111111111 111111111 111111111 111111111 111111111 111111111 01 01 01 01 01 00000 11111 00000 111 11 00000 1111101 01 00000 1111101 Contract all edges of paths of pseudo backbone edges to one edge. Fix these edges, i.e., these edges are forced to be in the final tour.
Description of the Algorithm 6 Apply Helsgaun s Algorithm to the new instance. e 0011 1111111110000 1111111110000 01 111111111 01 111111111 111111111 111111111 111111111 111111111 111111111 01 01 01 01 01 00000 11111 00000 111 11 00000 1111101 01 00000 1111101 e
Description of the Algorithm 7 Re-contract the tour of the new instance to a tour of the original instance. e f Indeed, the last tour is the optimum one.
Description of the Algorithm Two advantages: 1 Reduction of the set of vertices. 2 Fixing of a part of the edges. Helsgaun s Algorithm can be applied with larger algorithm parameters k, s and t. It is much more effective than applied for the original instance. The algorithm works rather good, if the starting tours are 1 good ones 2 not too similar (as otherwise the search space is restricted too strongly)
Experimental Results Competition: TSP homepage (http://www.tsp.gatech.edu/) Large datasets from practice exist for comparison of exact algorithms and heuristics. 74 unsolved example instances exist: VLSI and national instances For 19 of 74 instances we have set a new record. 10 of 19 records are still up to date.
Experimental Results Our new records Date # Vertices Date # Vertices 24.05.2006 6,880 14.07.2008 28,534 22.10.2006 19,289 14.07.2008 39,603 20.03.2008 17,845 14.07.2008 56,769 28.03.2008 13,584 19.07.2008 104,815 01.04.2008 19,402 21.07.2008 32,892 27.05.2008 38,478 14.08.2008 52,057 23.06.2008 21,215 14.08.2008 238,025 24.06.2008 28,924 10.11.2008 29,514 30.06.2008 34,656 12.12.2008 47,608
Work on World-TSP joint work also with Christian Ernst The most difficult instance of the TSP homepage is the World-TSP with 1, 904, 711 cities. (Ambitious) aim: Computation of a new record World-Tour. Current record World-Tour
Work on World-TSP Problem: Finding many good starting tours is too difficult for the World-TSP. Idea: Combine Pseudo Backbone Contraction Algorithm with Partitioning.
Each vertex is contained in exactly 4 windows, unless it is located near the boundary. Effective Tour Searching for Large TSP Instances Work on World-TSP 1 Compute good tours in overlapping windows. The overlap size is chosen half the width (height) of the window frame.
Work on World-TSP 2 Use edges contained in all tours of 4 overlapping windows as pseudo backbone edges. 3 Apply the Pseudo Backbone Contraction Algorithm.
Work on World-TSP Our current tour: 1 0.1% over the current best tour 2 found in a few days
Work on World-TSP Thanks for your attention!