Additive Spanners in Nearly Quadratic Time

22
Additive Spanners in Nearly Quadratic Time David Woodruff IBM Almaden

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 of Additive Spanners in Nearly Quadratic Time

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