490 likes | 608 Vues
This paper presents an approximation algorithm for the Maximum Asymmetric Traveling Salesman Problem (TSP) in directed, weighted, complete graphs. We explore its relation to the Minimum Superstring Problem, which seeks a minimum-length string that contains multiple input strings as substrings. The study discusses various approximation factors and results, including hardness results and previously studied approximation techniques. Special cases and polynomial time algorithms for maximum matching and cycle covers are also examined, leading to improved approximation strategies for the TSP.
E N D
A 5/8 Approximation Algorithm for Maximum Asymmetric TSP Moshe Lewenstein Bar Ilan Univ Maxim Sviridenko IBM Research
Maximum Asymmetric TSP Input: Directed, weighted ( 0), complete graph Output: Hamiltonian cycle of maximum weight a.k.a. Taxicab Ripoff problem
Motivation - Minimum Superstring Problem Input: string s1, . . . , sk Output: minimum size string S, s.t. for each i, si is a substring of S Ex: s1 = abcab s2 = bcabbb s3 = abababc S = abababcabbb
Motivation - Minimum Superstring Problem Input: string s1, . . . , sk Output: minimum size string S, s.t. for each i, si is a substring of S Ex: s1 = abcab s2 = bcabbb s3 = abababc S = abababcabbb
Motivation - Minimum Superstring Problem Input: string s1, . . . , sk Output: minimum size string S, s.t. for each i, si is a substring of S Ex: s1 = abcab s2 = bcabbb s3 = abababc S = abababcabbb
Motivation - Minimum Superstring Problem Input: string s1, . . . , sk Output: minimum size string S, s.t. for each i, si is a substring of S Ex: s1 = abcab s2 = bcabbb s3 = abababc S = abababcabbbb
Motivation - Minimum Superstring Problem Input: string s1, . . . , sk Output: minimum size string S, s.t. for each i, si is a substring of S [BJJ ‘96] f-approximation for max TSP a (3.5 - 1.5 f)-approx. for min superstring ov(si,sj) Overlap graph: si sj . . . . . . ov(sj,si)
Maximum Asymmetric TSP - Results Max-SNP hard: Papadimitriou and Yanankakis, 1993 319/320 hardness: Engebresten and Karpinski, 2001 Approximations: 1/2: Fisher, Nemhauser and Wolsey, 1979 4/7: Koval’ov and Kotov, 1986 38/63: Kosaraju, Park and Stein, 1994 8/13: Blaeser, 2001 5/8: Lewenstein and Svirdenko, 2002
Maximum TSP - special cases Maximum {0,1}-ATSP 7/12: Vishwanathan, 1992 2/3: Blaeser and Siebert, 2001 Maximum {0,1}-STSP 5/6: Papadimitriou and Yannakakis, 1993 Maximum ATSP with triangle inequality 3/4: Kostochka and Serdyukov, 1985 Maximum STSP 2/3: Fisher, Nemhauser and Wolsey, 1979 13/18: Kovalev and Kotov, 1984 3/4: Serdyukov, 1984 25/33: Hassin and Rubinstein, 2000 Maximum STSP with triangle inequality 5/6: Kostochka and Seryukov, 1985 7/8: Hassin and Rubinstein, 2001 Maximum STSP in geometric spaces PTAS in Euclidian spaces: Seryukov, 1987 PTAS in spaces with Minkowski norm: Serdyukov, 1995 PTAS for more generalized space: Barvinok, 1996 poly time for specialized spaces: Barvinok, Johnson, et. al. 1998
Pf: opt Upper Bound 1: Maximum Matching Claim: For graphs G with an even # of vertices: Max Matching ½ Max TSP.
Upper Bound 1: Maximum Matching Claim: For graphs G with an even # of vertices: Max Matching ½ Max TSP. Pf: opt
Upper Bound 2: Maximum Cycle Cover A cycle cover: a collection of disjoint cycles. Maximum Cycle Cover Max TSP.
Upper Bound 2: Maximum Cycle Cover A cycle cover : a collection of disjoint cycles. Fact: A maximum cycle cover can be found in polynomial time.
Path Collections Path Collection: A subset of edges, where each connected component is a simple path 7 9 1 7 0 5 2 6 2.5 5 3 1.5 3 4 2 3 0 2 3 10 8
Path Collections Path Collection: A subset of edges, where each connected component is a simple path
Path Collections and Max TSP Observation: Finding a path collection PC with weight w(PC) ³ f*w(opt) implies an f-approximation for Max-TSP.
Upper Bound 1: Maximum Matching A maximum matching is a path collection. Corol: For graphs G with an even # of vertices there is a 1/2 approximation for Max TSP.
Upper Bound 2: Maximum Cycle Cover [FNW]: There is a 1/2-approx. algorithm for Max TSP. 6 33 10 7.5 9 5 7 12 15 3 3.4 5 4 11 9 2 2 4 5
Upper Bound 2: Maximum Cycle Cover [FNW]: There is a 1/2-approx. algorithm for Max TSP. 6 33 10 7.5 9 5 7 12 15 3 3.4 5 4 11 9 2 2 4 5
Upper Bound 2: Maximum Cycle Cover [FNW]: There is a 1/2-approx. algorithm for Max TSP. 6 33 10 7.5 9 5 7 12 15 3 3.4 11 4 at least half of weight left.
“Wishful Thinking” Solution 1. Find a “special” maximum cycle cover C in G, where each cycle is of length ³ 3 2. Discard cheapest edge from each cycle, creating path collection 3. Complete to TSP Would yield: A 2/3 approximation factor
Outline of Algorithms of KPS and B Assumption: input graph G=(V,E) has an even # of vertices 1. Find a maximum matching M in G 2. Find a maximum cycle cover C in G 3. Set G’=(V, M C) 4. Discard a well-chosen subset of edges from G’ s.t. G’ can be split into two path collect. <E1, E2> 5. Choose Ei where w(Ei) = max{w(E1), w(E2)} U Approximation Factors: [KPS]: 38/63 [B]: 8/13
Outline of Algorithms of KPS and B Assumption: input graph G=(V,E) has an even # of vertices w(M) 1/2*w(opt) ³ 1. Find a maximum matching M in G 2. Find a maximum cycle cover C in G 3. Set G’=(V, M C) 4. Discard a well-chosen subset of edges from G’ s.t. G’ can be split into two path collect. <E1, E2> 5. Choose Ei where w(Ei) = max{w(E1), w(E2)} U w(C) w(opt) ³ Approximation Factors: [KPS]: 38/63 [B]: 8/13
Path Coloring Lemma Lemma: [KPS] Let G=(V,E) be a graph such that: (1) indegree(v) £ 2 for each v V outdegree(v) £ 2 Totaldegree(v) £ 3 (2) there is no 2-cycle then E can be split into two path collections Note: M C satisfies property (1) U
Generalized Path Coloring Lemma Lemma: [KPS] Let G=(V,E) be a graph such that: (1) indegree(v) £ 2 for each v V outdegree(v) £ 2 Totaldegree(v) £ 3 (2) there is no cycle with a local back edge then E can be split into two path collections Note: M C satisfies property (1) U
“Wishful Thinking” Solution 1. Find a “special” maximum cycle cover C in G, where each cycle is of length ³ 3 2. Discard cheapest edge from each cycle, creating path collection 3. Complete to TSP Would yield: A 2/3 approximation factor
IP for Cycle Cover Max wuvxuv xuv = 1 u V (outdegree constraints) xuv = 1 v V (indegree constraints) xuv {0,1}
IP for Cycle Cover w/o 2-cycles Max wuvxuv xuv = 1 u V (outdegree constraints) xuv = 1 v V (indegree constraints) xuv + xvu 1 (2-cycle constraints) xuv {0,1}
LP for Cycle Cover w/o 2-cycles Max wuvxuv xuv = 1 u V (outdegree constraints) xuv = 1 v V (indegree constraints) xuv + xvu 1 (2-cycle constraints) 0 xuv 1 - Relaxation Note: w(LP) w(opt)
Multigraph of LP Solution Max wuvxuv xuv = 1 u V xuv = 1 v V xuv + xvu 1 0 xuv 1 Let {xuv*} be an LP solution. Define D to be the minimal integer s.t. Dxuv* is integer (for all uv E). GD is the multigraph on vertex set V, with edges: wuv u v Dxuv* edges . . .
Properties of GD Def: GD is the multigraph on vertex set V, with edges: u v (Dxuv* edges) . . . 1. indegree(v) = Dxuv* = D xuv* = D 2. outdegree(u) = Dxuv* = D xuv* = D 3. w(GD) = w(e) = D w(LP) D w(opt)
Cycle Covers and Perfect Matchings Theorem: E(GD) can be partitioned into D cycle covers. V V G= (V,E) B(G) u w u w . . . . . . Fact: 1. A cycle cover in G a perfect matching in B(G) 2. B(GD) is a D-regular graph. B(GD) can be partitioned into D perfect matchings.
Situation Choose integer D s.t. Dxuv* is integer. Max wuvxuv xuv = 1 u V xuv = 1 v V xuv + xvu 1 0 xuv 1 Construct GD on V, with edges: u v (Dxuv* edges) Partition GD into D cycle covers . . . C1 C2 C3 CD . . .
Properties of Cycle Cover Collection C1 C2 C3 CD . . . 1. w(Ci) = w(GD) D w(opt) 2. each Ci is a cycle cover of original G.
Properties of Cycle Cover Collection C1 C2 C3 CD . . . 1. w(Ci) = w(GD) D w(opt) 2. each Ci is a cycle cover of original G. 3. u,v V, # of edges (u,v) and (v,u) in Ci D Reason: xuv* + xvu* 1 Dxuv* + Dxvu* D
Throw in a Matching G1 G2 G3 GD . . . Next step: Find a maximum matching M on G and add M to each Ci - Gi = M Ci Note: w(M) 1/2*w(opt) D*w(M) D* 1/2*w(opt) w(Gi) = D*w(M) + w(Ci) D*1/2*w(opt) + D*w(opt) = D*3/2*w(opt)
Outline of Goal Goal: Remove edges from the Gis so that: (1) each Gi can be partitioned into 2 path collections (2) weight of edges removed 1/2*D*w(M) Why? (1) w(Gi) 1/2*D*w(M) + w(Ci) 1/4*D*w(opt) + D*w(opt) = D*5/4*w(opt) (2) There are 2D path collections. There is a path collection PC, where w(PC) (D*5/4*w(opt))/(2D) = 5/8*w(opt)
Tool to Achieve Goal Goal: Remove edges from the Gis so that: (1) each Gi can be partitioned into 2 path collections (2) weight of edges removed 1/2*D*w(M) Generalized Path Coloring Lemma Let G=(V,E) be a multigraph such that: (1) indegree(v) £ 2 for each v V outdegree(v) £ 2 Totdegree(v) £ 3 (2) there is no cycle with a local back edge then E can be split into two path collections
Cycles with Local Back Edges G1 G2 G3 GD . . . Potential Cycles with Local Back Edges 1. 2. 3. Matching edge Cycle Cov. edge
Two Solutions to Each Problem 1. 2. 3. Goal: Weight of edges removed £ 1/2*D*w(M)
m u v Transformation - Problem 1 G1 G2 G3 GD . . . m m m u v u v u v Claim: If f Gis with two “yellow” edges between u and v then f Gis with no “yellow” edges betw. u and v Pf: u, v V, # of edges (u,v) and (v,u) in Ci£ D f with 2 edges, g with 1 2f+g £ D f+g £ D-f
m m u u v v Transformation - Problem 1 m m m u v u v u v Claim: If f Gis with two “yellow” edges between u and v then f Gis with no “yellow” edges betw. u and v m m Pair: Transform: u v u v u v One m-edge remains for each m-edge removed 1/2 of match-weight remains.
Transformation - Problem 1 Problem Pair: m m u v Can’t remove one and charge against other. Transform: m u v Still only one m-edge removed.
Transformation - Problem 2 m e is w(e) £ 1/2*w(m)? w(e) £ 1/2*w(m) w(e) ³ 1/2*w(m) m e e
Transformation - Problem 3 Delete cheapest matching edge. Charge removed matching edge against another remaining matching edge on same path.
Goal Achieved Goal: Remove edges from the Gis so that: (1) Each Gi can be partitioned into 2 path collections (follows from Generalized Path Coloring Lemma). (2) weight of edges removed 1/2*D*w(M). w(Gi) 1/2*D*w(M) + w(Ci) 1/4*D*w(opt) + D*w(opt) = D*5/4*w(opt) There is a path collection PC (out of 2D) where: w(PC) (D*5/4*w(opt))/(2D) = 5/8*w(opt) Theorem: There is a 5/8-approx. algo. For Max TSP.
Graph with Odd # of Vertices - Outline opt transform
Non Polynomial D - Outline Let {xuv*} be the solution to the LP. Define |V|x|V| matrix M, where entry (u,v) is xuv* Claim: M is doubly stochastic. Fact: Any doubly stochastic matrix can be represented as the convex combination of at most |V|2 permutation matrices. permutation matrix perfect matching in B(G) cycle cover in G
Summary 1. Improve the 5/8 approx. factor for Max TSP 2. Can we come up with stronger path coloring claims? 3. There is an example showing the integrality gap of the LP to be at least 2/3. Is this tight? 4. Is there a better approximation for the Max TSP for the Shortest Common Superstring problem.