Doubling dimension and the traveling salesman problem

Post on 25-Feb-2016

48 views 3 download

Tags:

description

Doubling dimension and the traveling salesman problem. Yair Bartal Hebrew University Lee-Ad Gottlieb Hebrew University Robert Krauthgamer Weizmann Institute. TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAA. Traveling salesman problem. - PowerPoint PPT Presentation

Transcript of Doubling dimension and the traveling salesman problem

Doubling dimension and the traveling salesman problem

Yair Bartal Hebrew UniversityLee-Ad Gottlieb Hebrew UniversityRobert Krauthgamer Weizmann Institute

Traveling salesman problem Definition: Given a set of cities (points) find a minimum

tour that visits each point Classic, well-studied NP-hard problem

[Karp ‘72; Papadimitriou, Vempala ‘06] Mentioned in a handbook from 1832!

Common benchmark for optimization methods Many books devoted to TSP…

Other variants Closed tour Multiple tours Etc…

2

Optimal tour

Traveling salesman problem Some additional assumptions on distances

Symmetric d(x,y) = d(y,x)

Metric Triangle inequality: d(x,y) + d(y,z) ≤ d(x,z) Easy 2-approximation via MST

Since OPT ≥ MST

3

MST

Some additional assumptions on distances Symmetric

d(x,y) = d(y,x)

Metric Triangle inequality: d(x,y) + d(y,z) ≤ d(x,z) Easy 2-approximation via MST

Since OPT ≥ MST Can do better…

Christophides: MST + Matching OPT

Traveling salesman problem

4

MST

Sanjeev Arora [A. ‘98] and Joe Mitchell [M. ‘99] : Euclidean TSP with fixed dimension admits a PTAS

(1+Ɛ)-approximate tour In time n(log n)Ɛ-Ỡ(d)

(Easy extension to other norms)

They were awarded the 2010 Gödel Prize for this discovery

5

Euclidean TSP

5

6

Euclidean TSP To achieve a PTAS, two properties were assumed

Euclidean space Fixed dimension

Are both these assumptions required? Fixed dimension is necessary

Hardness: No PTAS for (log n)-dimensions [Trevisan ’00] Is Euclidean necessary?

A PTAS for metric space? Problem: Arbitrary metric space includes high-dimension Euclidean space... What about metric spaces with low intrinsic dimension?

6

Doubling Dimension Definition: Ball B(x,r) = all points within distance r from x.

The doubling constant (of a metric M) is the minimum value >0 such that every ball can be covered by balls of half the radius First used by [Assoud ‘83], algorithmically by [Clarkson ‘97]. The doubling dimension is ddim(M)=log(M)

[Gupta,Krauthgamer,Lee ‘03] A metric is doubling if its doubling dimension is constant

Packing property of doubling spaces A set with diameter D and min. inter-point

distance a, contains at most(D/a)O(ddim) points

7

Here ≤7.

Applications of doubling dimension Nearest neighbor search

[Krauthgamer, Lee ’04; Har-Peled, Mendel ’06; Beygelzimer, Kakade, Langford ’06; Cole, G. ‘06]

Spanner construction, routing [G., Roditty ’08a, ’08b; Elkin, Solomon ‘12a, ‘12b;

Abraham, Gavoille, Goldberg, Malkhi ‘05]

Distance oracles [Har-Peled, Mendel ’06; Bartal, G., Roditty, Kopelowitz, Lewenstein ’11]

Dimension reduction [G., Krauthgamer, ’11; Bartal, Recht, Schulman ‘11]

Machine learning [Bshouty, Yi, Long ‘09; G., Kontorovich, Krauthgamer ’10, ‘12; ]

Extension to nearly-doubling spaces [G., Krauthgamer ‘10]

8

G

2

11

H

2

11

1

9

PTAS for metric TSP? Does TSP on doubling metrics admit a PTAS?

Arora and Mitchell made strong use of Euclidean properties “Most fascinating problem left open in this area”

James Lee, tcs math blog, June ‘10

Some attempts Quasi-PTAS

[Talwar ‘04] (First description of problem) QPTAS for metric with neighborhoods

[Mitchell ’07; Chan, Elbassioni ‘11] Subexponential-TAS, under more general growth assumption

[Chan, Gupta ‘08]

9

10

PTAS for metric TSP? Does TSP on doubling metrics admit a PTAS?

Yes! (1+Ɛ)-approximate tour In time: n2O(ddim) 2Ɛ-Ỡ(ddim) 2O(ddim2) log½n

Euclidean: n (log n)Ɛ-Ỡ(d)

We’ll jump right in to the construction

10

Metric partition

11

Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]

Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]

Metric partition

12

Arbitrary center point, ordering

Random radius Ri = [2i, 2·2i]

Metric partition

13

Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]

Metric partition

14

Random radius Ri-1 = [2i-1, 2·2i-1]

Arbitrary center point

Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]

Caveat: logn hiearchical levels suffice Ignore tiny distances < 1/n2

Metric TSP

15

2i-1/M

Definition: A tour is (m,r)-light on a hierarchy if it enters all cells (clusters) At most r times Only via m portals

Portals are 2i-1/M –net points m = MO(ddim)

16

Metric TSP Theorem [Arora ‘98,Talwar ‘04]: Given a partition

The best (m,r)-light tour on the partition can be computed exactly mr O(ddim) nlogn time Via simple dynamic programming

Join tours for small clusters into tour for larger cluster

Metric TSP Our contribution Theorem: Given an optimal tour T, there exists a partition

with (m,r)-light tour T’

M = ddim logn/Ɛ m = MO(ddim) = (logn/Ɛ)Ỡ(ddim)

