An optimal dynamic spanner for points residing in doubling metric spaces
Download
1 / 56

An optimal dynamic spanner for points residing in doubling metric spaces - PowerPoint PPT Presentation


  • 117 Views
  • Uploaded on

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.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' An optimal dynamic spanner for points residing in doubling metric spaces' - awena


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
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
Spanners metric spaces

  • 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


Spanners1
Spanners metric spaces

  • Some qualities of a spanner

    • degree

    • stretch

    • hop

    • weight

  • Applications: networks, routing…

G

H

1

2

2

1

1

1

1


Spanners2
Spanners metric spaces

  • 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


Doubling dimension
Doubling Dimension metric spaces

  • 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


Lower bound on degree
Lower bound on degree metric spaces

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()


Lower bounds on insertions
Lower bounds on insertions metric spaces

H

  • Lower bound on insertions

    • An insertion of a new point in a (1+e)-spanner subsumes a (1+e)-NNS


Search lower bounds
Search lower bounds metric spaces

e

1

q

e

e

e

e

  • Lower bounds on (1+e)-ANN search (arbitrary metric space)

    • 2O() log n

    • (1/e)O()


Nns in low doubling dimension
NNS in Low Doubling Dimension metric spaces

  • 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


Hierarchies
Hierarchies metric spaces

  • 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


Hierarchy
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy1
Hierarchy metric spaces

1-net

2-net

4-net

8-net

Packing

Radius = 1

Covering: all points

are covered


Hierarchy2
Hierarchy metric spaces

1-net

2-net

4-net

8-net

Radius = 2


Hierarchy3
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy4
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy5
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy6
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy7
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Hierarchy8
Hierarchy metric spaces

1-net

2-net

4-net

8-net


Another perspective
Another Perspective metric spaces

Spanning Tree defines

Parent-child relationship

Let logD be the aspect

Ratio of the point set.

The tree has logD levels.


Spanner construction
Spanner Construction metric spaces

Tree

Parent-child

edge

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner construction1
Spanner Construction metric spaces

Tree

Lateral

edge

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths1
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths2
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths3
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths4
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths5
Spanner Paths metric spaces

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner construction2
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Identify 1-net

points


Spanner construction3
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Connect 1-net

Points within

radius 3

Call these lateral

connections


Spanner construction4
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Identify 2-net

points

Note that we

got all parent-

child connections

for free


Spanner construction5
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Connect 2-net

Points within

radius 6


Spanner construction6
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Identify 4-net

points


Spanner construction7
Spanner Construction metric spaces

1-net

2-net

4-net

8-net

Connect 4-net

Points within

radius 12


Analysis
Analysis metric spaces

1-net

2-net

4-net

8-net

What’s the stretch

between these two

Points?


Analysis1
Analysis metric spaces

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


Analysis2
Analysis metric spaces

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


Analysis3
Analysis metric spaces

  • 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)


Degree
Degree metric spaces

What’s the degree of the spanner in the previous example?


Degree1
Degree metric spaces

1-net

2-net

4-net

8-net

Problem: degree is logD


Degree2
Degree metric spaces

  • Problem: This

  • node appears

  • at every level.

  • Solution: Why

  • require each level

  • to be subset of

  • the next one?


Dynamic hierarchy
Dynamic hierarchy metric spaces

  • 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


Dynamic hierarchy1
Dynamic hierarchy metric spaces

A look

at the new

hierarchy


Dynamic hierarchy2
Dynamic hierarchy metric spaces

Step 1: Remove leaf nodes of deleted points


Dynamic hierarchy3
Dynamic hierarchy metric spaces

Step 1: Remove leaf nodes of deleted points


Dynamic hierarchy4
Dynamic hierarchy metric spaces

Step 2: Compress single child paths


Dynamic hierarchy5
Dynamic hierarchy metric spaces

Step 2: Compress single child paths


Dynamic hierarchy6
Dynamic hierarchy metric spaces

Step 2: Compress single child paths


Dynamic hierarchy7
Dynamic hierarchy metric spaces

Step 2: Compress single child paths


Dynamic hierarchy8
Dynamic hierarchy metric spaces

Step 2: Compress single child paths


Dynamic hierarchy9
Dynamic hierarchy metric spaces

Tree with

degree at

least 2

Step 2: Compress single child paths


Dynamic hierarchy10
Dynamic hierarchy metric spaces

  • Replacement scheme:

  • Eliminates deleted points

  • Each point appears

    • O(1) times

  • Adds a small cost to the stretch


Extracting a spanner
Extracting a spanner metric spaces

  • Spanner edges:

  • Have parent-child edges

  • Missing some lateral edges

parent-child

edges

Missing

lateral

edge


Spanner
Spanner metric spaces

Possible solution?


Extracting a spanner1
Extracting a spanner metric spaces

  • Replacing lateral edges

Problem: Too many

replacement edges

incident on a single

node

Solution: Assign x

as a “step child” of

the lowest covering

point

x


Conclusion
Conclusion metric spaces

  • Final spanner

    • (1+e) stretch

    • (1/e)O() degree (optimal)

    • (1/e)O() log n update time (optimal?)

  • Thank you!


ad