additive spanners in nearly quadratic time

22
Additive Spanners in Nearly Quadratic Time David Woodruff IBM Almaden

Upload: orsen

Post on 31-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

Additive Spanners in Nearly Quadratic Time. David Woodruff IBM Almaden. Talk Outline. Spanners Definition Applications Previous work Our Results Our Techniques for Additive- 6 spanner New existence proof Efficiency Conclusion. Spanners. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Additive Spanners in Nearly Quadratic Time

Additive Spanners in Nearly Quadratic Time

David Woodruff

IBM Almaden

Page 2: Additive Spanners in Nearly Quadratic Time

Talk Outline

1. Spanners1. Definition2. Applications3. Previous work

2. Our Results

3. Our Techniques for Additive-6 spanner• New existence proof• Efficiency

4. Conclusion

Page 3: Additive Spanners in Nearly Quadratic Time

Spanners• G = (V, E) undirected unweighted graph, n vertices, m edges

• G (u,v) shortest path length from u to v in G

• [A, PS] An (a, b)-spanner of G is a subgraph H such that for all u, v in V,

H(u,v) · aG(u,v) + b

• If b = 0, H is a multiplicative spanner

• If a = 1, H is an additive spanner

• Challenge: find sparse H, and do it quickly

Page 4: Additive Spanners in Nearly Quadratic Time

Spanner Application

• 3-approximate distance queries G(u,v) with small space

• Construct a (3,0)-spanner H with O(n3/2) edges. [PS, ADDJS] do this efficiently

• Query answer: G(u,v) · H(u,v) · 3G(u,v)

• Algorithmic tool: replace complicated dense graph with spanner– Spanner should be sparse– Algorithm should be efficient

Page 5: Additive Spanners in Nearly Quadratic Time

Multiplicative Spanners

• [PS, ADDJS] For every k, can find a (2k-1, 0)-spanner with O(n1+1/k) edges in O(m) time

• This is optimal assuming a girth conjecture of Erdos

Page 6: Additive Spanners in Nearly Quadratic Time

Surprise, Surprise

• [ACIM, DHZ]: Construct a (1,2)-spanner H with O(n3/2) edges in O~(n2) time

• Remarkable: for all u,v: G(u,v) · H(u,v) · G(u,v) + 2

• Query answer is a 3-approximation, but with much stronger guarantees for G(u,v) large

Page 7: Additive Spanners in Nearly Quadratic Time

Additive Spanners

• Sparsity Upper Bounds: – (1,2)-spanner: O(n3/2) edges [ACIM, DHZ]– (1,6)-spanner: O(n4/3) edges [BKMP]– For any constant c > 6, best (1,c)-spanner known is

O(n4/3)– For graphs with few edges on short cycles, can get

better bounds [P]

• Time Bounds:– A (1,2)-spanner can be found in O~(n2) time [DHZ]– A (1,6)-spanner can be found in O(mn2/3) time [BKMP, Elkin]

Page 8: Additive Spanners in Nearly Quadratic Time

Talk Outline

1. Spanners1. Definition2. Applications3. Previous Work

2. Our Results

3. Our Techniques for Additive-6 spanner• New existence proof• Efficiency

4. Conclusion

Page 9: Additive Spanners in Nearly Quadratic Time

Main Contribution

• We construct an additive-6 spanner with O~(n4/3) edges in O~(n2) time

– Improves previous O(mn2/3) time for all m, n

– Based on a new “path-hitting” framework

Page 10: Additive Spanners in Nearly Quadratic Time

Corollary: Graphs with Large Girth

• We construct additive spanners for input graphs G with large girth in O~(n2) time

• E.g., if G has girth > 4, we construct an additive 4-spanner with O~(n4/3) edges in O~(n2) time– Improves previous O(mn) time

• E.g., if G has girth > 4, we construct an additive 8-spanner with O~(n5/4) edges in O~(n2) time– Improves previous O(mn3/4) time

• Generalizes to graphs with few edges on short cycles

Page 11: Additive Spanners in Nearly Quadratic Time

Corollary: Source-wise Preservers

• Given a subset S of O(n2/3) vertices of G, we compute a subgraph H of O~(n4/3) edges in O~(n2) time so that

– For all u,v in S, δH(u,v) · δG(u,v) + 2

• Improves previous O(mn2/3) time

Page 12: Additive Spanners in Nearly Quadratic Time

Talk Outline

1. Spanners1. Definition2. Applications3. Previous Work

2. Our Results

3. Our Techniques for Additive-6 spanner• New existence proof• Efficiency

4. Conclusion

Page 13: Additive Spanners in Nearly Quadratic Time

