On Removing Non-degeneracy Assumptions in Computational Geometry

Existing methods for removing degeneracies in computational geometry can be classified as either approximation or perturbation methods. These methods give the implementer two rather unsatisfactory choices: find an approximate solution to the original problem given, or find an exact solution to an approximation of the original problem. We address an alternative approach that has received little attention in the computational geometry literature. Often a typical computational geometry paper will make a non-degeneracy assumption that can in fact be removed (without perturbing the input) by a global rigid transformation of the input. In these situations, by applying suitable pre- and post- processing steps to an algorithm, we obtain the exact solution to the original problem using the algorithm that assumes a non-degenerate input, even when that input is in fact degenerate.

[1]  Kevin Q. Brown Geometric transforms for fast geometric algorithms , 1979 .

[2]  Satoru Kawai,et al.  A simple method for computing general position in displaying three-dimensional objects , 1988, Comput. Vis. Graph. Image Process..

[3]  Bruce Randall Donald,et al.  A rational rotation method for robust geometric algorithms , 1992, SCG '92.

[4]  Herbert Edelsbrunner,et al.  Simulation of simplicity: a technique to cope with degenerate cases in geometric algorithms , 1988, SCG '88.

[5]  Herbert Edelsbrunner,et al.  Algorithms in Combinatorial Geometry , 1987, EATCS Monographs in Theoretical Computer Science.

[6]  Charles S. Peskin,et al.  On the construction of the Voronoi mesh on a sphere , 1985 .

[7]  M. Iri,et al.  Construction of the Voronoi diagram for 'one million' generators in single-precision arithmetic , 1992, Proc. IEEE.

[8]  Endre Szemerédi,et al.  An Optimal-Time Algorithm for Slope Selection , 1989, SIAM J. Comput..

[9]  N. Megiddo Linear-time algorithms for linear programming in R3 and related problems , 1982, FOCS 1982.

[10]  Nimrod Megiddo,et al.  Linear-time algorithms for linear programming in R3 and related problems , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[11]  Azriel Rosenfeld,et al.  Polygons in Three Dimensions , 1994, J. Vis. Commun. Image Represent..

[12]  Prosenjit Bose,et al.  Drawing Nice Projections of Objects in Space , 1999, J. Vis. Commun. Image Represent..

[13]  Kurt Mehlhorn,et al.  On degeneracy in geometric computations , 1994, SODA '94.

[14]  John F. Canny,et al.  A General Approach to Removing Degeneracies , 1995, SIAM J. Comput..

[15]  Joseph S. B. Mitchell,et al.  Generating Random x-Monotone Polygons with Given Vertices , 1994, Canadian Conference on Computational Geometry.

[16]  Andrew M. Day The implementation of an algorithm to find the convex hull of a set of three-dimensional points , 1990, TOGS.

[17]  Nimrod Megiddo,et al.  Linear-Time Algorithms for Linear Programming in R^3 and Related Problems , 1982, FOCS.

[18]  Raimund Seidel,et al.  Constructing arrangements of lines and hyperplanes with applications , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[19]  Micha Sharir,et al.  Sharp upper and lower bounds on the length of general Davenport-Schinzel sequences , 2015, J. Comb. Theory, Ser. A.

[20]  Leonidas J. Guibas,et al.  A linear-time algorithm for computing the voronoi diagram of a convex polygon , 1989, Discret. Comput. Geom..

[21]  Raimund Seidel,et al.  The Nature and Meaning of Perturbations in Geometric Computing , 1994, STACS.