the traveling salesman problem in theory & practice lecture 14: more on maximum tsp problems 29...
TRANSCRIPT
The Traveling Salesman Problem in Theory & Practice
Lecture 14: More on Maximum TSP Problems29 April 2014
David S. Johnson
[email protected]://davidsjohnson.net
Seeley Mudd 523, Tuesdays and Fridays
Outline
1. The Asymmetric Maximum TSP
2. The “Maximum Scatter” TSP
3. The “Bottleneck” TSP
4. Outline
5. Student Presentation by Itai Feigenbaum
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)OPT guarantee, 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 Katarazyna Paluch on 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)OPT guarantee 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).
outi
ini
tail(i,j) head(i,j)
vi{i,j}
head(j,i)
outj
inj
tail(j,i)
vj{i,j}
w(i,j)/2 w(i,j)/2
w(j,i)/2 w(j,i)/2
Getting a (2/3)OPT Guarantee More Simply[Paluch, Elbassioni, & van Zuylen (2012)]
outi
ini
tail(i,j) head(i,j)
vi{i,j}
head(j,i)
outj
inj
tail(j,i)
vj{i,j}
w(i,j)/2 w(i,j)/2
w(j,i)/2 w(j,i)/2
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)]
outi
ini
tail(i,j) head(i,j)
vi{i,j}
head(j,i)
outj
inj
tail(j,i)
vj{i,j}
w(i,j)/2 w(i,j)/2
w(j,i)/2 w(j,i)/2
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)]
outi
ini
tail(i,j) head(i,j)
vi{i,j}
head(j,i)
outj
inj
tail(j,i)
vj{i,j}
w(i,j)/2 w(i,j)/2
w(j,i)/2 w(j,i)/2
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)]
outi
ini
tail(i,j) head(i,j)
vi{i,j}
head(j,i)
outj
inj
tail(j,i)
vj{i,j}
w(i,j)/2 w(i,j)/2
w(j,i)/2 w(j,i)/2
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.
ei
ej
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 ein in P1.
– Put all edges except eout in P2.
– Put eout and ein into P3, both with their directions reversed.
out in out ineout ein
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 i to 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 R2 with 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 D for 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 TSPFind 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 for i = min {h:OPT(I’) ≤ Nh+1}.
The Bottleneck TSP
ApproximationWithout 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 G is a bottleneck biconnected subgraph, 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]
Course Review
References, Web Resources, Etc.
Definitions
Applications
Lecture 1: Introduction
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 the Gilmore-Gomory Scheduling Problem
Polynomial Time Algorithm for Bounded-Height Rectangular Grid
Graphs
2O(√N) Time Algorithm for Planar Graphs
Lectures 4-5: Tour Construction Heuristics
Upper Bounds, Lower Bounds, Performance in Practice
Lecture 6: Exploiting Geometry
K-d Trees
Sometimes with Geometric Lemmas
Speeding Up Algorithms with K-d Trees
Including Empirical Comparisons
Lectures 7-8: Local Optimization
DIMACS Challenge Website
Tour Data Structures
2-Opt
Neighbor Lists
Lectures 7-8: Local Optimization
Starting Tours
4-Opt and the Double Bridge Move
3-Opt and the Partial Sum Theorem
Lin-Kernighan
Lectures 7-8: Local Optimization
PLS-Completeness and the TSP
Genetic Algorithms
Simulated Annealing
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
With Successive Layers of Pruning, Including Lagrangean Relaxation via p-
Values
And Greater and Greater Speedups with Each Step
Lecture 10: Cutting Planes and B & B
The Cutting Plane Approach
Heuristics and Exact Algorithms for Finding Violated Subtour
Constraints
Satisfying the Degree-2 Constraints
Digression: Computing the HK Bound in Polynomial Time
Lecture 10: Cutting Planes and B & B
Comb Inequalites
Other Classes of Cutting Planes
Dantzig, Fulkerson, & Johnson’s Success
Branch & Bound
Lecture 11: Branch & Cut & Concorde
Branch & Cut Implementation Issues
Shrinking Safe Edges for Cut Finding
More Subtour Constraint Heuristics
Restricting to Core Edge Sets for LP Solving
Lecture 11: Branch & Cut & Concorde
Managing Cuts
Branching Strategies
Solving the LP’s Quickly & Accurately
Solving pla85900(and Random Euclidean
Instances)
Lecture 12: The Random Euclid. Constant
The BHH Theorem
The Toroidal Metric
Early Estimates
Standard Deviations of Values and Differences
Lecture 12: The Random Euclid. Constant
Experimental Data
Extrapolations
Convergences
Final Estimate
Lecture 12: The Random Euclid. Constant
Potential Explanations
Results for other Problems
Small N Anomalies
Approximating Planar Euclidean with Other Topologies
Lecture 13: The Maximum TSP
General Approximation Algorithms
Exact and Asymptotically Optimal Algorithms for Polyhedral Norms
Polyhedral Norms
Approximating the Euclidean Norm Polyhedrally
Lecture 14: Asymmetric MaxTSP, etc.
Course Summary
The Maximum Scatter TSPAsymmetric Maximum TSP
The Bottleneck TSP
What should have been covered in more detail?
• Mihalis Yannakakis’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?