The present thesis is a study of some algorithmic aspects of -skeletons. The concept of a -skeleton was introduced by Kirkpatrick and Radke[KR85] as a way of capturing the ``internal shape'' of a planar set of points. Indeed, we get an entire spectrum of shapes by varying the parameter . For a fixed value of ß, the ``internal shape'' is a geometric graph, obtained by joining each pair of points whose -neighborhood is empty.
For , the -neighborhood of a pair of points is the interior of the intersection of two circles of radius ß dist(pi,pj) /2, centered at the points (1-ß/2)pi+(ß/2)pj and (ß/2)pi+(1-ß/2)pj, respectively. For ß in [0,1], it is the interior of the intersection of two circles of radius dist(pi,pj)/(2ß), passing through pi and pj. We denote this neighborhood by luneß(pi,pj). The parameter characterizes the neighborliness of a pair of points.
Let P = {p1,p2,......,pn} be a set of n points in the plane. The -skeleton of is a geometric graph such that for every , the edge if and only if the is empty.
We discuss a sweepline algorithm for constructing a -skeleton for any . The time-complexity of our algorithm is in O(n3/2 log n) for and in , for under the metric for . In the metrics and , our algorithm takes time for any .
The concept of a ß-skeleton have natural generalizations to that of kß-skeletons and additively weighted ß-skeletons. We have shown that the above sweepline method can be extended to construct these geometric graphs too. The time complexity of computing the kß-skeleton is in for ß >= 1 and in for ß in the range [0, 1). The time complexity of computing the weighted ß-skeleton is in for ß >= 1 and in for ß in the range [0, 1).
We have obtained an optimal output-sensitive algorithm for computing a ß-skeleton for any ß >= 2 in metric and Linfinite. The time complexity is in O(n log n + k), where k is the size of the ß-skeleton.
We have presented efficient algorithms for computing the entire spectrum of ß-shapes in metric. This means computing for each pair of points the largest ß value, , for which the ß-neighborhood is empty. Our algorithms are in for values not less than 1 and in time for values greater than or equal to 0. A point that lies in the ß-neighborhood of an edge is a witness to this edge. The quantity K is a count of the number of times that the edges of the initial graph on P are witnessed for ß = infinite. We have also presented algorithms for computing the spectra of of kß-shapes and additively-weighted ß-shapes.
We have extend the definition of ß-skeleton into higher-dimensions. We have shown that the size of the ß-skeleton for ß > 2 is linear in d-dimensional space, for any fixed d. We have presented an efficient algorithm for computing the ß-skeletons for ß > 2.
Full Thesis (PS-gzipped 213K)