Results 1  10
of
58
Voronoi Diagrams and Delaunay Triangulations
 Computing in Euclidean Geometry
, 1992
"... The Voronoi diagram is a fundamental structure in computationalgeometry and arises naturally in many different fields. This chapter surveys properties of the Voronoi diagram and its geometric dual, the Delaunay triangulation. The emphasis is on practical algorithms for the construction of Voronoi ..."
Abstract

Cited by 198 (3 self)
 Add to MetaCart
The Voronoi diagram is a fundamental structure in computationalgeometry and arises naturally in many different fields. This chapter surveys properties of the Voronoi diagram and its geometric dual, the Delaunay triangulation. The emphasis is on practical algorithms for the construction of Voronoi diagrams. 1 Introduction Let S be a set of n points in ddimensional euclidean space E d . The points of S are called sites. The Voronoi diagram of S splits E d into regions with one region for each site, so that the points in the region for site s2S are closer to s than to any other site in S. The Delaunay triangulation of S is the unique triangulation of S so that there are no elements of S inside the circumsphere of any triangle. Here `triangulation' is extended from the planar usage to arbitrary dimension: a triangulation decomposes the convex hull of S into simplices using elements of S as vertices. The existence and uniqueness of the Delaunay triangulation are perhaps not obvio...
Adaptive Precision FloatingPoint Arithmetic and Fast Robust Geometric Predicates
 Discrete & Computational Geometry
, 1996
"... Exact computer arithmetic has a variety of uses including, but not limited to, the robust implementation of geometric algorithms. This report has three purposes. The first is to offer fast softwarelevel algorithms for exact addition and multiplication of arbitrary precision floatingpoint values. T ..."
Abstract

Cited by 134 (5 self)
 Add to MetaCart
Exact computer arithmetic has a variety of uses including, but not limited to, the robust implementation of geometric algorithms. This report has three purposes. The first is to offer fast softwarelevel algorithms for exact addition and multiplication of arbitrary precision floatingpoint values. The second is to propose a technique for adaptiveprecision arithmetic that can often speed these algorithms when one wishes to perform multiprecision calculations that do not always require exact arithmetic, but must satisfy some error bound. The third is to provide a practical demonstration of these techniques, in the form of implementations of several common geometric calculations whose required degree of accuracy depends on their inputs. These robust geometric predicates are adaptive; their running time depends on the degree of uncertainty of the result, and is usually small. These algorithms work on computers whose floatingpoint arithmetic uses radix two and exact rounding, including machines complying with the IEEE 754 standard. The inputs to the predicates may be arbitrary single or double precision floatingpoint numbers. C code is publicly available for the 2D and 3D orientation and incircle tests, and robust Delaunay triangulation using these tests. Timings of the implementations demonstrate their effectiveness. Supported in part by the Natural Sciences and Engineering Research Council of Canada under a 1967 Science and Engineering Scholarship and by the National Science Foundation under Grant CMS9318163. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either express or implied, of NSERC, NSF, or the U.S. Government. Keywords: arbitrary precision floatingpoint arit...
Efficient Exact Arithmetic for Computational Geometry
 In Proc. 9th Annu. ACM Sympos. Comput. Geom
, 1993
"... We experiment with exact integer arithmetic to implement primitives for geometric algorithms. Naive use of exact arithmeticeither modular or multiprecision integerincreases execution time dramatically over the use of floatingpoint arithmetic. By combining tuned multiprecision integer arithmet ..."
Abstract

Cited by 96 (3 self)
 Add to MetaCart
We experiment with exact integer arithmetic to implement primitives for geometric algorithms. Naive use of exact arithmeticeither modular or multiprecision integerincreases execution time dramatically over the use of floatingpoint arithmetic. By combining tuned multiprecision integer arithmetic and a floatingpoint filter based on interval analysis, we can obtain the effect of exact integer arithmetic at a cost close to that of floatingpoint arithmetic. We describe an experimental expression compiler that conveniently packages our techniques. 1 Introduction Geometric algorithms are usually described using exact arithmetic on real numbers (the "real RAM" model). Since no computer provides exact real arithmetic, programmers implementing geometric algorithms must find some substitution. Floatingpoint arithmetic is a common and convenient substitution, but there are no simple techniques that guarantee the reliability of the resulting program[8]. A few algorithms have been analyz...
The Exact Computation Paradigm
, 1994
"... We describe a paradigm for numerical computing, based on exact computation. This emerging paradigm has many advantages compared to the standard paradigm which is based on fixedprecision. We first survey the literature on multiprecision number packages, a prerequisite for exact computation. Next ..."
Abstract

Cited by 95 (10 self)
 Add to MetaCart
We describe a paradigm for numerical computing, based on exact computation. This emerging paradigm has many advantages compared to the standard paradigm which is based on fixedprecision. We first survey the literature on multiprecision number packages, a prerequisite for exact computation. Next we survey some recent applications of this paradigm. Finally, we outline some basic theory and techniques in this paradigm. 1 This paper will appear as a chapter in the 2nd edition of Computing in Euclidean Geometry, edited by D.Z. Du and F.K. Hwang, published by World Scientific Press, 1994. 1 1 Two Numerical Computing Paradigms Computation has always been intimately associated with numbers: computability theory was early on formulated as a theory of computable numbers, the first computers have been number crunchers and the original massproduced computers were pocket calculators. Although one's first exposure to computers today is likely to be some nonnumerical application, numeri...
Towards Exact Geometric Computation
, 1994
"... Exact computation is assumed in most algorithms in computational geometry. In practice, implementors perform computation in some fixedprecision model, usually the machine floatingpoint arithmetic. Such implementations have many wellknown problems, here informally called "robustness issues". To rec ..."
Abstract

Cited by 90 (6 self)
 Add to MetaCart
Exact computation is assumed in most algorithms in computational geometry. In practice, implementors perform computation in some fixedprecision model, usually the machine floatingpoint arithmetic. Such implementations have many wellknown problems, here informally called "robustness issues". To reconcile theory and practice, authors have suggested that theoretical algorithms ought to be redesigned to become robust under fixedprecision arithmetic. We suggest that in many cases, implementors should make robustness a nonissue by computing exactly. The advantages of exact computation are too many to ignore. Many of the presumed difficulties of exact computation are partly surmountable and partly inherent with the robustness goal. This paper formulates the theoretical framework for exact computation based on algebraic numbers. We then examine the practical support needed to make the exact approach a viable alternative. It turns out that the exact computation paradigm encomp...
Robust Geometric Computation
, 1997
"... Nonrobustness refers to qualitative or catastrophic failures in geometric algorithms arising from numerical errors. Section... ..."
Abstract

Cited by 72 (11 self)
 Add to MetaCart
Nonrobustness refers to qualitative or catastrophic failures in geometric algorithms arising from numerical errors. Section...
Static Analysis Yields Efficient Exact Integer Arithmetic for Computational Geometry
 ACM Trans. Graph
, 1996
"... Geometric algorithms are usually described assuming that arithmetic operations are performed exactly on real numbers. A program implemented using a naive substitution of floatingpoint arithmetic for real arithmetic can fail, since geometric primitives depend upon signevaluation and may not be re ..."
Abstract

Cited by 58 (4 self)
 Add to MetaCart
Geometric algorithms are usually described assuming that arithmetic operations are performed exactly on real numbers. A program implemented using a naive substitution of floatingpoint arithmetic for real arithmetic can fail, since geometric primitives depend upon signevaluation and may not be reliable if evaluated approximately. Geometric primitives are reliable if evaluated exactly with integer arithmetic, but this degrades performance since software extendedprecision arithmetic is required. We describe staticanalysis techniques that reduce the performance cost of exact integer arithmetic used to implement geometric algorithms. We have used the techniques for a number of examples, including linesegment intersection in two dimensions, Delaunay triangulations, and a threedimensional boundarybased polyhedral modeller. In general, the techniques are appropriate for algorithms that use primitives of relatively low algebraic total degree, e.g., those involving flat objects (...
Safe and Effective Determinant Evaluation
 In Proc. 33rd Annu. IEEE Sympos. Found. Comput. Sci
, 1992
"... The problem of evaluating the sign of the determinant of a small matrix arises in many geometric algorithms. Given an n × n matrix A with integer entries, whose columns are all smaller than M in Euclidean norm, the algorithm given here evaluates the sign of the determinant det A exactly. The algorit ..."
Abstract

Cited by 54 (0 self)
 Add to MetaCart
The problem of evaluating the sign of the determinant of a small matrix arises in many geometric algorithms. Given an n × n matrix A with integer entries, whose columns are all smaller than M in Euclidean norm, the algorithm given here evaluates the sign of the determinant det A exactly. The algorithm requires an arithmetic precision of less than 1.5n + 2 lg M bits. The number of arithmetic operations needed is O(n 3) + O(n 2) log OD(A)/β, where OD(A)  det A  is the product of the lengths of the columns of A, and β is the number of “extra ” bits of precision, min{lg(1/u) − 1.1n − 2 lg n − 2, lg N − lg M − 1.5n − 1}, where u is the roundoff error in approximate arithmetic, and N is the largest representable integer. Since OD(A) ≤ M n, the algorithm requires O(n 3 lg M) time, and O(n 3) time when β = Ω(log M). 1
Robust Adaptive FloatingPoint Geometric Predicates
 in Proc. 12th Annu. ACM Sympos. Comput. Geom
, 1996
"... Fast C implementations of four geometric predicates, the 2D and 3D orientation and incircle tests, are publicly available. Their inputs are ordinary single or double precision floatingpoint numbers. They owe their speed to two features. First, they employ new fast algorithms for arbitrary precision ..."
Abstract

Cited by 48 (1 self)
 Add to MetaCart
Fast C implementations of four geometric predicates, the 2D and 3D orientation and incircle tests, are publicly available. Their inputs are ordinary single or double precision floatingpoint numbers. They owe their speed to two features. First, they employ new fast algorithms for arbitrary precision arithmetic that have a strong advantage over other software techniques in computations that manipulate values of extended but small precision. Second, they are adaptive; their running time depends on the degree of uncertainty of the result, and is usually small. These algorithms work on computers whose floatingpoint arithmetic uses radix two and exact rounding, including machines that comply with the IEEE 754 floatingpoint standard. Timings of the predicates, in isolation and embedded in 2D and 3D Delaunay triangulation programs, verify their effectiveness. 1 Introduction Algorithms that make decisions based on geometric tests, such as determining which side of a line a point falls on, ...