Presentation is loading. Please wait.

Presentation is loading. Please wait.

Metric Methods and Approximation Algorithms

Similar presentations


Presentation on theme: "Metric Methods and Approximation Algorithms"— Presentation transcript:

1 Metric Methods and Approximation Algorithms
Anupam Gupta Carnegie Mellon University 3ème cycle romand de Recherche Opérationnelle, 2010 Seminar, Lecture #1

2 y z x Metric space M = (V, d) set V of points
symmetric non-negative distances d(x,y) triangle inequality d(x,y) ≤ d(x,z) + d(z,y) d(x,x) = 0 y z x

3 why metric spaces? Metric spaces are inputs to problems TSP round trip delays between machines distances between strings but also, Metric spaces are useful abstractions for various problems and interesting mathematical objects in their own right

4 Metrics Distances d 5 e 3 d 6 a 5 2 1 1 3 4 c b 4

5 Choose your representation
G F E D C B A - 468 44 126 454 85 69 347 170 514 509 137 527 450 127 348 90 493 46 114 387 208 497 58 188 388 282 513 436 115 331 151 404 244 327 94 234

6 Choose your representation
SJ SD SF Sac PS Napa Mntr LA H.C. - 468 44 126 454 85 69 347 170 San Jose 514 509 137 527 450 127 348 San Diego 90 493 46 114 387 208 San Francisco 497 58 188 388 282 Sacramento 513 436 115 331 Palm Springs 151 404 244 327 94 Monterey 234 Hearst Castle

7 Choose your representation
Good approximation via 2-d Euclidean distances or even via a sparse skeleton of edges: a “spanner” 497 234 115 127

8 Representations of metrics
Just a distance matrix Shortest-path metric of a (“simple”) graph Points in Rk with distances given by the ℓp norms low-dimensional geometric representations

9 Tree metric a b a b d c c

10 Tree metric A metric M = (V,d) is a tree metric if there exists a tree T = (V [ X, E) (with edge-lengths) such that d = dT |V × V

11 more generally Given a family G of graphs A metric M = (V,d) is a G-metric if there exists a graph H = (V [ X, E) in G (with edge-lengths) such that d = dH |V × V

12 for now, G is the set of trees
A metric M = (V,d) is a tree metric if there exists a tree T = (V [ X, E) (with edge-lengths) such that d = dT |V × V

13 Is every metric a tree metric?
Consider the metric generated by the 4-cycle:

14 … “close” to a tree metric?
What is “closeness” between metric spaces?

15 … “close” to a tree metric?
Our favorite notion of closeness: Let M = (V,d) Let M’ = (V’,d’) Let f: V  V’ stretch(f) = maxx, y in V d(f(x), f(y)) d(x, y) d(f(x), f(y)) d(x, y) contraction(f) = maxx, y in V distortion(f) = stretch(f) × contraction(f) M is “close” to M’ if there exists a “low”-distortion map f: M  M’

16 examples

17 examples

18 Properties of distortion
Invariant under scaling: If M is close to M’ and M’ is close to M’’, then…

19 is every metric close to a tree metric?
So, does every metric admit a low-distortion embedding into a tree metric?

20 what do we do now? Here’s a way out… dT(a,b) ≥ d(a,b) E[dT(a,b)] ¼ ¼ ¼
c Here’s a way out… dT(a,b) ≥ d(a,b) E[dT(a,b)]

21 “dominating trees” Given a metric M = (V,d) let T(M) = { trees T | dT ≥ d } distances in such a tree T “dominates” distances in d

22 random tree embeddings
Given a metric M = (V, d), want a probability distribution D over trees in T(M) such that 1) dT(x,y) ≥ d(x,y) for all x,y, all trees T in support(D) 2) for all x, y in V ET ← D[ dT(x,y) ] ≤ α d(x,y)

23 why are these useful? Consider, say, the traveling salesman problem:

24 quick recap of goals Given a metric M =(V,d) find a distribution over trees such that d(x,y) ≤ dT(x,y) for all trees in ET[ dT(x,y) ] ≤ ® × d(x,y)

25 first results [Alon Karp Peleg West ‘94] [Bartal ’96, ‘98]

26 current world record [Fakcharoenphol Rao Talwar ’03]

27 best possible (log n) lower bound for square grid hypercube
diamond graphs constant-degree expander graphs

28 diamond graphs?

29 Time for some proofs…

30 roadmap To show an embedding of metrics into random trees, we show
how to randomly partition metrics “well” how these random partitions give us good tree embeddings

31 useful notation Given a metric M = (V, d) Diameter(S) for S µ V
Ball B(x,r)

32 high level desiderata Given a metric M, want to partition it randomly into pieces of “small” diameter such that “nearby” vertices lie in different pieces only with “small” probability. “random metric decompositions”

33 consider the path metric
Suppose the pieces have diameter ¢ then the natural way to do it: gives Pr[ x, y in different clusters ] =

34 and the grid… Again, if the pieces have diameter ¢ then one natural way to do it: gives Pr[ x, y in different clusters ] ≈

35 “padded” decompositions
A metric (V,d) admits ¯-padded decompositions, if for every ¢, we can output a random partition V = V1 ] V2 ] … ] Vk each Vj has diameter ≤ ¢ Pr[ x and y in different clusters ] ≤ 2’. Pr[ ball B(x,½) split ] ≤

