Results 1  10
of
41
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 146 (5 self)
 Add to MetaCart
(Show Context)
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...
3D Collision Detection: A Survey
 Computers and Graphics
, 2000
"... Many applications in Computer Graphics require fast and robust 3D collision detection algorithms. These algorithms can be grouped into four approaches: spacetime volume intersection, swept volume interference, multiple interference detection and trajectory parameterization. While some approaches ar ..."
Abstract

Cited by 94 (3 self)
 Add to MetaCart
Many applications in Computer Graphics require fast and robust 3D collision detection algorithms. These algorithms can be grouped into four approaches: spacetime volume intersection, swept volume interference, multiple interference detection and trajectory parameterization. While some approaches are linked to a particular object representation scheme (e.g., spacetime volume intersection is particularly suited to a CSG representation), others do not. The multiple interference detection approach has been the most widely used under a variety of sampling strategies, reducing the collision detection problem to multiple calls to static interference tests. In most cases, these tests boil down to detecting intersections between simple geometric entities, such as spheres, boxes aligned with the coordinate axes, or polygons and segments. The computational cost of a collision detection algorithm depends not only on the complexity of the basic interference test used, but also on the ...
Interval arithmetic yields efficient dynamic filters for computational geometry
 Disc. Appl. Maths
"... We discuss floatingpoint filters as a means of restricting the precision needed for arithmetic operations while still computing the exact result. We show that interval techniques can be used to speed up the exact evaluation of geometric predicates and describe an efficient implementation of interva ..."
Abstract

Cited by 59 (12 self)
 Add to MetaCart
We discuss floatingpoint filters as a means of restricting the precision needed for arithmetic operations while still computing the exact result. We show that interval techniques can be used to speed up the exact evaluation of geometric predicates and describe an efficient implementation of interval arithmetic that is strongly influenced by the rounding modes of the widely used IEEE 754 standard. Using this approach we engineer an efficient floatingpoint filter for the computation of the sign of a determinant that works for arbitrary dimensions. We validate our approach experimentally, comparing it with other static, dynamic and semistatic filters. 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 49 (1 self)
 Add to MetaCart
(Show Context)
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, ...
On computing the determinant and Smith form of an integer matrix
 In Proceedings of the 41st Annual Symposium on Foundations of Computer Science
, 2000
"... A probabilistic algorithm is presented to find the determinant of a nonsingular, integer matrix. For a matrix A ¡£ ¢ n ¤ n the algorithm requires O ¥ n 3 ¦ 5 ¥ logn § 4 ¦ 5 § bit operations (assuming for now that entries in A have constant size) using standard matrix and integer arithmetic. Using as ..."
Abstract

Cited by 37 (9 self)
 Add to MetaCart
(Show Context)
A probabilistic algorithm is presented to find the determinant of a nonsingular, integer matrix. For a matrix A ¡£ ¢ n ¤ n the algorithm requires O ¥ n 3 ¦ 5 ¥ logn § 4 ¦ 5 § bit operations (assuming for now that entries in A have constant size) using standard matrix and integer arithmetic. Using asymptotically fast matrix arithmetic, a variant is described which requires O ¥ n 2 ¨ θ © 2 � log 2 nloglogn § bit operations, where two n � n matrices can be multiplied with O ¥ n θ § operations. The determinant is found by computing the Smith form of the integer matrix, an extremely useful canonical form in itself. Our algorithm is probabilistic of the Monte Carlo type. That is, it assumes a source of random bits and on any invocation of the algorithm there is a small probability of error. 1
Efficient exact evaluation of signs of determinants
 IN PROC. 13TH ANNU. ACM SYMPOS. COMPUT. GEOM
, 1997
"... This paper presents a theoretical and experimental study on two different methods to evaluate the sign of a determinant with integer entries. The first one is a method based on the GramSchmidt orthogonalisation process which has been proposed by Clarkson [5]. We review the analysis of Clarkson an ..."
Abstract

Cited by 30 (2 self)
 Add to MetaCart
This paper presents a theoretical and experimental study on two different methods to evaluate the sign of a determinant with integer entries. The first one is a method based on the GramSchmidt orthogonalisation process which has been proposed by Clarkson [5]. We review the analysis of Clarkson and propose a variant of his method. The second method is an extension to n \Theta n determinants of the ABDPY method [1] which works only for 2 \Theta 2 and 3 \Theta 3 determinants. Both methods compute the signs of a n \Theta n determinants whose entries are integers on b bits, by using an exact arithmetic on only b + O(n) bits. Furthermore, both methods are adaptive, dealing quickly with easy cases and resorting to the fulllength computation only for null determinants.
MAPC: A library for Efficient and Exact Manipulation of Algebraic Points and Curves
"... We present MAPC, a library for exact representation of geometric objects  specifically points and algebraic curves in the plane. Our library makes use of several new algorithms, which we present here, including methods for nding the sign of a determinant, finding intersections between two curves, ..."
Abstract

Cited by 29 (8 self)
 Add to MetaCart
We present MAPC, a library for exact representation of geometric objects  specifically points and algebraic curves in the plane. Our library makes use of several new algorithms, which we present here, including methods for nding the sign of a determinant, finding intersections between two curves, and breaking a curve into monotonic segments. These algorithms are used to speed up the underlying computations. The library provides C++ classes that can be used to easily instantiate, manipulate, and perform queries on points and curves in the plane. The point classes can be used to represent points known in a variety of ways (e.g. as exact rational coordinates or algebraic numbers) in a unified manner. The curve class can be used to represent a portion of an algebraic curve. We have used MAPC for applications dealing with algebraic points and curves, including sorting points along a curve, computing arrangement of curves, medial axis computations, and boundary evaluation on curved primitives. As compared to earlier algorithms and implementations utilizing exact arithmetic, our library is able to achieve more than an order of magnitude improvement in performance.
Accurate floatingpoint summation part I: Faithful rounding
 SIAM J. Sci. Comput
"... Abstract. Given a vector of floatingpoint numbers with exact sum s, we present an algorithm for calculating a faithful rounding of s, i.e. the result is one of the immediate floatingpoint neighbors of s. If the sum s is a floatingpoint number, we prove that this is the result of our algorithm. Th ..."
Abstract

Cited by 27 (7 self)
 Add to MetaCart
(Show Context)
Abstract. Given a vector of floatingpoint numbers with exact sum s, we present an algorithm for calculating a faithful rounding of s, i.e. the result is one of the immediate floatingpoint neighbors of s. If the sum s is a floatingpoint number, we prove that this is the result of our algorithm. The algorithm adapts to the condition number of the sum, i.e. it is fast for mildly conditioned sums with slowly increasing computing time proportional to the logarithm of the condition number. All statements are also true in the presence of underflow. The algorithm does not depend on the exponent range. Our algorithm is fast in terms of measured computing time because it allows good instructionlevel parallelism, it neither requires special operations such as access to mantissa or exponent, it contains no branch in the inner loop, nor does it require some extra precision: The only operations used are standard floatingpoint addition, subtraction and multiplication in one working precision, for example double precision. Certain constants used in the algorithm are proved to be optimal.