An optimal dynamic spanner for points residing in doubling metric spaces
This presentation is the property of its rightful owner.
Sponsored Links
1 / 56

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


  • 80 Views
  • Uploaded on
  • Presentation posted in: General

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.

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.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

  • 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

  • Some qualities of a spanner

    • degree

    • stretch

    • hop

    • weight

  • Applications: networks, routing…

G

H

1

2

2

1

1

1

1


Spanners2

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


Doubling dimension

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


Lower bound on degree

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


Lower bounds on insertions

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


Search lower bounds

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


Nns in low doubling dimension

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


Hierarchies

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


Hierarchy

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy1

Hierarchy

1-net

2-net

4-net

8-net

Packing

Radius = 1

Covering: all points

are covered


Hierarchy2

Hierarchy

1-net

2-net

4-net

8-net

Radius = 2


Hierarchy3

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy4

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy5

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy6

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy7

Hierarchy

1-net

2-net

4-net

8-net


Hierarchy8

Hierarchy

1-net

2-net

4-net

8-net


Another perspective

Another Perspective

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

Tree

Parent-child

edge

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner construction1

Spanner Construction

Tree

Lateral

edge

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths1

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths2

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths3

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths4

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner paths5

Spanner Paths

Tree

Path

  • Edges

    • Parent-child

    • Lateral

  • Path:

    • Up, across, down


Spanner construction2

Spanner Construction

1-net

2-net

4-net

8-net

Identify 1-net

points


Spanner construction3

Spanner Construction

1-net

2-net

4-net

8-net

Connect 1-net

Points within

radius 3

Call these lateral

connections


Spanner construction4

Spanner Construction

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

1-net

2-net

4-net

8-net

Connect 2-net

Points within

radius 6


Spanner construction6

Spanner Construction

1-net

2-net

4-net

8-net

Identify 4-net

points


Spanner construction7

Spanner Construction

1-net

2-net

4-net

8-net

Connect 4-net

Points within

radius 12


Analysis

Analysis

1-net

2-net

4-net

8-net

What’s the stretch

between these two

Points?


Analysis1

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


Analysis2

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


Analysis3

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)


Degree

Degree

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


Degree1

Degree

1-net

2-net

4-net

8-net

Problem: degree is logD


Degree2

Degree

  • Problem: This

  • node appears

  • at every level.

  • Solution: Why

  • require each level

  • to be subset of

  • the next one?


Dynamic hierarchy

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


Dynamic hierarchy1

Dynamic hierarchy

A look

at the new

hierarchy


Dynamic hierarchy2

Dynamic hierarchy

Step 1: Remove leaf nodes of deleted points


Dynamic hierarchy3

Dynamic hierarchy

Step 1: Remove leaf nodes of deleted points


Dynamic hierarchy4

Dynamic hierarchy

Step 2: Compress single child paths


Dynamic hierarchy5

Dynamic hierarchy

Step 2: Compress single child paths


Dynamic hierarchy6

Dynamic hierarchy

Step 2: Compress single child paths


Dynamic hierarchy7

Dynamic hierarchy

Step 2: Compress single child paths


Dynamic hierarchy8

Dynamic hierarchy

Step 2: Compress single child paths


Dynamic hierarchy9

Dynamic hierarchy

Tree with

degree at

least 2

Step 2: Compress single child paths


Dynamic hierarchy10

Dynamic hierarchy

  • Replacement scheme:

  • Eliminates deleted points

  • Each point appears

    • O(1) times

  • Adds a small cost to the stretch


Extracting a spanner

Extracting a spanner

  • Spanner edges:

  • Have parent-child edges

  • Missing some lateral edges

parent-child

edges

Missing

lateral

edge


Spanner

Spanner

Possible solution?


Extracting a spanner1

Extracting a spanner

  • 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

  • Final spanner

    • (1+e) stretch

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

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

  • Thank you!


  • Login