1 / 56

An optimal dynamic spanner for points residing in doubling metric spaces

An optimal dynamic spanner for points residing in doubling metric spaces. Lee-Ad Gottlieb NYU Weizmann. Liam Roditty Weizmann. Spanners. A spanner for graph G is a subgraph H H contains all vertices in G H contains only some edges of G. G. H. 1. 2. 2. 1. 1. 1. 1. Spanners.

karstenj
Download Presentation

An optimal dynamic spanner for points residing in doubling metric spaces

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An optimal dynamic spanner for points residing in doubling metric spaces Lee-Ad Gottlieb NYU Weizmann Liam Roditty Weizmann

  2. Spanners • A spanner for graph G is a subgraph H • H contains all vertices in G • H contains only some edges of G G H 1 2 2 1 1 1 1

  3. Spanners • Some qualities of a spanner • degree • stretch • hop • weight • Applications: networks, routing… G H 1 2 2 1 1 1 1

  4. Spanners • Our goal: • Build (1+e)-stretch spanner for the full graph on S • Low degree • Maintain dynamically • Lower bounds on degree and dynamic maintenance follow… • First need to define doubling dimension

  5. Doubling Dimension • Point set X has doubling dimension if • the points of X covered by ball B can be covered by 2 balls of half the radius. • Where a ball centered at point c is the space within distance r of c. 4 5 3 6 8 2 7 1

  6. Lower bound on degree 1 1 1 1 1 • Low stretch spanner necessitates high degree. • Example: A (2-e)-spanner is the full graph • Lower bounds on degree • (1/e)O()

  7. Lower bounds on insertions H • Lower bound on insertions • An insertion of a new point in a (1+e)-spanner subsumes a (1+e)-NNS

  8. Search lower bounds e 1 q e e e e • Lower bounds on (1+e)-ANN search (arbitrary metric space) • 2O() log n • (1/e)O()

  9. NNS in Low Doubling Dimension • Krauthgamer and Lee (SODA ‘04) • considered (1+e)-ANN queries on S having low doubling dimension • Created a point hierarchy to solve this problem • Hierarchy is composed of levels of d-nets. • Packing: Points of each net spaced out • Covering: Points of each net cover all points of the previous level

  10. Hierarchies • Spanners can be created using point hierarchies (GGN-04) • Example… • Consider the hierarchy of KL-04, used in nearest neighbor search • Hierarchy is composed of levels of d-nets. • Packing: Points of each net spaced out • Covering: Points of each net cover all points of the previous level

  11. Hierarchy 1-net 2-net 4-net 8-net

  12. Hierarchy 1-net 2-net 4-net 8-net Packing Radius = 1 Covering: all points are covered

  13. Hierarchy 1-net 2-net 4-net 8-net Radius = 2

  14. Hierarchy 1-net 2-net 4-net 8-net

  15. Hierarchy 1-net 2-net 4-net 8-net

  16. Hierarchy 1-net 2-net 4-net 8-net

  17. Hierarchy 1-net 2-net 4-net 8-net

  18. Hierarchy 1-net 2-net 4-net 8-net

  19. Hierarchy 1-net 2-net 4-net 8-net

  20. Another Perspective Spanning Tree defines Parent-child relationship Let logD be the aspect Ratio of the point set. The tree has logD levels.

  21. Spanner Construction Tree Parent-child edge • Edges • Parent-child • Lateral • Path: • Up, across, down

  22. Spanner Construction Tree Lateral edge • Edges • Parent-child • Lateral • Path: • Up, across, down

  23. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  24. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  25. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  26. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  27. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  28. Spanner Paths Tree Path • Edges • Parent-child • Lateral • Path: • Up, across, down

  29. Spanner Construction 1-net 2-net 4-net 8-net Identify 1-net points

  30. Spanner Construction 1-net 2-net 4-net 8-net Connect 1-net Points within radius 3 Call these lateral connections

  31. Spanner Construction 1-net 2-net 4-net 8-net Identify 2-net points Note that we got all parent- child connections for free

  32. Spanner Construction 1-net 2-net 4-net 8-net Connect 2-net Points within radius 6

  33. Spanner Construction 1-net 2-net 4-net 8-net Identify 4-net points

  34. Spanner Construction 1-net 2-net 4-net 8-net Connect 4-net Points within radius 12

  35. Analysis 1-net 2-net 4-net 8-net What’s the stretch between these two Points?

  36. Analysis 1-net 2-net 4-net 8-net What’s the stretch between these two Points? Key to proof: blue points are connected, but white points aren’t

  37. Analysis 1-net 2-net 4-net 8-net Stretch: dspanner/d = (2+4+(d’+4+4)+4+2)/(d’-2-2) = (d’+20)/(d’-4) < 13 d’>6

  38. Analysis • We connected d-net points within distance 3d. • More generally • Connect d-net points that are within distance cd • Degree is cO() • Let j be the last level at which parents of the points are not connected. Stretch: • dspanner/d < ((d’+2j+1+2j+1)+2j+2+2j+2)/(d’-2j-1-2j-1) < (c2j+2j+2+2j+2+2j+2)/(c2j-2j) = (c+12)/(c-1) = 1+13/(c-1) = (1+e)

  39. Degree What’s the degree of the spanner in the previous example?

  40. Degree 1-net 2-net 4-net 8-net Problem: degree is logD

  41. Degree • Problem: This • node appears • at every level. • Solution: Why • require each level • to be subset of • the next one?

  42. Dynamic hierarchy • Another problem: Need fast dynamic updates • CG-06 showed how to support a hierarchy under dynamic update in 2O() log n time. • But doesn’t support deletions! • Goals: • Replace deleted points • Low Degree: • each point should appear only O(1) times in the hierarchy

  43. Dynamic hierarchy A look at the new hierarchy

  44. Dynamic hierarchy Step 1: Remove leaf nodes of deleted points

  45. Dynamic hierarchy Step 1: Remove leaf nodes of deleted points

  46. Dynamic hierarchy Step 2: Compress single child paths

  47. Dynamic hierarchy Step 2: Compress single child paths

  48. Dynamic hierarchy Step 2: Compress single child paths

  49. Dynamic hierarchy Step 2: Compress single child paths

  50. Dynamic hierarchy Step 2: Compress single child paths

More Related