300 likes | 434 Views
Approximate Distance Oracles for Graphs with Dense Clusters. Mattias Andersson Joachim Gudmundsson Christos Levcopoulos. Motivation. Distance oracles – Dense Clusters. p. q. Distance oracles – Dense Clusters. Distance oracles – Dense Clusters. r(q). p. q. r(p).
E N D
Approximate Distance Oracles for Graphs with Dense Clusters Mattias Andersson Joachim Gudmundsson Christos Levcopoulos
Distance oracles – Dense Clusters r(q) p q r(p)
Distance oracles – Dense Clusters : Airport M : Set of edges connecting airports
Problem definition • Input • Graph G = (V, E) • Islands of t-spanners • Edges connecting Islands • Constant e • Output • Representative points • Distance matrix
Queries • Input • vertices p and q • Output • Path between p and q • Length at most (1+e) * OPT
Distance oracles • [Thorup and Zwick, 2001] • Uses data structure • O(kmn1/k) time • O(kn1+1/k) space • Computes (2k-1) approximate • solutions in O(k) time • distance oracle
Distance oracles – Geometric version • [Gudmundsson et al., 2002] • distance oracle, geometric query version. • Input: t-spanner graph • Data structure • O(n log n) space • O(m + n log n) time • Answers approx. queries in constant time
Theorem: A distance oracle for graphs consisting • of islands of t-spanners • answers (1+ε)-approx. queries in O(1) time • datastructure: • O(M2 + n log n) space. • O(m + (M2 + n) log n) time. Results
Representative points r(p) p
O(# airports) repr. points O (n log n) time Representative points
Distance matrix • Using Dijkstras on input graph G Too time consuming
Approximate graph • For each island: • Construct distance oracle A • Consider Airports and Repr. Points • Compute WSPD • Add egde e between each pair u,v • |e| = A(u, v)
Approximate graph • Add M (edges connecting airports) • Graph G’: • O(|M|) edges and vertices
Distance oracles – Dense Clusters • Dijkstras • O(|M|2 log (|M|) time • O(|M|2) space
q p Query: same island • Use [Gudmundsson et al., 2002] • Each island is a t-spanner
Query: different islands p r(p) r(q) q |p, r(p)|ε + |r(p), r(q)|ε + |r(q), q|ε [Gudmundsson et al., 2002] [Gudmundsson et al., 2002]
Summary Total: O(m+(|M2|+n) log n) time O(|M2| + n log n) space
Proof r(p) r(q) p q
O(# airports) repr. points O (n log n ) time Representative points V’ V
[Krznaric, Levcopoulos, 1995] : Hierarchy of clusters can be computed in O(n log n) time and space. Hierarchy of clusters
Doughnuts O(#airports) clusters => O(#airports) doughnuts
Inner cells Each cluster ’pays for’ a constant number of inner cells
Theorem: A distance oracle for graphs consisting • of islands of t-spanners • answers (1+ε)-approx. queries in O(1) time • datastructure: • O(M2 + n log n) space. • O(m + (M2 + n) log n) time. Results