The Salesman`s Improved Paths: 3/2+1/34 Integrality Gap and

The Salesman's Improved Paths:
3
1
+
Integrality Gap and
2
34
Approximation Ratio
András Sebล‘ and Anke van Zuylen
s-t Path TSP
Given:
vertex set ๐‘‰, distance metric c: ๐‘‰ × ๐‘‰ โ†’ โ„šโ‰ฅ0 , ๐‘ , ๐‘ก โˆˆ
๐‘‰
Find:
shortest path from ๐‘  to ๐‘ก that visits every vertex in ๐‘‰.
Why does Christofidesโ€™s algorithm not directly give a
3/2-approximation?
Christofides for s-t path TSP
โ€ข Find a minimum spanning tree ๐‘†.
โ€ข Add a ๐‘‡๐‘†-join ๐ฝ, where ๐‘‡๐‘† is the set of vertices
with the wrong degree parity in ๐‘†
โ€“ ๐‘ , ๐‘ก โˆˆ ๐‘‡๐‘† if ๐‘ , ๐‘ก has even degree in ๐‘†
โ€“ ๐‘ฃ โˆˆ ๐‘‡๐‘† if ๐‘ฃ โˆˆ ๐‘‰\{๐‘ , ๐‘ก} has odd degree in ๐‘†
Analysis:
โ€ข ๐‘ ๐‘† โ‰ค ๐‘‚๐‘ƒ๐‘‡
โ€ข ๐‘ ๐ฝ โ‰ค
1
๐‘‚๐‘ƒ๐‘‡
2
Does not hold for s-t
path TSP
LP based analysis
Feasible region is a
subset of the
spanning tree
polytope ๏ƒž ๐‘ ๐‘† โ‰ค
๐‘‚๐‘ƒ๐‘‡๐ฟ๐‘ƒ
Subtour elimination LP
Min ๐‘๐‘‡๐‘ฅ
s.t. ๐‘ฅ ๐›ฟ ๐‘ˆ โ‰ฅ 2, for all ๐‘ˆ, ๐‘ˆ โˆฉ {๐‘ , ๐‘ก} even
๐‘ฅ ๐›ฟ ๐‘ˆ โ‰ฅ 1, for all ๐‘ˆ, ๐‘ˆ โˆฉ {๐‘ , ๐‘ก} = 1
0 โ‰ค ๐‘ฅ ๐‘’ โ‰ค 1, for all ๐‘’
๐‘‡๐‘†-join polyhedron
Min ๐‘๐‘‡๐‘ฆ
s.t. ๐‘ฆ ๐›ฟ ๐‘ˆ โ‰ฅ 2, for all ๐‘ˆ, ๐‘ˆ โˆฉ ๐‘‡๐‘† odd
๐‘ฆ ๐‘’ โ‰ฅ 0, for all ๐‘’
โˆ—
๐‘ฅ /2 will only potentially
violate constraints for ๐‘ˆ
such that ๐‘ˆ โˆฉ {๐‘ , ๐‘ก} = 1,
and
|๐‘ˆ โˆฉ ๐‘‡๐‘†| = odd
(i.e., if ๐‘บ has an even
number of edges in ๐œน(๐‘ผ))
Conclusion: no 3/2 becauseโ€ฆ
โˆ—
๐‘ฅ /2 will violate the ๐‘‡๐‘†-join constraints for ๐‘ -๐‘ก
cuts ๐‘„ such that
โ€ข ๐‘† has an even number of edges in ๐‘„, and
โ€ข ๐‘„ is โ€œnarrowโ€: ๐‘ฅ โˆ— ๐‘„ < 2
Will show next: Simple proof of 8/5 ratio [Sebล‘
โ€™13] for โ€œBest-of-Many-Christofidesโ€ (BOMC)
BOMC
[An, Kleinberg, Shmoysโ€™12]
S denotes also the incidence
vector of the edge set S
Randomized Algorithm:
โ€ข Let ๐‘ฅ โˆ— be an optimal solution to the subtour
elimination LP.
โ€ข Express ๐‘ฅ โˆ— as a convex combination of spanning
trees: ๐‘ฅ โˆ— = ๐‘† ๐œ†๐‘† ๐‘†
โ€ข Let ๐’ฎ be a random spanning tree, ๐‘ƒ ๐’ฎ = ๐‘† = ๐œ†๐‘†
โ€ข Add a ๐‘‡๐’ฎ -join ๐’ฅ๐’ฎ
BOMC: Derandomize this algorithm (by iterating over
all trees with ๐œ†๐‘† > 0) and output the cheapest solution
Bounding ๐”ผ[๐‘ ๐’ฅ๐’ฎ ]
โ€ข Let ๐’ซ๐‘ ๐‘ก be the (incidence vector of the) ๐‘  โˆ’ ๐‘ก
path in ๐’ฎ, and ๐‘โˆ— = ๐”ผ ๐’ซ๐‘ ๐‘ก
โ€ข Then, ๐’ฎ\๐’ซ๐‘ ๐‘ก is a ๐‘‡๐’ฎ -join, so
๐”ผ ๐‘ ๐’ฅ๐’ฎ โ‰ค ๐”ผ ๐’ฎ\๐’ซ๐‘ ๐‘ก = ๐‘(๐‘ฅ โˆ— ) โˆ’ ๐‘(๐‘โˆ— )
โ€ข Next, we will use ๐‘โˆ— (in two ways) to complete
๐‘ฅ โˆ— 2 to a (fractional) ๐‘‡๐’ฎ -join
โˆ—
Completing ๐‘ฅ 2 to a ๐‘‡๐‘†-join
โ€ข Option 1: โ€œOne Size Fits Allโ€
๐‘ฅโˆ—
2
+
๐‘โˆ—
2
is in the T-join polyhedron for any T of even size
โ€ข Option 2: โ€œTailored Completionโ€
โ€ข Natural way to assign ๐‘โˆ— to s-t cuts ๐‘„:
๐‘๐‘„ ๐‘’ = ๐‘ƒ(๐’ฎ โˆฉ ๐‘„ = {๐‘’})
โ€ข Need to complete only on narrow cuts ๐‘„ such that |๐‘† โˆฉ ๐‘„|
even: ๐‘ƒ(|๐’ฎ โˆฉ ๐‘„| even)โ‰ค ๐‘ƒ ๐’ฎ โˆฉ ๐‘„ โ‰ฅ 2 โ‰ค ๐‘ฅ โˆ— ๐‘„ โˆ’ 1
โ€ข Note that this implies
๐‘๐‘„ ๐‘’ = ๐‘ƒ ๐’ฎ โˆฉ ๐‘„ = 1 โ‰ฅ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
๐‘’โˆˆ๐‘„
So
๐‘ฅโˆ—
2
๐‘๐‘„
+ 2
is at least 1 on ๐‘„
โˆ—
Completing ๐‘ฅ 2 to a ๐‘‡๐‘†-join
โ€ข Option 1: โ€œOne Size Fits Allโ€
๐”ผ ๐’ฅ๐’ฎ
๐‘ฅโˆ— 1 โˆ—
โ‰ค + ๐‘
2 2
Combine the two
options by replacing
this ½ by ๐›พ
โ€ข Option 2: โ€œTailored Completionโ€
๐‘ฅโˆ— 1
โˆ— Q โˆ’ 1)
๐‘„
๐”ผ ๐’ฅ๐’ฎ โ‰ค +
(๐‘ฅ
2 2 ๐‘„๐‘
P(|๐‘„ โˆฉ ๐’ฎ| even)
The parity correction vector
โ€ข โ€œBasic Parity Correctionโ€
๐‘ฅโˆ—
+ ๐›พ๐‘โˆ—
2
Now, optimize over ๐›พ
1
โ†’ ๐›พ= .
8
1
If ๐›พ = 8 this multiplier is
โ€ข โ€œParity Completionโ€
1
at
most
for any ๐‘„
โˆ—
8
๐‘ฅ ๐‘„
1โˆ’
โˆ’๐›พ
2
โˆ—
๐‘„
(๐‘ฅ
Q โˆ’ 1)
๐‘„๐‘
โˆ—
2 โˆ’ ๐‘ฅ (๐‘„)
pQ Q = P ๐‘„ โˆฉ ๐’ฎ = 1 โ‰ฅ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
P(|๐‘„ โˆฉ ๐’ฎ| even)
Bounding ๐”ผ[๐‘ ๐’ฅ๐’ฎ ]
โ€ข Already had: ๐’ฎ\๐’ซ๐‘ ๐‘ก is a ๐‘‡๐’ฎ -join, so
๐”ผ ๐‘ ๐’ฅ๐’ฎ โ‰ค ๐”ผ ๐‘ ๐’ฎ\๐’ซ๐‘ ๐‘ก = ๐‘(๐‘ฅ โˆ— ) โˆ’ ๐‘(๐‘โˆ— )
โ€ข Now, we also have
๐”ผ ๐‘ ๐’ฅ๐’ฎ
๐‘ฅโˆ— 1 โˆ— 1 โˆ—
โ‰ค ๐‘( + ๐‘ + ๐‘ )
2 8
8
Minimum of these two is at most 3/5๐‘(๐‘ฅ โˆ— )
๏ƒž ๐”ผ ๐‘ ๐’ฎ + ๐‘ ๐’ฅ๐’ฎ โ‰ค 8/5๐‘(๐‘ฅ โˆ— )
How to improve? Observations:
๐‘ฅโˆ—
2
โ€ข Even when ๐’ฎ โˆฉ ๐‘„ = 1, we โ€œpayโ€ + ๐›พ๐‘โˆ— for
parity correction across ๐‘„
โ€ข Parity completion uses
๐‘๐‘„ ๐‘’ = ๐‘ƒ(๐’ฎ โˆฉ ๐‘„ = {๐‘’})
Idea:
โ€ข Delete ๐‘’ from ๐’ฎ if ๐’ฎ โˆฉ ๐‘„ = {๐‘’} for a narrow
cut ๐‘„ to โ€œsaveโ€ for later
๐‘’ is a lonely edge (in ๐‘† in ๐‘„) if ๐‘† โˆฉ ๐‘„ = {๐‘’} and
๐‘ฅโˆ— ๐‘„ < 2
Best-of-Many With Deletion
โ€ข Let ๐‘ฅ โˆ— be an optimal solution to the subtour
elimination LP.
โ€ข Express ๐‘ฅ โˆ— as a convex combination of
spanning trees: ๐‘ฅ โˆ— = ๐‘† ๐œ†๐‘† ๐‘†
โ€ข Let ๐’ฎ be a random spanning tree, ๐‘ƒ ๐’ฎ = ๐‘† =
๐œ†๐‘†
โ€ข Let โ„ฑ(๐’ฎ) be the forest after deleting the
lonely edges from ๐’ฎ
โ€ข Add a ๐‘‡โ„ฑ(๐’ฎ) -join ๐’ฅโ„ฑ(๐’ฎ)
Game Plan for the Analysis
โ€ข Bound ๐’ฅโ„ฑ(๐’ฎ)
โ€ข Note that โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ) may not be connected
โ€“ Find the culprit (โ€œbadโ€ edges in ๐’ฅโ„ฑ(๐’ฎ) )
โ€“ Bound the probability of bad edges by choosing the
convex combination that defines ๐’ฎ carefully
โ€ข Bound the cost of reconnecting โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ)
with a doubled spanning tree
Bounding ๐’ฅโ„ฑ(๐’ฎ)
โ€ข Basic Parity Correction
๐‘ฅโˆ—
+ ๐›พ๐‘โˆ—
2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ โ‰ฅ 2, even
๐‘ฅโˆ— ๐‘„
1โˆ’
โˆ’๐›พ
2
๐‘๐‘„ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
๐‘„:|โ„ฑ(๐’ฎ)โˆฉ๐‘„|โ‰ฅ2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ = 0
๐‘ฅโˆ— ๐‘„
๐œ’(๐’ฎโˆฉ๐‘„) 1 โˆ’
โˆ’๐›พ
2
๐‘„: โ„ฑ ๐’ฎ โˆฉ๐‘„ =0
Bounding ๐”ผ[๐’ฅโ„ฑ(๐’ฎ) ]
โ€ข Basic Parity Correction
๐‘ฅโˆ—
+ ๐›พ๐‘โˆ—
2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ โ‰ฅ 2, even
๐‘ฅโˆ— ๐‘„
1โˆ’
โˆ’๐›พ
2
๐‘ฅ โˆ— ๐‘„ โˆ’ 1 ๐‘๐‘„ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
๐‘„ ๐‘„:|โ„ฑ(๐’ฎ)โˆฉ๐‘„|โ‰ฅ2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ โ‰ฅ 0
โˆ—
๐‘ฅ
๐‘„
๐‘„
๐œ’(๐’ฎ โˆฉ๐‘๐‘„) 1 โˆ’
โˆ’๐›พ
2
๐‘„
๐‘„:|โ„ฑ(๐’ฎ)โˆฉ๐‘„|โ‰ฅ2
Problem: โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ) may not be
connected
Dashed: lonely edges removed from ๐‘†
Red: ๐‘‡๐น(๐‘†) -join
โ€ข Bad edge: edge crossing more than one โ€œlonelyโ€
cut
โ€ข Can we prevent that the ๐‘‡๐น(๐‘†) -join has bad
edges?
May contribute
bad edges
Bounding ๐’ฅโ„ฑ(๐’ฎ)
โ€ข Basic Parity Correction
๐‘ฅโˆ—
+ ๐›พ๐‘โˆ—
2
Contribute no bad
edges
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ โ‰ฅ 2, even
๐‘ฅโˆ— ๐‘„
1โˆ’
โˆ’๐›พ
2
๐‘๐‘„ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
๐‘„:|โ„ฑ(๐’ฎ)โˆฉ๐‘„|โ‰ฅ2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ = 0
๐‘ฅโˆ— ๐‘„
๐œ’(๐’ฎโˆฉ๐‘„) 1 โˆ’
โˆ’๐›พ
2
๐‘„: โ„ฑ ๐’ฎ โˆฉ๐‘„ =0
Bounding ๐’ฅโ„ฑ(๐’ฎ)
โ€ข Basic Parity Correction
๐‘ฅโˆ—
+ ๐›พ๐‘โˆ—
2
How about ๐‘๐‘„ ?
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ โ‰ฅ 2, even
๐‘ฅโˆ— ๐‘„
1โˆ’
โˆ’๐›พ
2
๐‘๐‘„ 2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
๐‘„:|โ„ฑ(๐’ฎ)โˆฉ๐‘„|โ‰ฅ2
โ€ข Parity Completion for ๐‘„ s.t. โ„ฑ(๐’ฎ) โˆฉ ๐‘„ = 0
๐‘ฅโˆ— ๐‘„
๐œ’(๐’ฎโˆฉ๐‘„) 1 โˆ’
โˆ’๐›พ
2
๐‘„: โ„ฑ ๐’ฎ โˆฉ๐‘„ =0
No bad edges through parity
completion
In general, ๐‘๐‘„ may contain bad edges, but if we
โ€“ choose the convex combination of ๐‘ฅ โˆ— carefully,
and
โ€“ slightly redefine the notion of โ€œlonely edgesโ€ and
๐‘๐‘„ ,
โ€ฆ we can make sure that parity completion does
not contribute bad edges
Layered Convex Combination
Let ๐‘ฅ โˆ— = ๐‘† ๐œ†๐‘† ๐‘†, and for each ๐‘†, let ๐’ฌ ๐‘† โІ {๐‘’: ๐‘† โˆฉ ๐‘„ =
{๐‘’} for some narrow cut ๐‘„}.
๐’ฌ ๐‘† = narrow cuts that
contain the lonely edges
This is a layered convex combination if
1. For any ๐‘† such that ๐œ†๐‘† > 0, and narrow cuts ๐‘„, ๐‘„ โ€ฒ :
if ๐‘„ โˆˆ ๐’ฌ ๐‘† and ๐‘ฅ โˆ— ๐‘„ โ€ฒ โ‰ค ๐‘ฅ โˆ— ๐‘„ then also Qโ€ฒ โˆˆ ๐’ฌ ๐‘† .
2. The ๐œ†-weight of trees ๐‘† such that ๐‘„ โˆˆ ๐’ฌ ๐‘† is at least
2 โˆ’ ๐‘ฅ โˆ— (๐‘„) for every narrow cut ๐‘„.
๐‘„
Ensures that ๐‘ (๐‘’) = ๐‘ƒ(๐’ฎ โˆฉ
๐‘„ = {๐‘’}, ๐‘„ โˆˆ ๐’ฌ(๐’ฎ)) satisfies
the properties we used of
the original ๐‘๐‘„
๐‘„
๐‘ contributes no bad edges
โ€ข If ๐‘๐‘„ contains a bad edge ๐‘’ for ๐น(๐‘†), then ๐‘’ โˆˆ ๐‘„โ€ฒ for some
๐‘„ โ€ฒ โˆˆ ๐’ฌ(๐‘†).
โ€ข If ๐‘๐‘„ is used for our ๐‘‡๐น(๐‘†) -join, then ๐‘„ โˆฉ ๐น ๐‘† โ‰ฅ 2, even,
so ๐‘„ โˆ‰ ๐’ฌ(๐‘†).
By property 1: ๐‘ฅ โˆ— ๐‘„ > ๐‘ฅ โˆ— (๐‘„โ€ฒ).
โ€ข ๐‘๐‘„ ๐‘’ > 0, there exists ๐‘†โ€ฒ with ๐œ† ๐‘†โ€ฒ > 0 such that ๐‘† โ€ฒ โˆฉ ๐‘„ =
{๐‘’}, ๐‘„ โˆˆ ๐’ฌ(๐‘† โ€ฒ ).
โ€ข But since ๐‘’ โˆˆ ๐‘„ โ€ฒ , then ๐‘„ โ€ฒ โˆ‰ ๐’ฌ ๐‘† โ€ฒ .
By property 1: ๐‘ฅ โˆ— ๐‘„โ€ฒ > ๐‘ฅ โˆ— (๐‘„).
Contradiction.
Layered Convex Combination
โ€ข First introduced by [Gottschalk and Vygen,
โ€˜15] and used in analysis of BOMC
โ€ข Proof of existence in [GV15], but no
polynomial time algorithm
โ€ข We show: layered convex combination can be
found in strongly polynomial time using
Edmondโ€™s matroid partition algorithm
Game Plan for the Analysis
๏ƒผ Bound ๐’ฅโ„ฑ(๐’ฎ)
๏ƒผ Note that โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ) may not be connected
๏ƒผFind the culprit (โ€œbadโ€ edges in ๐’ฅโ„ฑ(๐’ฎ) )
๏ƒผBound the probability of bad edges by choosing the
convex combination that defines ๐’ฎ carefully
(only
๐‘ฅโˆ—
2
part of ๐’ฅโ„ฑ(๐’ฎ) contributes bad edges)
โ€ข Bound the cost of reconnecting โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ)
with a doubled spanning tree
Reconnection Bound
Dashed: lonely edges removed from ๐‘†
Red: ๐‘‡๐น(๐‘†) -join (assume all come from
Let ๐’ฅ๐น(๐‘†) be a random ๐‘‡๐น(๐‘†) -join (with distribution given by the fractional
solution of our analysis).
Divide ๐’ฅ๐น(๐‘†) into bad edges (coming from
edges (all other edges).
๐‘ฅโˆ—
2
part of the solution) and good
All but
one!
For each bad edge ๐‘’ in ๐’ฅ๐น(๐‘†) , put back the lonely edges (doubled) for all the
lonely cuts that contain ๐‘’.
For lonely cut ๐‘„, the expected number of copies we put back of its lonely
edge is ๐‘ฅ โˆ— (๐‘„).
๐‘ฅโˆ— ๐‘„ โˆ’ 1
๐‘ฅโˆ—
)
2
Reduce Reconnection Bound by 1 per
Cut: Transportation Problem
Edges ๐‘’, supply ๐‘ฅ โˆ— (๐‘’)
Lonely cuts ๐‘„, demand 1
๐‘„
๐‘’
Solution exists iff for any subset ๐’ฌโ€ฒ of the lonely cuts,
โˆ— (๐‘’) โ‰ฅ |๐’ฌ โ€ฒ |.
๐‘ฅ
๐‘’โˆˆ๐‘„โˆˆ๐’ฌโ€ฒ
This condition is easily checked to be satisfied
because of the subtour constraints
Game Plan for the Analysis
๏ƒผ Bound ๐’ฅโ„ฑ(๐’ฎ)
๏ƒผ Note that โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ) may not be connected
๏ƒผ Find the culprit (โ€œbadโ€ edges in ๐’ฅโ„ฑ(๐’ฎ) )
๏ƒผ Bound the probability of bad edges by choosing the convex
combination that defines ๐’ฎ carefully
(only
๐‘ฅโˆ—
2
part of ๐’ฅโ„ฑ(๐’ฎ) contributes bad edges)
๏ƒผ Bound the cost of reconnecting โ„ฑ(๐’ฎ) โŠŽ ๐’ฅโ„ฑ(๐’ฎ) with a
doubled spanning tree: ๐‘„ ๐‘๐‘„ ๐‘ฅ โˆ— ๐‘„ โˆ’ 1
Putting it all together
Forest:
๐”ผ๐’ฎ โˆ’
๐‘„
โˆ—
๐‘
=
๐‘ฅ
โˆ’
๐‘„
๐‘„
๐‘
๐‘„
Correcting parity:
โˆ— ๐‘„
๐‘ฅ
1โˆ’
โˆ’๐›พ
๐‘ฅโˆ—
2
โˆ—
โˆ— ๐‘„ โˆ’1
๐‘„
+ ๐›พ๐‘ +
๐‘ฅ
๐‘
2
2 โˆ’ ๐‘ฅ โˆ— (๐‘„)
โˆ— ๐‘„
๐‘ฅ
+
๐‘๐‘„ 1 โˆ’
โˆ’๐›พ
2
๐‘„
Reconnection:
๐‘๐‘„ ๐‘ฅ โˆ— ๐‘„ โˆ’ 1
๐‘„
1
Choose ๐›พ = , then the
16
combined multipliers for
๐‘๐‘„ โ€™s become โ‰ค 0.
โ‡’ expected total cost is at
3
1
most ๐‘ ๐‘ฅ โˆ— + ๐‘(๐‘โˆ— )
2
16
The new ratio
โ€ข Already had: ๐’ฎ โŠŽ (๐’ฎ\๐’ซ๐‘ ๐‘ก ) is a solution of cost
2๐‘(๐‘ฅ โˆ— ) โˆ’ ๐‘(๐‘โˆ— )
โ€ข Now, we also have a solution of cost
3
1
โˆ—
๐‘ ๐‘ฅ + ๐‘(๐‘โˆ— )
2
16
Minimum of these two is at most
1
2
+
1
34
๐‘(๐‘ฅ โˆ— )