Title: A 58 Approximation Algorithm for
1A 5/8 Approximation Algorithm for Maximum
Asymmetric TSP
Moshe Lewenstein Bar Ilan Univ Maxim
Sviridenko IBM Research
2Maximum Asymmetric TSP
Input Directed, weighted ( 0), complete
graph Output Hamiltonian cycle of maximum weight
a.k.a. Taxicab Ripoff problem
3Motivation - 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
4Motivation - 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
5Motivation - 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
6Motivation - 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
7Motivation - 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)
8Maximum 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
Kovalov and Kotov, 1986 38/63 Kosaraju,
Park and Stein, 1994 8/13 Blaeser, 2001 5/8
Lewenstein and Svirdenko, 2002
9Maximum 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
10Upper Bound 1 Maximum Matching
Claim For graphs G with an even of vertices
Max Matching ½ Max TSP.
11Upper Bound 1 Maximum Matching
Claim For graphs G with an even of vertices
Max Matching ½ Max TSP.
Pf
opt
12Upper Bound 2 Maximum Cycle Cover
A cycle cover a collection of disjoint
cycles.
Maximum Cycle Cover Max TSP.
13Upper Bound 2 Maximum Cycle Cover
A cycle cover a collection of disjoint
cycles.
Fact A maximum cycle cover can be found in
polynomial time.
14Path 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
15Path Collections
Path Collection A subset of edges, where each
connected component
is a simple path
16Path Collections and Max TSP
Observation Finding a path collection PC with
weight w(PC) ³ fw(opt)
implies an
f-approximation for Max-TSP.
17Upper 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.
18Upper Bound 2 Maximum Cycle Cover
FNW There is a 1/2-approx. algorithm for Max
TSP.
6
33
10
7.5
9
5
12
7
15
3
3.4
5
4
11
9
2
2
4
5
19Upper Bound 2 Maximum Cycle Cover
FNW There is a 1/2-approx. algorithm for Max
TSP.
6
33
10
7.5
9
5
12
7
15
3
3.4
5
4
11
9
2
2
4
5
20Upper Bound 2 Maximum Cycle Cover
FNW There is a 1/2-approx. algorithm for Max
TSP.
33
6
10
7.5
5
9
7
12
15
3
3.4
11
4
at least half of weight left.
21Wishful 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
22Outline 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. ltE1, E2gt 5. Choose Ei
where w(Ei) maxw(E1), w(E2)
U
Approximation Factors KPS 38/63
B 8/13
23Outline of Algorithms of KPS and B
Assumption input graph G(V,E) has an even of
vertices
w(M) 1/2w(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. ltE1, E2gt 5. Choose Ei
where w(Ei) maxw(E1), w(E2)
w(C) w(opt)
³
U
Approximation Factors KPS 38/63
B 8/13
24Path 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
25Generalized 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
26Wishful 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
27IP for Cycle Cover
Max wuvxuv xuv 1 u
V (outdegree constraints) xuv 1
v V (indegree constraints)
xuv 0,1
28IP 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
29LP 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)
30Multigraph 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
. . .
31Properties 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)
32Cycle 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.
33Situation
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
. . .
34Properties 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.
35Properties 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
36Throw 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/2w(opt) Dw(M) D
1/2w(opt) w(Gi) Dw(M)
w(Ci) D1/2w(opt) Dw(opt)
D3/2w(opt)
37Outline 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/2Dw(M)
Why? (1) w(Gi) 1/2Dw(M)
w(Ci) 1/4Dw(opt)
Dw(opt) D5/4w(opt) (2) There
are 2D path collections. There
is a path collection PC, where
w(PC) (D5/4w(opt))/(2D) 5/8w(opt)
38Tool 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/2Dw(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
39Cycles with Local Back Edges
G1
G2
G3
GD
. . .
Potential Cycles with Local Back Edges 1. 2. 3.
Matching edge
Cycle Cov. edge
40Two Solutions to Each Problem
1. 2. 3.
Goal Weight of edges removed
1/2Dw(M)
41Transformation - 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
2fg D fg D-f
42Transformation - 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.
43Transformation - Problem 1
Problem Pair
m
m
u
v
Cant remove one and charge against other.
Transform
m
u
v
Still only one m-edge removed.
44Transformation - Problem 2
m
e
is w(e) 1/2w(m)?
w(e) 1/2w(m)
w(e) ³ 1/2w(m)
m
e
e
45Transformation - Problem 3
Delete cheapest matching edge.
Charge removed matching edge against
another remaining matching edge on same path.
46Goal 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/2Dw(M).
w(Gi) 1/2Dw(M) w(Ci)
1/4Dw(opt) Dw(opt)
D5/4w(opt) There is a path collection PC
(out of 2D) where w(PC)
(D5/4w(opt))/(2D) 5/8w(opt)
Theorem There is a 5/8-approx. algo. For Max
TSP.
47Graph with Odd of Vertices - Outline
opt
transform
48Non Polynomial D - Outline
Let xuv be the solution to the LP. Define
VxV 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 V2 permutation matrices.
permutation matrix perfect matching in
B(G) cycle cover in G
49Summary
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.