r = Ɛ-O(d) loglogn Length of T’ is within (1+Ɛ) factor of the length of T

17

Metric TSP Our contribution Theorem: Given an optimal tour T, there exists a partition

with (m,r)-light tour T’

M = ddim logn/Ɛ m = MO(ddim) = (logn/Ɛ)Ỡ(ddim)

r = Ɛ-O(d) loglogn Length of T’ is within (1+Ɛ) factor of the length of T

If the partition were known, then T’ could be found in time mr O(ddim) n logn = n 2Ɛ-Ỡ(ddim) loglog2n

18

Metric TSP Our contribution Theorem: Given an optimal tour T, there exists a partition

with (m,r)-light tour T’

M = ddim logn/Ɛ m = MO(ddim) = (logn/Ɛ)Ỡ(ddim)

r = Ɛ-O(d) loglogn Length of T’ is within (1+Ɛ) factor of the length of T

If the partition were known, then T’ could be found in time mr O(ddim) n logn = n 2Ɛ-Ỡ(ddim) loglog2n

It remains only to prove the Theorem, and to show how to find the partition

19

Metric TSP

20

Modify a tour to be (m,r)-light Part I: Focus on m (i.e. net points) [Arora ‘98, Talwar ‘04]

Move cut edges to be incident on net points

Ri-1/M

Metric TSP

21

Modify a tour to be (m,r)-light Part I: Focus on m (i.e. net points) [Arora ‘98, Talwar ‘04]

Move cut edges to be incident on net points

Expected cost to edge At the (i-1)-level, radius Ri-12i-1

Expected cost ~ (Ri-1/M)(ddim/Ri-1) = ddim/M = Ɛ/logn (assuming edge length 1)

Expected cost to edge over all levels: logn * Ɛ/logn = Ɛ (1+Ɛ)-approximate tour

Ri-1/M

Metric TSP

22

Modify a tour to be (m,r)-light Part II: Focus on r (i.e. number of crossing edges) Reduce number of crossings

Metric TSP

23

Modify a tour to be (m,r)-light Part II: Focus on r (i.e. number of crossing edges) Reduce number of crossings

Patchings [Arora ‘98]: Reroute edges back into cluster Cost: length of tour on the patched endpoints

MST of these points

MST in doubling spaces Bound the weight of MST in doubling space [Talwar ‘04]: For any r-point set S

MST(S) = Rr1-1/ddim « Rr Per point cost = R/r1/ddim

24

2R

Metric TSP

25

Modify a tour to be (m,r)-light – Part II Focus on r (i.e. number of crossing edges)

Reduce number of crossings

Expected cost to edge At the (i-1)-level, radius Ri-12i-1

Probability edge is patched ≤ Probability edge is cut (Ri-1/r1/ddim)(ddim/Ri-1) = ddim/r1/ddim

2R

Metric TSP

26

Modify a tour to be (m,r)-light – Part II Focus on r (i.e. number of crossing edges)

Reduce number of crossings

Expected cost to edge At the (i-1)-level, radius Ri-12i-1

Probability edge is patched ≤ Probability edge is cut (Ri-1/r1/ddim)(ddim/Ri-1) = ddim/r1/ddim

As before, want this term to be equal to Ɛ/logn So we get a contribution of Ɛ over logn levels Could take r = (ddim logn/Ɛ)ddim

But dynamic program runs in time mr – QPTAS! [Talwar ‘04]

Challenge: smaller value for r

2R

Metric TSP Key observation:

Space can be decomposed into sparse neighborhoods

Consider an (i-1)-level ball If the local tour weight inside is at least Ri-1/Ɛ

“Dense” ball Ball can be removed, each subproblem solved

separately

27

Metric TSP Key observation:

Space can be decomposed into sparse neighborhoods

Consider an (i-1)-level ball If the local tour weight inside is at least Ri-1/Ɛ

“Dense” ball Ball can be removed, each subproblem solved

separately

Cost to join tours: only Ri-1

28

Metric TSP Sparse decomposition:

Search hierarchy bottom-up for “dense” balls. Remove “dense” ball

Ball is composed of sparse subballs So it’s barely dense

Recurse on remaining point set

How do we know the local weight of the tour in a ball? Can be estimated using the local MST Modulo some caveats, error terms…

OPT Ʌ B(u,R) = O(MST(S)) B(u,3R) Ʌ OPT = Ω(MST(S)) -Ɛ-O(ddim) R

29

Metric TSP

30

Ri-1/M

Suppose a tour is q-sparse with respect to hierarchy Every R-ball contains weight Rq (for all R=2i) Expectation: Random R-ball cuts weight Rq/R = q

Cluster formed by cuts from many levels Expectation: q cuts per level

If r = q 2loglogn Expectation: (i-1)-level patching includes

cuts from 2loglogn higher levels Charge patching to edges in top loglogn

levels Cut Pr: (ddim/Ri+loglogn) = (ddim/Ri-1 logn)

Metric TSP

31

Modify a tour to be (m,r)-light – Part II Focus on r (i.e. number of crossing edges)

Reduce number of crossings

Expected cost to edge At the (i-1)-level, radius Ri-12i-1

Probability edge is patched ≤ Probability edge is cut (Ri-1/r1/ddim)(ddim/Ri-1logn) = ddim/logn r1/ddim

As before, want this term to be equal to Ɛ/logn Can take r = (ddim/Ɛ)ddim

PTAS!

2R

Metric TSP

32

Ri-1/M

Outstanding problem: Previous analysis assumed ball cuts only q edges True in expectation… Not good enough Solution: try many hierachies

choose logn random radii for each ball Then some hierarchy has balls which cut only q edges Drives up runtime of dynamic program

Thank you!