Numerical stability of simple geometric algorithms in the plane

  • Thomas Ottmann
  • Gerald Thiemt
  • Christian Ullrich
Part of the Lecture Notes in Computer Science book series (LNCS, volume 270)


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.


Computational Geometry Geometric Object Original Point Geometric Algorithm Test Operation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [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
  2. [AH]
    G. Alefeld, J. Herzberger: Introduction to Interval Computation, tr. by J. Rokne, Academic Press, New York, 1983.Google Scholar
  3. [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
  4. [BO]
    J.L. Bentley, Th. Ottmann: Algorithms for reporting and counting geometric intersections, IEEE Transactions on Computers, 28, p. 643–647, 1979.Google Scholar
  5. [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
  6. [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
  7. [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
  8. [KM1]
    U. Kulisch, W.L. Miranker: Computer Arithmetic in Theory and Practice, Academic Press, New York, 1981.Google Scholar
  9. [KM2]
    U. Kulisch, W.L. Miranker (eds): A New Approach to Scientific Computation, Academic Press, New York, 1983.Google Scholar
  10. [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
  11. [M]
    Mathlab Group: MACSYMA Reference Manual, 2 vols., Lab. for Computer Science, Massachusetts Inst. of Technology, Cambridge, MA, 1983.Google Scholar
  12. [Me]
    K. Mehlhorn: Data Structures and Algorithms 3: Multidimensional Searching and Computational Geometry, Springer-Verlag, New York, 1984.Google Scholar
  13. [PS]
    F.P. Preparata, M.I. Shamos: Computational Geometry, Springer-Verlag, N.Y., 1985.Google Scholar
  14. [Ra]
    L. Ramshaw: CSL Notebook Entry: The Braiding of Floating Point Lines, unpublished note, Xerox PARC, Oct. 1982.Google Scholar
  15. [R]
    S.M. Rump: Solving Nonlinear Systems with Least Significant Bit Accuracy, Computing 29, p. 183–200, 1982.Google Scholar
  16. [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
  17. [Th]
    G. Thiemt: Die numerische Stabilität geometrischer Algorithmen, Diploma Thesis, Karlsruhe, Oktober 1986.Google Scholar
  18. [To]
    Toussaint, G. (Ed.): Computational Geometry, Elsevier North Holland, N.Y., 1985.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • Thomas Ottmann
    • 1
  • Gerald Thiemt
    • 1
  • Christian Ullrich
    • 2
  1. 1.Institut für Angewandte Informatik und Formale BeschreibungsverfahrenUniversität KarlsruheKarlsruheWest Germany
  2. 2.Institut für Angewandte MathematikUniversität KarlsruheKarlsruheWest Germany

Personalised recommendations