450 likes | 689 Views
The Traveling Salesman Problem in Theory & Practice. Lecture 14: More on Maximum TSP Problems 29 April 2014 David S. Johnson dstiflerj@gmail.com http:// davidsjohnson.net Seeley Mudd 523, Tuesdays and Fridays. Outline. The Asymmetric Maximum TSP The “Maximum Scatter” TSP
E N D
The Traveling Salesman Problem in Theory & Practice Lecture 14: More on Maximum TSP Problems 29 April 2014 David S. Johnson dstiflerj@gmail.com http://davidsjohnson.net Seeley Mudd 523, Tuesdays and Fridays
Outline • The Asymmetric Maximum TSP • The “Maximum Scatter” TSP • The “Bottleneck” TSP • Outline • Student Presentation by ItaiFeigenbaum
The Asymmetric Max TSP • The standard maximum weight matching yields a (directed) cycle cover with cycles of length 2 possible, so the naive algorithm • Delete one edge from each cycle and patch arbitrarily into a tour • only guarantees a solution that is (1/2)OPT. • An algorithm with an improved (5/8)OPT guarantee was presented by Lewenstein & Sviridenko in a 2003 SIAM J. Discrete Math. paper. • The next step was an algorithm with a (2/3)OPTguarantee, presented by Kaplan, Lewenstein, Shafrir, & Sviridenko in a 2005 J. ACM paper. • Current state-of-the-art: An algorithm with a (3/4)OPT guarantee, claimed in an arXiv posting by KatarazynaPaluchon 15 Jan 2014. • If you are willing to assume the Δ-Inequality (but no polyhedral norm), the current champ is an algorithm with a (35/44)OPT guarantee was presented by Kowalik & Mucha in Algorithmica (2011). (Improving 3/4 to 0.795454..) • (They also have an algorithm with an (7/8)OPTguarantee for the symmetric Max TSP, assuming the Δ-inequality but no polyhedral norm, that went unmentioned last week, and improves on 7/9 without the Δ-inequality.) Non-Triangular Asymmetric History: 0.5000 ➟0.6250 ➟0.6666.. ➟0.75000
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)] Idea: Avoid having 2-cycles in the maximum matching via using “half-edges” and a gadget (also used in the subsequent (3/4)OPT algorithm). tail(i,j) head(i,j) w(i,j)/2 w(i,j)/2 outi inj vi{i,j} vj{i,j} ini outj w(j,i)/2 w(j,i)/2 head(j,i) tail(j,i)
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)] tail(i,j) head(i,j) w(i,j)/2 w(i,j)/2 outi inj vi{i,j} vj{i,j} ini outj w(j,i)/2 w(j,i)/2 head(j,i) tail(j,i) Weight w(i,j):Yields directed edge (i,j) from i to j. Weight 0: No edge between i and j.
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)] tail(i,j) head(i,j) w(i,j)/2 w(i,j)/2 outi inj vi{i,j} vj{i,j} ini outj w(j,i)/2 w(j,i)/2 head(j,i) tail(j,i) Weight w(j,i):Yields directed edge (j,i) from j to i. Weight 0: No edge between i and j.
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)] tail(i,j) head(i,j) w(i,j)/2 w(i,j)/2 outi inj vi{i,j} vj{i,j} ini outj w(j,i)/2 w(j,i)/2 head(j,i) tail(j,i) Weight (w(i,j)+w(j,i))/2: Yields undirected “double-in” edge between i and j.
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)] tail(i,j) head(i,j) w(i,j)/2 w(i,j)/2 outi inj vi{i,j} vj{i,j} ini outj w(j,i)/2 w(j,i)/2 head(j,i) tail(j,i) Weight (w(i,j)+w(j,i))/2: Yields undirected “double-out” edge between i and j.
Getting to a Tour • The maximum weight matching in our constructed half-weigh-edge graph has total edge weight at least that of a maximum weight tour in the original graph. • It also yields a set of edges in our original graph (ignoring directions) that is a cover by cycles of length at least 3. • We will • take two copies of each edge in this cover (with each undirected edge represented by two directed edges in opposite directions*, and with the total weight being at least 2OPT), • construct three sets P1, P2, and P3 of vertex-disjoint directed paths from these copies, and • extend each arbitrarily to a tour. • The largest of these three tours will thus have to be at least (2/3)OPT. • Here are the details: *Note: 2weight{i,j} = 2(weight(i,j)+weight(j,i))/2 = weight(i,j) + weight(j,i)
Case 1: Directed Cycle • Consider a cycle H in which all the edges are directed (and hence must be consistently directed). • Pick two adjacent edges ei,ej from H. • Put {ei,ej} in P1. • Put H – {ei} in P2. • Put H – {ej}in P3. • Note that each edge goes into exactly two of the sets. • Note also that this adds no cycles to any of the Pi since in each case at least one edge is deleted from H. ej ei
Case 2: Cycle containing undirected edges, not all directed edges with same orientation • Consider a cycle H containing at least one undirected edge, and with no consistent direction for all the directed edges it contains. • Note that there must be equal numbers of “double-in” and “double-out” undirected edges, and these must alternate in the cycle, perhaps separated by paths of directed edges (consistently directed). • Put all clockwise directed edges and all undirected edges (converted to clockwise directed edges) into P1. • Put all counter-clockwise directed edges and undirected edges (converted to counter-clockwise directed edges) into P2. • Put all directed edges into P3. in out in out out in out in
Case 3: Cycle containing undirected edges, all directed edges with the same orientation • Consider a cycle H containing at least one undirected edge, and with all the directed edges it contains having the same orientation, say clockwise. • Note that there must be equal numbers of “double-in” and “double-out” undirected edges, which now must come as adjacent pairs. • Pick one undirected out edge eout and one undirected in edge ein. • Direct all the undirected edges in the same orientation (that of the directed edges, if any are present). • Put all edges except eininP1. • Put all edges except eoutin P2. • Put eout and ein into P3, both with their directions reversed. out eout ein in out in
What about non-symmetric unit balls? These yield “quasi-norms” (triangle inequality but no symmetry) and our results carry over, although now the faces do not pair up and we need a tunnel for each face, with a directed edge from ito j having to enter a tunnel from the front and exit from the rear. So we have Theorem [BFJTWW, 2003]: Suppose we are given a polyhedral quasi-norm for Rd, d ≥ 2, whose unit ball has f faces. Then the Maximum TSP for a set of N points in Rd can be solved in time O(N2f-2logN) on a real number RAM. (A polynomial-time algorithm for the special case of R2with a triangle for the unit ball was presented in [Serdyukov, 1995].) A modified version of Serdukov’s “asymptotically optimal” algorithm seems still to apply, although now only with a guarantee of (1 – 1/N)2fOPT(C) This is because we cannot merge cycles for free unless they contain edges that use the same tunnel in the same direction, and you need three cycles sharing a tunnel to guarantee this.
The Maximum Scatter TSP[Arkin, Chiang, Mitchell, Skiena, Yang, SIAM J. Comput. (1990)] • Find the largest D such that there exists a Hamilton cycle with all edges of length D or more. • Applications: • Mobile Bankrobber Problem. • Rivet Sequencing Problem. • X-ray Imaging Sequencing Problem • Solvable by logN calls to a Hamilton Circuit code… • Without the Δ-inequality, no constant-factor approximation algorithm can exist unless P = NP. • With the Δ-inequality, one can find a tour with all edge lengths at least as long as (1/2)OPT(C) in O(N2) time. • Generalization: Find the largest Dfor which there exists a Hamilton cycle such that all cities that are within k steps of each other are at least distance D apart (the “Min-Max k-Neighbor” problem).
The Bottleneck TSP Find the smallest D for which there exists a Hamilton cycle with all edges of length D or less. Applications: • Transportation of perishable goods • Inter-asteroid space delivery service • Etc. Optimization Solvable by logN calls to a Hamilton Circuit code… Or by one call to a Min TSP code that can handle very large edge lengths: • Only the ordering, not the values, of the edge lengths matter. • Let the distinct edge lengths in instance I be d0 < d1< d2 < … < dk. • Let I’ be the modified instance in which we replace these lengths by g0 = 1, g1 = N, g2 = N2, and, in general, gi = Ni. • Then we have OPTBottleneck(I) = di fori =min {h:OPT(I’) ≤ Nh+1}.
The Bottleneck TSP Approximation Without the Δ-inequality, no constant-factor approximation algorithm can exist unless P = NP. With the Δ-inequality, one can find a tour with no edge length longer than 2OPT(C) in O(N2) time. [Doroshko & Sarvanov, 1981 (in Russian)], [Parker & Rardin, 1984 (independently, in English)]. Proof: • Observation 1 -- The maximum edge length in a “bottleneck biconnected spanning subgraph” is a lower bound on OPTBottleneck(I): • This is a bi-connected subgraph with the smallest possible longest edge (“biconnected” ⇔ “connected with no articulation points”). • Computable in time O(N2) since biconnectivity can be tested in linear time using depth first search, and we can do this repeatedly for graphs omitting all edges longer than one of the smallest k edge lengths, k = 1, 2, …, N. • Observation 2 –- The square of a biconnected graph has a Hamilton cycle [Fleischner, 1974], which can be produced in time O(N2)[Lau, PhD Thesis, 1980]. • The “square” G2 of graph G = (V,E) is G, augmented by edges joining the endpoints of each length-2 path in G (if the edge is not already present).
The Bottleneck TSP Biconnected Graph G without a Hamilton circuit. Graph G2, now with a Hamilton circuit.
The Bottleneck TSP • By the Δ-inequality, each added edge in G2 has length no more than the length of the two-edge path it short-circuits, and hence no more than twice the maximum edge length in the original graph. • So the maximum edge length in the Hamilton cycle we construct for G2 is at most 2 times the maximum edge length in G. If Gis a bottleneck biconnectedsubgraph, this is thus at most 2OPTBottleneck(I). QED Theorem: Assuming P ≠ NP, no polynomial-time algorithm can guarantee a solution A(I) ≤ (2-ε)OPTBottleneck(I)for any constant ε > 0. [Doroshko & Sarvanov, 1981 (in Russian)], [Parker & Rardin, 1984]. Biconnected Graph G without a Hamilton circuit. Graph G2, now with a Hamilton circuit.
The Asymmetric Bottleneck TSP Theorem [An, Kleinberg, Shmoys, Proc. APPROX & RANDOM, 2010]: Given an instance of the asymmetric TSP that obeys the triangle inequality, there is a polynomial-time algorithm that guarantees a tour whose maximum edge length is no more than (logN/loglogN)OPTBottleneck(I). Proof uses technology from the analogous result for the standard asymmetric TSP of [Asadpour, Goemans, Madry, Gharan, & Saberi, Proc. SODA, 2010]
Lecture 1: Introduction References, Web Resources, Etc. Definitions Applications
Lecture 1: Introduction Computational Equivalence of Cycle, Path, Symmetric, and Asymmetric Versions World Record TSP solutions and Concorde
Lecture 1: Introduction Metrics and Rounding Conventions Exploiting the Δ-Inequality in Theory and Practice The Held-Karp Bound
Lectures 2-3: NP-Hardness NP-completeness and the Hamilton Circuit Problem for Grid Graphs Hardness of Approximation, the PCP Theorem, MaxSNP, and the TSP
Lectures 3-4: Poly-Time Special Cases Polynomial Time Algorithm for Bounded-Height Rectangular Grid Graphs 2O(√N) Time Algorithm for Planar Graphs Polynomial Time Algorithm for the Gilmore-Gomory Scheduling Problem
Lectures 4-5: Tour Construction Heuristics Upper Bounds, Lower Bounds, Performance in Practice
Lecture 6: Exploiting Geometry K-d Trees Speeding Up Algorithms with K-d Trees Sometimes with Geometric Lemmas Including Empirical Comparisons
Lectures 7-8: Local Optimization DIMACS Challenge Website 2-Opt Tour Data Structures Neighbor Lists
Lectures 7-8: Local Optimization Starting Tours 3-Opt and the Partial Sum Theorem 4-Opt and the Double Bridge Move Lin-Kernighan
Lectures 7-8: Local Optimization PLS-Completeness and the TSP Simulated Annealing Genetic Algorithms Iterated Lin-Kernighan
Lecture 8: ATSP Heuristics Algorithm Descriptions and Results of Testing the Algorithms Using Various Instance Generators, Several Based on Purported Applications.
Lecture 9: Pruned Exhaustive Search Evaluating All Permutations And Greater and Greater Speedups with Each Step With Successive Layers of Pruning, Including Lagrangean Relaxation via p-Values
Lecture 10: Cutting Planes and B & B The Cutting Plane Approach Satisfying the Degree-2 Constraints Heuristics and Exact Algorithms for Finding Violated Subtour Constraints Digression: Computing the HK Bound in Polynomial Time
Lecture 10: Cutting Planes and B & B Comb Inequalites Dantzig, Fulkerson, & Johnson’s Success Other Classes of Cutting Planes Branch & Bound
Lecture 11: Branch & Cut & Concorde Branch & Cut Implementation Issues More Subtour Constraint Heuristics Restricting to Core Edge Sets for LP Solving Shrinking Safe Edges for Cut Finding
Lecture 11: Branch & Cut & Concorde Managing Cuts Solving the LP’s Quickly & Accurately Solving pla85900 (and Random Euclidean Instances) Branching Strategies
Lecture 12: The Random Euclid. Constant The BHH Theorem Early Estimates Standard Deviations of Values and Differences The Toroidal Metric
Lecture 12: The Random Euclid. Constant Experimental Data Convergences Final Estimate Extrapolations
Lecture 12: The Random Euclid. Constant Potential Explanations Small N Anomalies Approximating Planar Euclidean with Other Topologies Results for other Problems
Lecture 13: The Maximum TSP General Approximation Algorithms Polyhedral Norms Approximating the Euclidean Norm Polyhedrally Exact and Asymptotically Optimal Algorithms for Polyhedral Norms
Lecture 14: Asymmetric MaxTSP, etc. Asymmetric Maximum TSP The Maximum Scatter TSP The Bottleneck TSP Course Summary
What should have been covered in more detail? • MihalisYannakakis’s proof that the TSP cannot be described by a polynomial-size symmetric LP, and the recent strengthening of the result to cover asymmetric LPs ? • The (Gödel-Prize-Winning) Arora/Mitchell Approximation Schemes for the Euclidean TSP ? • The details of Helsgaun’s variant on Lin-Kernighan ? • Proof of the Beardwood, Halton, & Hammersley Theorem ? (Your suggestions here…) What should have been covered in less detail?