320 likes | 526 Views
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.
E N D
Doubling dimension and the traveling salesman problem • Yair BartalHebrew University • Lee-Ad GottliebHebrew University • Robert KrauthgamerWeizmann Institute TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AAAA
Traveling salesman problem • Definition: Given a set of cities (points) find a minimum tour that visits each point • Classic, well-studied NP-hardproblem • [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… 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 MST
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 • Can do better… • Christophides:MST+ MatchingOPT MST
Euclidean TSP • SanjeevArora [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 • 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:Arbitrarymetric 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 >0such 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 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] G H 1 2 2 1 1 1 1 8
PTAS for metric TSP? • Does TSP on doubling metrics admit a PTAS? • Aroraand Mitchell made strong use of Euclideanproperties • “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
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 • Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]
Metric partition • Starting point – a quadtree like hierarchy [Talwar‘04, Bartal ‘96] • Random radius • Ri = [2i, 2·2i] • Arbitrary center • point, ordering
Metric partition • Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96]
Metric partition • Starting point – a quadtree like hierarchy [Talwar ‘04, Bartal ‘96] • Caveat: lognhiearchical levels suffice • Ignore tiny distances < 1/n2 • Random radius • Ri-1 = [2i-1, 2·2i-1] • Arbitrary center • point
Metric TSP • 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) 2i-1/M
Metric TSP • Theorem [Arora ‘98,Talwar ‘04]: Given a partition • The best (m,r)-light tour on the partition can be computed exactly • mrO(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 = ddimlogn/Ɛ • m = MO(ddim) = (logn/Ɛ)Ỡ(ddim) • r = Ɛ-O(d)loglogn • Length of T’ is within (1+Ɛ) factor of the length of T
Metric TSP • Our contribution • Theorem: Given an optimal tour T, there exists a partition with • (m,r)-light tour T’ • M = ddimlogn/Ɛ • 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 • mrO(ddim) n logn = n 2Ɛ-Ỡ(ddim) loglog2n
Metric TSP • Our contribution • Theorem: Given an optimal tour T, there exists a partition with • (m,r)-light tour T’ • M = ddimlogn/Ɛ • 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 • mrO(ddim) n logn = n 2Ɛ-Ỡ(ddim) loglog2n • It remains only to prove the Theorem, and to show how to find the partition
Metric TSP • 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 • 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 alllevels: • logn * Ɛ/logn= Ɛ • (1+Ɛ)-approximate tour Ri-1/M
Metric TSP • 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 • 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 2R
Metric TSP • 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 • 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 = (ddimlogn/Ɛ)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
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 subproblemsolved separately • Cost to join tours: only Ri-1
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
Metric TSP • 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-1logn) Ri-1/M
Metric TSP • 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/lognr1/ddim • As before, want this term to be equal to Ɛ/logn • Can take r = (ddim/Ɛ)ddim • PTAS! 2R
Metric TSP • Outstanding problem: • Previous analysis assumed ball cuts only q edges • True in expectation… Not good enough • Solution: try many hierachies • chooselognrandom radii for each ball • Then some hierarchy has balls which cut only q edges • Drives up runtime of dynamic program • Thank you! Ri-1/M