Include Light Edges

• Include all edges incident to degree < n1/3 vertices in spanner

• Call these edges light

• At most O(n4/3) edges included

Page 14: Additive Spanners in Nearly Quadratic Time

Path-Hitting

• Consider any shortest path. Suppose it goes from u to v.

• Done if all edges on path are light

• Otherwise there are heavy edges

• Each heavy edge e is adjacent to a set Se of > n1/3 vertices

• For heavy edges e and e’, Se and Se’ are disjoint

u v

Page 15: Additive Spanners in Nearly Quadratic Time

Path-Hittingu v

• Randomly sample O~(n2/3) vertices. Call these representatives• Connect each vertex to one representative (if possible)

• W.h.p. every degree > n1/3 vertex has an adjacent representative

• Suppose there are x heavy edges

• Then there are > x * n1/3 distinct vertices at distance one from the path

• Randomly sample O~(n2/3/x) vertices. Call these path-hitters

• W.h.p. sample a vertex adjacent to the path

r sz

• Connect each path-hitter to each representative using an almost (+0, +1, +2) shortest path P with at most x heavy edges

• Only pay for heavy edges along P

• At most x heavy edges along P

• # of edges included is O~(n2/3)*O~(n2/3/x)*x = O~(n4/3)

Wasn’t heavy

• Path from u to v in the spanner: • traverse light edges + representative edge to get to r

• take P to get to z

• take P’ to get to s

• traverse representative edge + light edges to get to v

• By triangle inequality can show additive distortion is 6

P P’

Page 16: Additive Spanners in Nearly Quadratic Time

RecapAlgorithm:

1. Randomly sample O~(n2/3) representatives

2. Randomly sample O~(n2/3/x) path-hitters

3. Connect each representative to each path-hitter on an almost (+0, +1, +2) shortest path using O(x) heavy

edges

This works w.h.p. for all shortest paths containing between x and 2x heavy edges

To make it work for all shortest paths, vary x in powers of 2 and take the union of the edge-sets

Theorem: there exists an additive-6 spanner with O~(n4/3) edges

Page 17: Additive Spanners in Nearly Quadratic Time

Talk Outline

1. Spanners and related objects1. Definition2. Applications

2. Previous Work

3. Our Results

4. Our Techniques for Additive-6 spanner• New existence proof• Efficiency

5. Conclusion

Page 18: Additive Spanners in Nearly Quadratic Time

Efficiency• Algorithm:

1. Randomly sample O~(n2/3) representatives

2. Randomly sample O~(n2/3/x) path-hitters

3. Connect each representative to each path-hitter on an almost (+0, +1, +2) shortest path using O(x) heavy edges

• Only one time consuming step

• Bicreteria problem:– Almost (+0, +1, +2) shortest path AND O(x) heavy edges

• Simple breadth-first-search-like procedure– Time complexity proportional to # of edges in the graph– Only get quadratic time if # of edges is O(n4/3x)

Page 19: Additive Spanners in Nearly Quadratic Time

Deleting High Degree Vertices

• If maximum degree · n1/3x, we get quadratic time

• Delete all degree > n1/3x vertices and incident edges, run algorithm on subgraph

• Oops, some shortest paths are disconnected

u v

Page 20: Additive Spanners in Nearly Quadratic Time

Dominating Sets

• This only happens if there is a degree d > n1/3x vertex on the path

• Delete all degree > d vertices in graph and incident edges

• Choose a dominating set of O~(n/d) vertices for degree d vertices

• Connect vertices in dominating set to representatives via an almost shortest path with O(x) heavy edges

• # of edges is O~(n/d * n2/3 * x) = O~(n4/3). Time is O~(n/d * nd) = O~(n2).

• Vary both d and x in powers of 2. Take the union of the edge-sets found.

u vMaximum degree = dz

Page 21: Additive Spanners in Nearly Quadratic Time

Talk Outline

1. Spanners and related objects1. Definition2. Applications

2. Previous Work

3. Our Results

4. Our Techniques for Additive-6 spanner• New existence proof• Efficiency

5. Conclusion

Page 22: Additive Spanners in Nearly Quadratic Time

Conclusion

• New path-hitting framework improves running times of spanner problems to O~(n2)– Additive-6 spanner with O~(n4/3) edges– Further sparsifies inputs with large girth– Approximate source-wise preservers

• Other graph problems for which technique may apply– Constructing emulators more efficiently– Constructing near-additive spanners more efficiently,

i.e., for all pairs u, v,

δH(u,v) · (1+ε)δG(u,v) + 4, where ε > 0 is arbitrary