49
A 5/8 Approximation Algorithm for Maximum Asymmetric TSP Moshe Lewenstein Bar Ilan Univ Maxim Sviridenko IBM Research

A 5/8 Approximation Algorithm for Maximum Asymmetric TSP

  • Upload
    isabel

  • View
    26

  • Download
    0

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 1: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

A 5/8 Approximation Algorithm for Maximum Asymmetric TSP

Moshe Lewenstein Bar Ilan Univ

Maxim Sviridenko IBM Research

Page 2: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Maximum Asymmetric TSP

Input: Directed, weighted ( 0), complete graph

Output: Hamiltonian cycle of maximum weight

a.k.a. Taxicab Ripoff problem

Page 3: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Motivation - Minimum Superstring Problem

Input: string s1, . . . , sk

Output: minimum size string S,

s.t. for each i, si is a substring of S

s1 = abcab s2 = bcabbb s3 = abababcEx:

S = abababcabbb

Page 4: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Motivation - Minimum Superstring Problem

Input: string s1, . . . , sk

Output: minimum size string S,

s.t. for each i, si is a substring of S

s1 = abcab s2 = bcabbb s3 = abababcEx:

S = abababcabbb

Page 5: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Motivation - Minimum Superstring Problem

Input: string s1, . . . , sk

Output: minimum size string S,

s.t. for each i, si is a substring of S

s1 = abcab s2 = bcabbb s3 = abababcEx:

S = abababcabbb

Page 6: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Motivation - Minimum Superstring Problem

Input: string s1, . . . , sk

Output: minimum size string S,

s.t. for each i, si is a substring of S

s1 = abcab s2 = bcabbb s3 = abababcEx:

S = abababcabbbb

Page 7: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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

Overlap graph: si sj

ov(si,sj)

ov(sj,si)... ...

Page 8: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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

Page 9: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Maximum TSP - special cases

Maximum {0,1}-ATSP 7/12: Vishwanathan, 1992 2/3: Blaeser and Siebert, 2001Maximum {0,1}-STSP 5/6: Papadimitriou and Yannakakis, 1993Maximum ATSP with triangle inequality 3/4: Kostochka and Serdyukov, 1985Maximum STSP 2/3: Fisher, Nemhauser and Wolsey, 1979 13/18: Kovalev and Kotov, 1984 3/4: Serdyukov, 1984 25/33: Hassin and Rubinstein, 2000Maximum 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

Page 10: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 1: Maximum Matching

Claim: For graphs G with an even # of vertices:

Max Matching ½ Max TSP.

Pf:

opt

Page 11: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 1: Maximum Matching

Pf:

opt

Claim: For graphs G with an even # of vertices:

Max Matching ½ Max TSP.

Page 12: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 2: Maximum Cycle Cover

A cycle cover : a collection of disjoint cycles.

Maximum Cycle Cover Max TSP.

Page 13: A 5/8 Approximation Algorithm for  Maximum Asymmetric 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.

Page 14: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Path Collections

Path Collection: A subset of edges, where each

connected component is a simple path

108

6

7

9

75

1.5 3 3

2

4 30

2

2.5

01

5

32

Page 15: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Path Collections

Path Collection: A subset of edges, where each

connected component is a simple path

Page 16: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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.

Page 17: A 5/8 Approximation Algorithm for  Maximum Asymmetric 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.

Page 18: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 2: Maximum Cycle Cover

[FNW]: There is a 1/2-approx. algorithm for Max TSP.

10

52

7.5 6

3

411

9 33

15

5 23.4

5

4

127

9

Page 19: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 2: Maximum Cycle Cover

[FNW]: There is a 1/2-approx. algorithm for Max TSP.

10

52

7.5 6

3

411

9 33

15

5 23.4

5

4

127

9

Page 20: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Upper Bound 2: Maximum Cycle Cover

[FNW]: There is a 1/2-approx. algorithm for Max TSP.

10 7.53

411

33

15 3.45 7

at least half of weight left.

