Numerical stability of simple geometric algorithms in the plane
In this paper we have shown that the lsba-evaluation of arithmetic expressions provides a solid basis for a clean implementation of geometric primitives which occur in many geometric algorithms. It turns out that it is necessary to have access not only to the computed results but also to the original data from which these results are computed. This implies that in general geometric objects are associated with references to original data.
We extracted the geometric primitives from a large class of algorithms for solving geometric problems in two dimensions. These primitives were implemented such that test operations always yield the correct result and operations to compute geometric objects yield a “best possible” machine representation. A comparison of the efficiency with standard floating point arithmetic shows a loss of efficiency by a factor between two and three on a computer with a software-supported accurate scalar-product.
From a practical point of view it is even more important to solve the numerical problems occurring in algorithms for solving 3-dimensional problems, as, for example, computing the intersection of solids in 3-dimensional space, rotating or translating of spatial geometric objects etc. We hope that the method described in this paper can be considerably extended and leads to a general, solid, and mathematically clean foundation of the numerical aspects in geometric algorithms.
KeywordsComputational Geometry Geometric Object Original Point Geometric Algorithm Test Operation
Unable to display preview. Download preview PDF.
- [A]V. Akman: Shortest Paths Avoiding Polyhedral Obstacles in 3-Dimensional Euclidean Space, IPL-TR-075, Rensselaer Polytechnic Institute, Troy, New York 12181, 1986.Google Scholar
- [AH]G. Alefeld, J. Herzberger: Introduction to Interval Computation, tr. by J. Rokne, Academic Press, New York, 1983.Google Scholar
- [Ber]G.B. Beretta: An implementation of a plane sweep-algorithm on a personal computer, Dr.-Dissertation, Eidgenössische Technische Hochschule Zürich, 1984.Google Scholar
- [BO]J.L. Bentley, Th. Ottmann: Algorithms for reporting and counting geometric intersections, IEEE Transactions on Computers, 28, p. 643–647, 1979.Google Scholar
- [BRUW]G. Bohlender, L.B. Rall, Ch. Ullrich, J. Wolff von Gudenberg: PASCAL-SC: A Microcomputer Language for Scientific Computation, Academic Press, New York, to appear 1987.Google Scholar
- [F]A.R. Forrest: Computational Geometry and Software Engineering: Towards a Geometric Computing Environment, to be published in “State-of-the-Art in Computer Graphics”, Eds. R.A. Earnshaw and D.F. Rogers, Springer-Verlag, March 1987.Google Scholar
- [GS]L. Guibas, I. Stolfi: Primitives for the Manipulation of General Subdivisions and the Computation of Voronoi-Diagrams, ACM Transactions on Graphics, 4 (2), 74–123, 1985.Google Scholar
- [KM1]U. Kulisch, W.L. Miranker: Computer Arithmetic in Theory and Practice, Academic Press, New York, 1981.Google Scholar
- [KM2]U. Kulisch, W.L. Miranker (eds): A New Approach to Scientific Computation, Academic Press, New York, 1983.Google Scholar
- [LP]D.T. Lee, F.P. Preparata: Computational Geometry — A Survey, IEEE Transactions on Computers, vol. C-33, no. 12, 1072–1101, 1984.Google Scholar
- [M]Mathlab Group: MACSYMA Reference Manual, 2 vols., Lab. for Computer Science, Massachusetts Inst. of Technology, Cambridge, MA, 1983.Google Scholar
- [Me]K. Mehlhorn: Data Structures and Algorithms 3: Multidimensional Searching and Computational Geometry, Springer-Verlag, New York, 1984.Google Scholar
- [PS]F.P. Preparata, M.I. Shamos: Computational Geometry, Springer-Verlag, N.Y., 1985.Google Scholar
- [Ra]L. Ramshaw: CSL Notebook Entry: The Braiding of Floating Point Lines, unpublished note, Xerox PARC, Oct. 1982.Google Scholar
- [R]S.M. Rump: Solving Nonlinear Systems with Least Significant Bit Accuracy, Computing 29, p. 183–200, 1982.Google Scholar
- [RB]S.M. Rump, H. Böhm: Least Significant Bit Evaluation of Arithmetic Expressions in Single-Precision, Computing 30/3, p. 189–199, 1983.Google Scholar
- [Th]G. Thiemt: Die numerische Stabilität geometrischer Algorithmen, Diploma Thesis, Karlsruhe, Oktober 1986.Google Scholar
- [To]Toussaint, G. (Ed.): Computational Geometry, Elsevier North Holland, N.Y., 1985.Google Scholar