Approximate Distance Oracles for Geometric Spanner Networks
-
Upload
lane-gross -
Category
Documents
-
view
30 -
download
1
description
Transcript of Approximate Distance Oracles for Geometric Spanner Networks
Approximate Distance Oracles for Geometric
Spanner Networks
Joachim Gudmundsson TUE, Netherlands
Christos Levcopoulos Lund U., Sweden
Giri Narasimhan Florida Int’l U., Miami, USA
Michiel Smid Carleton U., Ottawa, Canada
Giri Narasimhan Dagstuhl '04 2
Problem
Preprocess a geometric spanner network so that approximate shortest path lengths between two query vertices can be reported efficiently (using subquadratic space).
Giri Narasimhan Dagstuhl '04 3
Main Results
1. Let N be a geometric t-spanner for a set S of n points in d with m edges. N can be preprocessed so that (1+)-approximate shortest path lengths between two query points from S can be reported efficiently. Preprocessing O(m + nlogn) Space O(m + nlogn) Query O(1)
• Floor function not used. Only indirection.• No restrictions on interpoint distances.
Giri Narasimhan Dagstuhl '04 4
Main Results
2. Let N’ be a geometric t-spanner network of a set S of n points in d.
A (1+)-spanner N of N’ can be computed in O(m + nlogn) time such that N has only O(n) edges.
• Floor function not used. Only indirection.• No restrictions on interpoint distances.
Giri Narasimhan Dagstuhl '04 5
Main Results
3. Let V be a set of points in d with interpoint distances in the range [D, Dk]. We can preprocess V in O(n logn) time and O(n) space such that for any two points p,q V, we can compute in O(1) time,
BIndex(p,q) = log(|pq|/D) without the use of the floor function.
Giri Narasimhan Dagstuhl '04 6
Previous Work
General Weighted GraphsCohen & Zwick ’97, Zwick’98, Dor et al. ’00, Thorup & Zwick ‘01: Preprocess , Space , ApproxKlein ’02 (Planar Networks); Query O(k)
Baswana & Sen ’04 (Unweighted Graphs)
Geometric Graphs & DomainsClarkson ‘87, Arikati et al. ’96, Chen ‘95, Chiang & Mitchell ’99, Chen et al. ’00
Preprocess , Space , Approx 3,Query O(log n)
Giri Narasimhan Dagstuhl '04 7
Basic IdeaPreprocessin
g• Given a t-spanner network N, construct a (1+)-spanner N’ of N with O(n) edges• Build a sequence of p = O(logn) cluster graphs
H1 H2 … Hi … Hp Each Hi has only edges of length in the range (Di-1 tDi] and degree bounded by a constant.
• For query (p,q), find i such that |pq| (Di-1 Di].• Report distance between p and q in Hi.
Search
O(m+nlogn)
O(m+nlogn)
O(1)
Giri Narasimhan Dagstuhl '04 8
Giri Narasimhan Dagstuhl '04 9
Applications
Giri Narasimhan Dagstuhl '04 10
PATH NETWORKSO(nlogn)
CYCLE NETWORKSO(nlogn)
TREE NETWORKO(nlog2n) O(nlogn)
PLANAR NETWORKSO(n3/2logn) O(nlogn)
ARBITRARY NETWORKSO(mn1/log2) [2 - approx]
O(m + nlogn) [(1+)-approx]
Approximate Stretch Factors
Giri Narasimhan Dagstuhl '04 11
Preprocess point set S such that for any query sets Red, Blue S, the approx closest pair in (Red,Blue) can be reported in time
O(m log m), where m = |A|+|B|.
Approximate Closest Pairs
Giri Narasimhan Dagstuhl '04 12
Require that domain be t -rounded.
Preprocessing O(nlogn) Space O(nlogn) Query on vertices O(1) Query on arbitrary points O(nlogn)
SP in Polygonal Domain with Polygonal Obstacles
Giri Narasimhan Dagstuhl '04 13
Open Problems
Output the SP in O(k) time. Reduce the space complexity of O(nlogn). Generalize to arbitrary geometric networks
HARD! SP queries in dynamic spanner graphs.
Add edge(s) to best improve stretch factor of a graph.
Remove edge(s) to get minimum increase of stretch factor.
Giri Narasimhan Dagstuhl '04 14
More Open Problems
Find the center of a given geometric graph.
Given a graph, how to compute a subgraph with minimum stretch factor, such that the subgraph is a Spanning tree, Path, Planar graph
Replace input graph by a set of points. Other applications?
Thanks!
Giri Narasimhan Dagstuhl '04 16
What are Cluster Graphs?
• Cluster graph Hi closely approximates distances in N for vertices (pq) at distance at least Di-1.• Hi has degree bounded by a constant. (Size = O(n))• Shortest path queries for vertices (pq) such that |pq| (Di-1 Di] can be reported in constant time.• All O(log n) cluster graphs of N can be constructed efficiently in O(nlogn) time. (Time and space = O(nlogn))
Giri Narasimhan Dagstuhl '04 17
Constructing Cluster Graphs
Giri Narasimhan Dagstuhl '04 18
Giri Narasimhan Dagstuhl '04 19
Basic IdeaPreprocessin
g• Given a t-spanner network N, construct a (1+)-spanner N’ of N with O(n) edges• Build a sequence of p = O(logn) cluster graphs
H1 H2 … Hi … Hp Each Hi has only edges of length in the range (Di-1 tDi] and degree bounded by a constant.
• For query (p,q), find i such that |pq| (Di-1 Di].• Report distance between p and q in Hi.
Search
O(m+nlogn)
O(m+nlogn)
O(1)