36 “padded” decompositions
A metric (V,d) admits ¯-padded decompositions, if for every ¢, we can output a random partition V = V1 ] V2 ] … ] Vk each Vj has diameter ≤ ¢ Pr[ B(x,½) split ] ≤

37 (weaker) theorems Theorem 1. Every n-point metric admits an ¯ = O(log n)-padded decomposition Theorem 2. [Bartal ’96] Embedding into distribution over trees with ® = O(log n × log “aspect-ratio”)

38 (stronger) theorems Theorem 3. Every n-point metric admits an ¯(x, ¢)-padded decomposition with Theorem 4. [FRT ’03] Embedding into distribution over trees with ® = O(log n)

39 we’ll prove the weaker results
Theorem 1. Every n-point metric admits an ¯ = O(log n)-padded decomposition Theorem 2. [Bartal ’96] Embedding into distribution over trees with ® = O(log n × log “aspect-ratio”)

40 high-level idea

41 decomposition algorithm

42 decomposition algorithm
each Vj has diameter ≤ ¢ Pr[ B(x,½) split ] ≤

43 proof (1) Fact #1: Pr[ any of the Rv values is more than ¢ ] < 1/poly(n)

44 proof (2) Fact #2: for any x in V, Pr[ Ball(x, ½) is split ] ≤

45 proof (3)

46 this is what we showed… each Vj has diameter ≤ ¢ Pr[ B(x,½) split ] ≤

47 Now to show Theorem 1. Every n-point metric admits an ¯ = O(log n)-padded decomposition Theorem 2. Embedding into distribution over trees with ® = O(log n × log aspect-ratio) we assume min distance = 1 (by scaling), so aspect-ratio = diameter

48 high-level idea

49 tree-building

50 tree-building Distances in tree are at least d(x,y)
E[ distance(x,y) in tree ] ≤ O(log n log diam) d(x,y)

51 proof (1) Fact #1: Distances dT(x,y) are at least d(x,y) Proof:
Suppose d(x,y) is in (2t-1, 2t]. Then x,y must be separated by RandT(*, i) for some i ≥ t And hence x and y are in different trees that have an edge of length at least 2i ≥ 2t ≥ d(x,y) between them. hence dT(x,y) ≥ 2i ≥ d(x,y)

52 proof (2) Fact #2: In any tree returned by RandT(X,i) distance of any node x from the root is ≤ 2i+1 Proof: By the algorithm, the distance is at most 2i + 2i-1 + … ≤ 2i+1. Corollary: If x,y in same tree returned by RandT(X, i), then dT(x,y) ≤ 2. 2i+1

53 proof (3) Fact #3: Expected distance E[ dT(x,y) ] ≤ O(log n log diam) d(x,y) Proof: If x,y separated at level t, the distance dT(x,y) is at most 4.2t (by Fact #2). The probability that x,y separated at level t is O(log n) d(x,y)/2t. Hence the expected distance is t 4.2t × O(log n) d(x,y)/2t = O(log n) d(x,y) × recursion depth = O(log n) d(x,y) × (log diameter)

54 now we’ve proved the full result
Theorem 1. Every n-point metric admits an ¯ = O(log n)-padded decomposition Theorem 2. [Bartal ’96] Embedding into distribution over trees with ® = O(log n × log diameter)

55 extensions gives embedding into Hierarchically well-Separated Trees

56 extensions embedding special classes of graphs

57 extensions embedding graph metrics into distributions over their sub-trees

58 embeddings into trees

59 used for these problems
k-median Group Steiner tree min-sum clustering metric labeling minimum communication spanning tree vehicle routing problems metrical task systems and k-server buy-at-bulk network design oblivious network design oblivious routing demand-cut problem …

60 app: “universal” TSP Given a metric (V,d), you find single permutation ¼ adversary gives you subset S µ V you use order given by ¼ to visit cities in S. How close are you to the optimal tour on S? If adversary does not look at actual permutation ¼ when choosing S  O(log n) factor worse in expectation. What if adversary can look at ¼ and then choose S? can use variant of tree embeddings to get O(log2 n)

61 recap… Two general techniques: Padded decompositions. Embeddings into random trees. Coming up: Embeddings into geometric space Dimension reduction for geometric point sets Dimension of an abstract metric space

62 thank you!


Download ppt "Metric Methods and Approximation Algorithms"

Similar presentations


Ads by Google