Week 9, Euclidean TSP - VUArora’s PTAS De nition A polynomial time approximation scheme (PTAS)...

Preview:

Citation preview

Week 9, Euclidean TSPRandomized algorithms

Today

1. Few’s algorithm (1955)

2. Karp’s algorithm (1977)

3. Arora’s algorithm (1998)

Arora’s PTAS

DefinitionA polynomial time approximation scheme (PTAS) gives for anyfixed ε > 0 a polynomial time (1 + ε)-approximation algorithm.

Theorem (Arora, 1998)

There is a PTAS for the TSP in the Euclidean plane.

Sanjeev Arora: Polynomial Time Approximation Schemes for EuclideanTraveling Salesman and other Geometric Problems. J. ACM 45 (1998)- Cited 1097 times (May 2019, Google)

1. Few’s algorithm (1955)

Few’s algorithm

Few’s algorithm

TheoremFor any set of n point in a 1× 1 square, there exists a TSP tour oflength O(

√n).

2. Karp’s algorithm (1977)

Karp’s algorithm

Karp’s algorithm

Karp’s algorithm

TSP solvable in O(n32n) time.Choose s = log2 n.

TheoremKarp’s algorithm finds a tour of length O(

√(n/ log2 n)) + OPT .

Random points

Place n points uniformly at random in a 1× 1 square.

TheoremThe expected length is Θ(

√n)

Corollary

For n random points:

1 6ZKARP

Opt6 1 + o(1).

(i.e., Karp is optimal in the limit for random points.)

3. Arora’s algorithm (1998)

Euclidean TSP

Theorem (Arora, 1998)

There is a PTAS for the TSP in the Euclidean plane.

Main ingredients

I Roundig the instance.

I Restricting the solution space.

I Dynamic programming.

I Randomization.

Euclidean TSP

The algorithm

1. Take a random box B that covers all points.

2. Move points to grid points.

3. Build quad tree.

4. Define portals.

5. Define the subproblems for the DP.

6. Fill the DP table.

Step 1, Random box B

Let k = dlog2(n/ε)e. Take a, b ∈ {0, 1, . . . , 2k−1 − 1} at random.

Step 2, Rounding

Move each point to the middle of its 1× 1 cell.

Step 3, Quad trees

Iteratively divide the square in 4 squares until smallest are 1× 1.

Step 4, Portals

Each gridline gets a number of regularly distributed points.

Step 5, Subproblems

A subproblems is given by (X ,Y ,Z ):

X : A square of the quadtree.

Y : An even subset of portals of X .

Z : A pairing of the portals Y .

Store in the D.P. :F (X ,Y ,Z ) = minimum length of set of paths inside X that crossthe boundary at Y and obey the pairing Z .

Step 6, Fill the DP table.

A value F (X ,Y ,Z ) can be computed from all possible valuesF (X1,Y1,Z1), F (X2,Y2,Z2), F (X3,Y3,Z3), and F (X4,Y4,Z4),where X1,X2,X3, and X4 are the childeren of X .

Analysis

Need to show that the

1 approximation ratio is at most 1 + ε, and

2 running time is polynomial.

Analysis

1 approximation ratio.

Analysis, approx. ratio

Rounding. Note that

I Opt > L = 2k > n/ε (k = dlog2(n/ε)e.)I Difference per point 6

√2

Rounding error: 6√

2n 6√

2εL 6√

2εOpt.

Let Opt′ be optimal value for rounded instance

Opt′ 6 (1 +√

2ε)Opt

Analysis, approx. ratio

Restriction to portals.Let δi be interportal distance of a level i line.

δi =L

m2i=

2k

m2i.

Detour per crossing: 6 δi .

May be too large if random (a, b)-shift was not used!!!

Analysis, approx. ratio

Restriction to portals.

Let l be arbitrary grid line.Pr(l is of level 1) = 21−k .Pr(l is of level 2) = 21−k .Pr(l is of level 3) = 22−k ....Pr(l is of level i) = 2i−1−k , for i > 2.⇒Pr(l is of level i) 6 2i−k , for i > 1.

Analysis, approx. ratio

Restriction to portals.

Expected length of detour for one crossing with gridline l :

6k∑

i=1

Pr(l is of level i) · δi

6k∑

i=1

2i−k · 2k

m2i=

k

m=

k

dk/εe6 ε.

Choose m = dk/εe = ddlog2(n/ε)e/εe = O( log nε ).

Analysis, approx. ratio

Claim: At most√

2Opt′ crossings with gridlines in total.

Total detour for portals ε√

2Opt′.

Let Opt′′ be optimal value for a portal respecting tour for roundedinstance

E[Opt′′] 6 (1 + ε√

2)Opt ′

Analysis, approx. ratio

Summarizing:

Opt is optimal length original instance and,Opt′ is optimal for rounded instance and,Opt′′ is optimal portal respecting tour for rounded instance.

E[Opt′′] 6 (1 + ε√

2)Opt ′

6 (1 + ε√

2)(1 +√

2ε)Opt

= (1 + O(ε))Opt.

Analysis

2 running time.

Analysis, running time

� Number of subproblems (X ,Y ,Z ):I X : Size of quadtree: 4k leaves. ⇒ O(n2/ε2) squares X .I Y : nO(1/ε) ways to cross portals at X .I Z : nO(1/ε) ways to pair crossings of Y .

⇒ Number of subproblems (X ,Y ,Z ) = nO(1/ε)

� Computing one value F (X ,Y ,Z ) takes nO(1/ε) time.

Total time and space is nO(1/ε).

Extensions

This technique has been used to get a PTAS for the Euclideanversion of

I Minimum Steiner tree.

I Mimimum k median.

I k-TSP

I k-MST

I mincost k-connected subgraph.

I Traveling Repairman Problem

I many others ....

Some open problems

Only Quasi-PTAS known: (nO(log n) time)

I Capacitated vehicel routing. (QPTAS by A. Das and C.Mathieu, 2010)

I Mimimum weight triangulation (QPTAS by Remy and Steger,2006)

I Prize collecting TSP (QPTAS by Arora)

No scheme known:

I Mimimum weight Steiner triangulation.

Recommended