ppt - IBM

advertisement
Additive Spanners in Nearly
Quadratic Time
David Woodruff
IBM Almaden
Talk Outline
1.
Spanners
1.
2.
3.
Definition
Applications
Previous work
2.
Our Results
3.
Our Techniques for Additive-6 spanner
•
•
4.
New existence proof
Efficiency
Conclusion
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) · aG(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
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) · 3G(u,v)
• Algorithmic tool: replace complicated dense graph with
spanner
– Spanner should be sparse
– Algorithm should be efficient
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
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
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]
Talk Outline
1.
Spanners
1.
2.
3.
Definition
Applications
Previous Work
2.
Our Results
3.
Our Techniques for Additive-6 spanner
•
•
4.
New existence proof
Efficiency
Conclusion
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
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
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
Talk Outline
1.
Spanners
1.
2.
3.
Definition
Applications
Previous Work
2.
Our Results
3.
Our Techniques for Additive-6 spanner
•
•
4.
New existence proof
Efficiency
Conclusion
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
Path-Hitting
u
v
• 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
Path-Hitting
Wasn’t heavy
u
r
z
P
P’
v
s
• Randomly sample
vertices. Call these representatives
••Connect
Patheach
from
each
u tovertex
v in the
toeach
spanner:
one representative
possible)
• Connect
path-hitter
to
representative (if
using
an almost (+0,
+1, +2) shortest path P with at most x heavy edges
• W.h.p. every
• traverse
degree
light> edges
n1/3 vertex
+ representative
has an adjacent
edgerepresentative
to get to r
• Only pay for heavy edges along P
• Suppose
• take
thereP are
to get
x heavy
to z edges
• At most x heavy edges along P
• Then there
• take
areP’>tox get
* n1/3
to distinct
s
vertices at distance one from the path
• # of edges included is O~(n2/3)*O~(n2/3/x)*x = O~(n4/3)
• Randomly
• traverse
samplerepresentative
O~(n2/3/x) vertices.
edge Call
+ light
these
edges
path-hitters
to get to v
O~(n2/3)
• W.h.p.
• Bysample
triangleainequality
vertex adjacent
can show
to the
additive
path distortion is 6
Recap
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
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
Talk Outline
1.
Spanners and related objects
1.
2.
Definition
Applications
2.
Previous Work
3.
Our Results
4.
Our Techniques for Additive-6 spanner
•
•
5.
New existence proof
Efficiency
Conclusion
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)

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
Dominating Sets
z
u
Maximum degree = d
v
•
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.
Talk Outline
1.
Spanners and related objects
1.
2.
Definition
Applications
2.
Previous Work
3.
Our Results
4.
Our Techniques for Additive-6 spanner
•
•
5.
New existence proof
Efficiency
Conclusion
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
Download