1296

Page 21: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

“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

Page 22: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)}

Approximation Factors: [KPS]: 38/63 [B]: 8/13

Page 23: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)}

Approximation Factors: [KPS]: 38/63 [B]: 8/13

w(M) 1/2*w(opt)

w(C) w(opt)

Page 24: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

Page 25: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

Page 26: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

“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

Page 27: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

IP for Cycle Cover

Max wuvxuv

xuv = 1 u V (outdegree constraints)

xuv = 1 v V (indegree constraints)

xuv {0,1}

Euv

Vv

Vu

Page 28: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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}

Euv

Vv

Vu

Page 29: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

Euv

Vv

Vu

Page 30: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Multigraph of LP Solution

Max wuvxuv

xuv = 1 u V

xuv = 1 v V

xuv + xvu 1

0 xuv 1

Euv

Vv

Vu

Let {xuv*} be an LP solution.Define D to be the minimalinteger s.t. Dxuv* is integer(for all uv E).

GD is the multigraph on vertex set V, with edges:

...

wuv

Dxuv* edgesu v

Page 31: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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

Vu

Vu

Vv

Vv

Ee

3. w(GD) = w(e) = D w(LP) D w(opt)

Page 32: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Cycle Covers and Perfect Matchings

Fact: 1. A cycle cover in G a perfect matching in B(G)

Theorem: E(GD) can be partitioned into D cycle covers.

G= (V,E) B(G) V V

... ...u w

u

w

B(GD) can be partitioned into D perfect matchings.

2. B(GD) is a D-regular graph.

Page 33: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Situation

Max wuvxuv

xuv = 1 u V

xuv = 1 v V

xuv + xvu 1

0 xuv 1

Euv

Vv

Vu

Choose integer Ds.t. Dxuv* is integer.

Construct GD on V, with edges:

...u v (Dxuv* edges)Partition GD into D cycle covers

. . .

C1 C2 C3 CD

Page 34: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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.

D

i 1

Page 35: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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

D

i 1

D

i 1

Reason: xuv* + xvu* 1 Dxuv* + Dxvu* D

Page 36: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

D

i 1

D

i 1

Page 37: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

D

i 1

D

i 1

Page 38: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

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

Generalized Path Coloring Lemma

Page 39: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Cycles with Local Back Edges

. . .

G1 G2 G3 GD

Potential Cycles with Local Back Edges

1.

2.

3.

Matching edgeCycle Cov. edge

Page 40: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Two Solutions to Each Problem

1.

2.

3.

Goal: Weight of edges removed 1/2*D*w(M)

Page 41: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Transformation - Problem 1

Claim: If f Gis with two “yellow” edges between u and v then f Gis with no “yellow” edges betw. u and v

. . .

G1 G2 G3 GD

u v

m

u v

m

u v

m

u v

m

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

D

i 1

Page 42: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Transformation - Problem 1

Claim: If f Gis with two “yellow” edges between u and v then f Gis with no “yellow” edges betw. u and v

u v

m

u v

m

u v

m

u v

m

Pair:

u v

m

u v

m

u v

m

u v

Transform:

One m-edge remains for each m-edge removed1/2 of match-weight remains.

Page 43: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Transformation - Problem 1

Problem Pair:

u v

m m

Can’t remove one and charge against other.

Transform:

u v

m

Still only one m-edge removed.

Page 44: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Transformation - Problem 2

w(e) 1/2*w(m)

m

is w(e) 1/2*w(m)?e

w(e) 1/2*w(m)m e

e

Page 45: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Transformation - Problem 3

Delete cheapest matching edge.

Charge removed matching edge against anotherremaining matching edge on same path.

Page 46: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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)

D

i 1

D

i 1

Theorem: There is a 5/8-approx. algo. For Max TSP.

Page 47: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

Graph with Odd # of Vertices - Outline

transform

opt

Page 48: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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

Page 49: A 5/8 Approximation Algorithm for  Maximum Asymmetric TSP

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.