Fast algorithms for computing β-skeletons and their relatives
Introduction
In a seminal paper, Toussaint introduced the concept of a neighborhood graph called the relative neighborhood graph (RNG), and argued its utility in extracting a “perceptually meaningful structure” from a given set of points in the plane [1]. Ever since there has been a growing body of research articles on neighborhood graphs and their applications [2], [3], [4], [5], [6], [7], [8], [9], [10]. For an extensive survey of the RNG and its relatives see Ref. [10].
In this paper, we focus on a generalization by Kirkpatrick and Radke who defined a spectrum of neighborhood graphs called β-skeleton, parameterized by β [11].
Let P={p1,p2,…,pn} be a set of n points in the plane. The β-skeleton [11] of P is a geometric graph (P,E) such that for every pi,pj∈P, the edge if and only if the β-lune, luneβ(pi,pj), is empty. The region luneβ(pi,pj) is defined as follows: for β⩾1, it is the interior of the intersection of two circles of radius , centered at the points (1−β/2)pi+(β/2)pj and (β/2)pi+(1−β/2)pj, respectively. For , it is the interior of the intersection of two circles of radius , passing through pi and pj.
The β-skeleton, for β⩾1, is known to be a subgraph of the Delaunay triangulation of P. Lingas [6], Jaromczyk et al. [7] have used this fact to obtain a linear time algorithm for constructing a β-skeleton in the range 1⩽β⩽2 under the distance-metric Lp (1<p<∞), provided β=2 or p=2.
Recently, Rao and Mukhopadhyay [12] presented an time output-sensitive algorithm for computing β-skeleton for any β⩾2 under the metric L1 and L∞, where K is size of the output graph.
In this paper, we present a sweepline algorithm for constructing a β-skeleton for any β⩾0. The time complexity of our algorithm is in for β⩾1 and in for under the metric Lp for 1<p<∞. In the metrics L1 and L∞ our algorithm takes time for any β⩾0.
The above algorithms are based on an efficient solution of the following n-circle problem:
Given a set C of n circles and a set P of n points, report all the circles in C that are empty.
The concept of a β-skeleton have natural generalizations to that of a kβ-skeleton and to additively weighted β-skeleton. We show that the above method can be extended to construct these geometric graphs too.
This paper is organized as follows. In the next section, we present an efficient algorithm for the n-circle problem. In the third section we show how this can be used to compute a β-skeleton for any β⩾0. In the following section, we define the notions of a kβ-skeleton and additively weighted β-skeleton. Algorithms for computing these are presented in 4 , 5 Weighted neighborhood graphs, respectively. We discuss some applications in the sixth section. We conclude in the seventh and final section, providing some pointers to further research.
Section snippets
Preliminaries
One way of solving the n-circle problem is to find, for each circle, a point of P nearest to its centre. This naturally suggests that we compute the Voronoi diagram of P and locate the centre of the circle in a Voronoi polygon. If the site corresponding to this polygon is outside the circle, it is empty; otherwise not. The time complexity of this algorithm is in . The difficulty of applying this solution to our problem is that a lune lacks the central symmetry of a circle.
Another
β-Skeleton
It is well-known that the Delaunay triangulation (DT) [14], is a super-graph of a β-skeleton for β⩾1. Therefore, to compute the β-skeleton, for some β⩾1, we construct DT(P) and prune the edges whose β-lunes are not empty. The Delaunay triangulation can be constructed by any standard algorithm in time. What remains is to find a way to prune the non-empty lunes.
It is easy to extend the solution to the n-circle problem, if circles are replaced by lunes. This was also observed by Su and
kβ-Skeleton
We can generalize the notion of a β-skeleton by relaxing the emptiness criterion and allow the interior of a lune to contain up to k−1 points; we get what is called a kβ-skeleton. The geometric graphs that we get for different values of β⩾1 are all subgraphs of what is called the k-Delaunay graph [16].
The k-Delaunay graph is a generalization of the Delaunay triangulation on n points. The triangulation in this case can be characterized this way: a triangle belongs to the k-Delaunay graph if its
Weighted neighborhood graphs
In this section, we discuss various additively weighted neighborhood graphs. We assign a positive weight wi to each point pi∈P. The weight wi expresses the power of the point pi in the sense that each weighted point pi can be treated as a circle Bi, centered at pi, with radius equal to the weight wi. Thus the weighted distance dw(pi,x), between a point pi∈P and an arbitrary point x, is d(pi,x)−wi if x is outside Bi, and zero otherwise. The weighted distance dw(pi,pj), between any two points pi,p
Applications
An interesting application of the k-RNG has been made to the Euclidean bottleneck matching problem by Chang et al. [17]. In this problem a matching has to be found among n points in the Euclidean plane that minimizes the longest edge. The results of this paper on computing the k-RNG gives an immediate improvement of this result to .
Mirzaian [18] made a very interesting application of the weighted RNG to the problem of Minimum Weight Euclidean Matching. In this problem we are given 2n
Conclusion
In this paper, we have presented an efficient sweepline algorithm for the n-circle problem, and used this to compute β-skeleton, kβ-skeleton, and weighted β-skeleton under the metric Lp for 1<p<∞. In the metrics L1 and L∞, the size of these geometric graphs are in O(n2) for any β. We can compute these graphs in time by starting with the complete graph and pruning the non-empty lunes, following the technique of this paper.
The algorithms presented in this chapter are not optimal. It
About the Author—S.V. RAO received a Bachelors degree in Computer Science and Engineering from Andhra University, Visakhapatnam, India in 1990, a Masters and a Ph.D. degrees in Computer Science and Engineering from Indian Institute of Technology, Kanpur, India, respectively in 1993 and 1999. Presently, he is an Assistant Professor in the Department of Computer Science and Engineering, Indian Institute of Technology, Guwahati, India. His research interests includes Computational Geometry and
References (18)
The relative neighborhood graph of a finite planar set
Pattern Recognition
(1980)A linear-time construction of the relative neighborhood graph from the delaunay triangulation
Comput. Geom. Theory Appl.
(1994)Graphs and mathematical morphology
Signal Processing
(1989)The γ-neighborhood graph
Comput. Geom. Theory Appl.
(1992)- et al.
A framework for computational morphology
- et al.
Computing the k-relative neighborhood graphs in euclidean plane
Pattern Recognition
(1991) The relative neighborhood graph with an application to minimum spanning trees
J. ACM
(1983)- J.W. Jaromczyk, M. Kowaluk, A note on relative neighborhood graphs, Proceedings of 6th ACM Symposium on Computational...
- et al.
On constructing relative neighborhood graphs in euclidean k-dimensional spaces
Computing
(1991)
Cited by (2)
Geometric proximity graphs for improving nearest neighbor methods in instance-based learning and data mining
2005, International Journal of Computational Geometry and ApplicationsK<sup>th</sup> order geometric spanners for wireless ad hoc networks
2011, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
About the Author—S.V. RAO received a Bachelors degree in Computer Science and Engineering from Andhra University, Visakhapatnam, India in 1990, a Masters and a Ph.D. degrees in Computer Science and Engineering from Indian Institute of Technology, Kanpur, India, respectively in 1993 and 1999. Presently, he is an Assistant Professor in the Department of Computer Science and Engineering, Indian Institute of Technology, Guwahati, India. His research interests includes Computational Geometry and Applications: Geographical Information Systems, Image processing, and Pattern Recognition.
About the Author—ASHISH MUKHOPADHYAY received a Masters degree in Applied Mathematics from Calcutta University in 1975 and a Ph.D. from the Indian Institute of Science in 1984. Currently, he is a faculty member in the School of Computer Science, University of Windsor, Canada. His research interests include Computational Geometry, Algorithms and Discrete Mathematics.
- 1
On leave from IIT Kanpur, India.