Academia.eduAcademia.edu

Spanners for geometric intersection graphs with applications

2012, Journal of Computational Geometry

Abstract

A ball graph is an intersection graph of a set of balls with arbitrary radii. Given a real number t > 1, we say that a subgraph G ′ of a graph G is a t-spanner of G, if for every pair of vertices u, v in G, there exists a path in G ′ of length at most t times the distance between u and v in G. In this paper, we consider the problem of efficiently constructing sparse spanners of ball graphs which supports fast shortest path distance queries. We present the first algorithm for constructing spanners of ball graphs. For a disk graph in R 2 , we construct a (1 + ǫ)-spanner for any ǫ > 0 with O(nǫ −2) edges in O(n 4/3+δ ǫ −4/3 log 2/3 S) time, using an efficient partitioning of the plane into squares and solving intersection problems. Here δ is any positive constant, and S is the ratio between the largest and smallest radius. For the special case when the disks all have unit size, we show that the complexity of constructing a (1+ ǫ)-spanner is almost equal to the complexity of constructing a Euclidean minimum spanning tree. The algorithm extends naturally to other "disk-like" objects, also in higher dimensions. The algorithm uses an efficient subdivision of space to construct a sparse graph having many of the same distance properties as the input ball graph. Additionally, the constructed spanners have a small vertex separator decomposition (hereditary). In dimension 2, the disk graph spanner has an O(√ nǫ −3/2 + ǫ −3 log S) separator. The presence of a small separator is then exploited to obtain very efficient data structures for approximate distance queries. The results on geometric graph separators might be of independent interest. For example, since complete Euclidean graphs are just a special case of (unit) ball graphs, our results also provide a new approach for constructing spanners with small separators in these graphs.