190 likes | 314 Views
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. Problem.
E N D
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
Problem Preprocess a geometric spanner network so that approximate shortest path lengths between two query vertices can be reported efficiently (using subquadratic space). Dagstuhl '04
Main Results • 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. Dagstuhl '04
Main Results • 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. Dagstuhl '04
Main Results • 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,qV, we can compute in O(1) time, BIndex(p,q) =log(|pq|/D) without the use of the floor function. Dagstuhl '04
Previous Work • General Weighted Graphs Cohen & Zwick ’97, Zwick’98, Dor et al. ’00, Thorup & Zwick ‘01: Preprocess, Space, Approx Klein ’02 (Planar Networks); QueryO(k) Baswana & Sen ’04 (Unweighted Graphs) • Geometric Graphs & Domains Clarkson ‘87, Arikati et al. ’96, Chen ‘95, Chiang & Mitchell ’99,Chen et al. ’00 Preprocess, Space, Approx 3, QueryO(log n) Dagstuhl '04
Basic Idea Preprocessing • 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 Hihas only edges of length in the range • (Di-1tDi] 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. O(m+nlogn) O(m+nlogn) Search O(1) Dagstuhl '04
Applications Dagstuhl '04
Approximate Stretch Factors • PATH NETWORKS O(nlogn) • CYCLE NETWORKS O(nlogn) • TREE NETWORK O(nlog2n) O(nlogn) • PLANAR NETWORKS O(n3/2logn) O(nlogn) • ARBITRARY NETWORKS O(mn1/log2) [2 - approx] O(m + nlogn) [(1+e)-approx] Dagstuhl '04
Approximate Closest Pairs • 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|. Dagstuhl '04
SP in Polygonal Domain with Polygonal Obstacles Require that domain be t -rounded. • PreprocessingO(nlogn) • Space O(nlogn) • Query on verticesO(1) • Query on arbitrary pointsO(nlogn) Dagstuhl '04
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. Dagstuhl '04
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? Dagstuhl '04
What are Cluster Graphs? • Cluster graph Hiclosely 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)) Dagstuhl '04
Constructing Cluster Graphs Dagstuhl '04
Basic Idea Preprocessing • 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 Hihas only edges of length in the range • (Di-1tDi] 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. O(m+nlogn) O(m+nlogn) Search O(1) Dagstuhl '04