## Efficient Collision Detection for Animation and Robotics (1993)

Citations: | 115 - 19 self |

### BibTeX

@TECHREPORT{Lin93efficientcollision,

author = {Ming C. Lin},

title = {Efficient Collision Detection for Animation and Robotics},

institution = {},

year = {1993}

}

### Years of Citing Articles

### OpenURL

### Abstract

We present efficient algorithms for collision detection and contact determination between geometric models, described by linear or curved boundaries, undergoing rigid motion. The heart of our collision detection algorithm is a simple and fast incremental method to compute the distance between two convex polyhedra. It utilizes convexity to establish some local applicability criteria for verifying the closest features. A preprocessing procedure is used to subdivide each feature's neighboring features to a constant size and thus guarantee expected constant running time for each test. The expected constant time performance is an attribute from exploiting the geometric coherence and locality. Let n be the total number of features, the expected run time is between O( p n) and O(n) ...

### Citations

2215 |
Robot Motion Planning
- Latombe
- 1991
(Show Context)
Citation Context ...reas like robot motion planning, dynamic simulation, virtual reality applications and it has been extensively studied in robotics, computational geometry, and computer graphics for more than a decade =-=[3, 4, 11, 13, 17, 41, 43, 45, 51, 53, 63]-=-. Yet, there is no practical, efficient algorithm available yet for general geometric models to perform collision detection in real time. Recently, Pentland has listed collision detection as one of th... |

2102 |
Matrix Computations
- Golub
- 1996
(Show Context)
Citation Context ...l. As a result, the new set of roots can be computed using local methods only. We can either use Newton's method to compute the roots of the new set of algebraic equations or inverse power iterations =-=[42]-=- to compute the eigenvalues of the new matrix obtained using resultant formulation. 21 Chapter 3 An Incremental Distance Computation Algorithm In this chapter we present a simple and efficient method ... |

972 |
Curves and Surfaces for Computer Aided Geometric Design, fifth ed
- Farin
- 2001
(Show Context)
Citation Context ... described using polynomials. The class of parametric and implicit surfaces described in terms of piecewise polynomial equations is currently considered the state of the art for modeling applications =-=[35, 46]-=-. These include free-form surfaces described using spline patches, primitive objects like polyhedra, quadrics surfaces (like cones, ellipsoids), 18 torus and their combinations obtained using CSG oper... |

711 |
Algorithms in Combinatorial Geometry
- Edelsbrunner
- 1987
(Show Context)
Citation Context ...agram contains all the information necessary to solve the proximity problems given a set of points in R 2 . A similar idea applies to the same problem in three-dimensional or higher dimensional space =-=[15, 32]-=-. The extension of the Voronoi diagram to higher dimensional features (instead of points) is called the generalized Voronoi diagram, i.e. the set of points closest to a feature, e.g. that of a polyhed... |

514 |
The Complexity of Robot Motion Planning
- Canny
- 1988
(Show Context)
Citation Context ...nipulators, (i) local methods, such as artificial potential field methods [50], which are usually fast but are not guaranteed to find a path, and (ii) global methods, like the first Roadmap Algorithm =-=[18]-=-, which is guaranteed to find a path but may spend a long time doing it. In this chapter, we present an algorithm which has characteristics of both. Our method is an incremental construction of a skel... |

480 | Computational Geometry
- Preparata, Shamos
- 1985
(Show Context)
Citation Context ...thesis, as well as the object modeling for the input to our collision detection algorithms. Some of the materials presented in this chapter can be found in the books by Hoffmann, Preparata and Shamos =-=[46, 71]-=-. The set of models we used include rigid polyhedra and objects with surfaces described by rational spline or piecewise algebraic functions. No deformation of the objects is assumed under motion or ex... |

313 |
An algorithm for planning collision-free paths among polyhedral obstacles
- Lozano-Pérez, Wesley
- 1979
(Show Context)
Citation Context ...reas like robot motion planning, dynamic simulation, virtual reality applications and it has been extensively studied in robotics, computational geometry, and computer graphics for more than a decade =-=[3, 4, 11, 13, 17, 41, 43, 45, 51, 53, 63]-=-. Yet, there is no practical, efficient algorithm available yet for general geometric models to perform collision detection in real time. Recently, Pentland has listed collision detection as one of th... |

298 | A fast procedure for computing the distance between complex objects in three-dimensional space
- Gilbert, Johnson, et al.
- 1988
(Show Context)
Citation Context ...reas like robot motion planning, dynamic simulation, virtual reality applications and it has been extensively studied in robotics, computational geometry, and computer graphics for more than a decade =-=[3, 4, 11, 13, 17, 41, 43, 45, 51, 53, 63]-=-. Yet, there is no practical, efficient algorithm available yet for general geometric models to perform collision detection in real time. Recently, Pentland has listed collision detection as one of th... |

245 | Collision detection and response for computer animation
- Moore, Wilhelms
- 1988
(Show Context)
Citation Context ...en two or more objects is fundamental to computer animation, physical based modeling, molecular modeling, computer simulated environments (e.g. virtual environments) and robot motion planning as well =-=[3, 7, 12, 20, 43, 45, 63, 69, 70, 72, 82, 85]-=-. (Depending on the content of applications, it is also called with many different names, such as interference detection, clash detection, intersection tests, etc.) In robotics, an essential component... |

207 |
On the `piano movers' problem II: General technique for computing topological properties of real algebraic manifolds
- Schwartz, Sharir
- 1983
(Show Context)
Citation Context ...skeleton we define here is a subset of a roadmap (in the sense of [18]) of this hypersurface. This work builds on a considerable volume of work in both global motion planning methods [18] [54], [73], =-=[78]-=-, and local planners, [50]. Our method shares a common theme with the work of Barraquand and Latombe [6] in that it attempts to use a local potential field planner for speed with some procedure for es... |

203 |
Linear-time algorithms for linear programming in R 3 and related problems
- Megiddo
- 1983
(Show Context)
Citation Context ...of polyhedron A that specifies that the vertex is on one side of the plane, and an inequality for each vertex of polyhedron B that specifies that it is on the other side. Megiddo and Dyers work [30], =-=[58]-=-, [59] showed that linear programming is solvable in linear time for any fixed number of variables. More recent work by Seidel [79] has shown that linear time linear programming algorithms are quite p... |

198 | Linear programming in linear time when the dimension is fixed
- Megiddo
- 1984
(Show Context)
Citation Context ...yhedron A that specifies that the vertex is on one side of the plane, and an inequality for each vertex of polyhedron B that specifies that it is on the other side. Megiddo and Dyers work [30], [58], =-=[59]-=- showed that linear programming is solvable in linear time for any fixed number of variables. More recent work by Seidel [79] has shown that linear time linear programming algorithms are quite practic... |

189 |
Small-dimensional linear programming and convex hulls made easy
- Seidel
- 1991
(Show Context)
Citation Context ...specifies that it is on the other side. Megiddo and Dyers work [30], [58], [59] showed that linear programming is solvable in linear time for any fixed number of variables. More recent work by Seidel =-=[79]-=- has shown that linear time linear programming algorithms are quite practical for a small number of variables. The algorithm of [79] has been implemented, and seems fast in practice. Using linear-time... |

184 |
Mathematical elements of computer graphics
- Rogers, Adams
- 1989
(Show Context)
Citation Context ...or collision response [34]. In one of the earlier animation papers addressing the issue of collision detection, Moore and Wilhelms [63] mentioned the method based on the Cyrus-Beck clipping algorithm =-=[74]-=-, which provides a simple, robust alternative but runs in O(n 2 m 2 ) time for m polyhedra and n vertices per polyhedron. The method works by checking whether a point lies inside a polygon or polyhedr... |

173 | Realistic animation of rigid bodies
- Hahn
- 1988
(Show Context)
Citation Context ...en two or more objects is fundamental to computer animation, physical based modeling, molecular modeling, computer simulated environments (e.g. virtual environments) and robot motion planning as well =-=[3, 7, 12, 20, 43, 45, 63, 69, 70, 72, 82, 85]-=-. (Depending on the content of applications, it is also called with many different names, such as interference detection, clash detection, intersection tests, etc.) In robotics, an essential component... |

172 |
A modeling system based on dynamic constraints
- Barzel, Barr
- 1988
(Show Context)
Citation Context ...en two or more objects is fundamental to computer animation, physical based modeling, molecular modeling, computer simulated environments (e.g. virtual environments) and robot motion planning as well =-=[3, 7, 12, 20, 43, 45, 63, 69, 70, 72, 82, 85]-=-. (Depending on the content of applications, it is also called with many different names, such as interference detection, clash detection, intersection tests, etc.) In robotics, an essential component... |

172 |
Good vibrations: modal dynamics for graphics and animation
- Pentland, Williams
- 1989
(Show Context)
Citation Context |

147 | Curved surfaces and coherence for non-penetrating rigid body simulation, Computer Graphics
- Baraff
- 1990
(Show Context)
Citation Context |

143 |
Geometric and solid modeling
- Hoffmann
- 1989
(Show Context)
Citation Context ...f has extended it to dynamic environments as well. However, for commonly used spline patches computing and representing the implicit representations is computationally expensive as stated by Hoffmann =-=[46]-=-. Both algorithms, [29, 46], expect a closed form expression of motion as a function of time. In [70], Pentland and Williams proposes using implicit functions to represent shape and the property of th... |

140 | On the Betti numbers of real varieties
- Milnor
- 1964
(Show Context)
Citation Context ...the number of critical points is (2d) k 0 @ n + k k 1 A = O((2d) k n k ) where d is the maximum degree of constraint polynomial equations. This is an upper bound on the number of critical points from =-=[61]-=- and [84]. Therefore, for a given robot (with fixed complexity), there are at most O((2d) k n k ) critical points in terms 116 of n, where k is the dimension of configuration space and n is the number... |

130 |
Set operations on polyhedra using binary space partitioning trees
- Thibault, Naylor
- 1987
(Show Context)
Citation Context ...s or applications. 5.3.1 BSP-Trees and Octrees One of the commonly used tree structure is BSP-tree (binary space partitioning tree) to speed up intersection tests in CSG (constructive solid geometry) =-=[83]-=-. This approach construct a tree from separating planes at each node recursively. It partitions each object into groups of parts which are close together in binary space. When, the separation planes a... |

127 | Dynamic simulation of non-penetrating flexible bodies
- Baraff, Witkin
- 1992
(Show Context)
Citation Context ...ally too expensive. Unless we use specialized parallel machines to simulate the motions, its speed is not satisfactory. Baraff and Witkin use polyhedral approximation to handle the deformable objects =-=[5]-=- for the purpose of collision detection. If the model is very refined, this approach may yield reasonable results; however, even with the use of coherence based on a culling step to reduce the number ... |

111 |
Collision detection for moving polyhedra
- Canny
- 1986
(Show Context)
Citation Context |

110 | Fast Animation and Control of Nonrigid Structures
- Witkin, Welch
- 1990
(Show Context)
Citation Context ...es among human participants and the force feedback devices. It contributes to realistic portrayal of autonomous movements of all virtual objects in the synthetic environments. Most dynamic simulators =-=[4, 7, 25, 88, 89]-=- make simplification of models in simulating the physics of translating and rotating objects, and mostly on frictionless impacts. Recently, Keller applied Routh's frictional impact equations [75] to a... |

107 | Determining the separation of preprocessed polyhedra - a unified approach
- Dobkin, Kirkpatrick
- 1990
(Show Context)
Citation Context ...ision detection and the related problem of determining minimum distance has a long history. It has been considered in both static and dynamic (moving objects) versions in [3], [11], [13], [17], [26], =-=[27], [39], [4-=-0], [41], [65]. One of the earlier survey on "clash detection" was presented by Cameron [12]. He mentioned three different approaches for dynamic collision detection. One of them is to perfo... |

101 |
Interval arithmetic and recursive subdivision for implicit functions and constructive solid geometry, Computer Graphics
- Duff
- 1992
(Show Context)
Citation Context ...he algorithm uses subdivision technique in the resulting space and can therefore be slow. A similar method using interval arithmetic and subdivision has been presented for collision detection by Duff =-=[29]-=-. Duff has extended it to dynamic environments as well. However, for commonly used spline patches computing and representing the implicit representations is computationally expensive as stated by Hoff... |

98 |
Issues in computing contact forces for non-penetrating rigid bodies
- Baraff
- 1993
(Show Context)
Citation Context ...es among human participants and the force feedback devices. It contributes to realistic portrayal of autonomous movements of all virtual objects in the synthetic environments. Most dynamic simulators =-=[4, 7, 25, 88, 89]-=- make simplification of models in simulating the physics of translating and rotating objects, and mostly on frictionless impacts. Recently, Keller applied Routh's frictional impact equations [75] to a... |

94 | Interactive dynamics
- Witkin, Gleicher, et al.
(Show Context)
Citation Context ...es among human participants and the force feedback devices. It contributes to realistic portrayal of autonomous movements of all virtual objects in the synthetic environments. Most dynamic simulators =-=[4, 7, 25, 88, 89]-=- make simplification of models in simulating the physics of translating and rotating objects, and mostly on frictionless impacts. Recently, Keller applied Routh's frictional impact equations [75] to a... |

93 |
l’homologie des variétés algébriques réelles, Differential and Combinatorial Topology (A Symposium in Honor of Marston Morse
- Thom, Sur
- 1965
(Show Context)
Citation Context ...r of critical points is (2d) k 0 @ n + k k 1 A = O((2d) k n k ) where d is the maximum degree of constraint polynomial equations. This is an upper bound on the number of critical points from [61] and =-=[84]-=-. Therefore, for a given robot (with fixed complexity), there are at most O((2d) k n k ) critical points in terms 116 of n, where k is the dimension of configuration space and n is the number of obsta... |

90 |
A linear algorithm for determining the separation of convex polyhedra
- Dobkin, Kirkpatrick
- 1985
(Show Context)
Citation Context ...k Collision detection and the related problem of determining minimum distance has a long history. It has been considered in both static and dynamic (moving objects) versions in [3], [11], [13], [17], =-=[26], [27], [3-=-9], [40], [41], [65]. One of the earlier survey on "clash detection" was presented by Cameron [12]. He mentioned three different approaches for dynamic collision detection. One of them is to... |

77 | An efficient algorithm for the sparse mixed resultant
- Canny, Emiris
- 1993
(Show Context)
Citation Context ...und with Bernstein bound [8]. The Bernstein bound for Eqn. 4.4 is n 2 (n 2 + 3)(n \Gamma 1) 2 . Canny and Emiris calculate the Bernstein bounds efficiently by using sparse mixed resultant formulation =-=[16]-=-. For example, the Bernstein bounds 2 for the case of n = 2; 3; 4; 5; 6; 7; 8; 9 are 28; 432; 2736; 11200; 35100; 91728; 210112; 435456, while the Bezout bounds are 64; 1296; 9216; 40000; 129600; 3457... |

72 | Convex partitions of polyhedra: a lower bound and worst-case optimal algorithm
- Chazelle
- 1984
(Show Context)
Citation Context ... n is the number of vertices and r is the number of reflex edges of the original 23 nonconvex object [23, 2]. In general, a polytope of n vertices can always be partitioned into O(n 2 ) convex pieces =-=[22]-=-. Given the object representation and data structure for convex polyhedra described in Chapter 2, here we will define the term closest feature pair which we quote frequently in our description of the ... |

70 |
Generalized characteristic polynomials
- Canny
- 1990
(Show Context)
Citation Context ...equations which are zero on S ff , the x 2 ; : : : ; x k are coordinates which are orthogonal to x 1 , and ffl is an infinitesimal that is used to simplify the computation (see [18]). It can be shown =-=[21]-=- that the solutions of interest can be recovered from the lowest degree coefficient in ffl of the resultant of this system. This normally involves 99 computing a symbolic determinant which is a polyno... |

67 | Interval methods for multi-point collisions between time dependent curved surfaces
- Snyder
- 1993
(Show Context)
Citation Context ...for accurate computations. In the context of finite precision arithmetic, the main approaches are based on resultant and matrix computations [55], continua20 tion methods [64] and interval arithmetic =-=[29, 81]-=-. The recently developed algorithm based on resultants and matrix computations has been shown to be very fast and accurate on many geometric problems and is reasonably simple to implement using linear... |

59 | Determining the minimum translational distance between two convex polyhedra
- Cameron, Culley
(Show Context)
Citation Context |

54 | A general approach to removing degeneracies
- Emeris, Canny
- 1995
(Show Context)
Citation Context ...mbolic determinant which is a polynomial in ffl [57]. But a more practical approach is to recover only the lowest coefficient in ffl by using straight line program representations and differentiating =-=[33]-=-. To enumerate all the interesting critical points is computationally expensive, since we have to solve O(n (k\Gamma1) ) systems of non-linear equations. Thus, we also plan to experiment with randomly... |

53 | An opportunistic global path planner
- Canny, Lin
- 1990
(Show Context)
Citation Context |

50 | Computing road maps in general semi-algebraic sets
- Canny
- 1993
(Show Context)
Citation Context ...ail in [18] where it is shown that they can be computed in time O(n k log n(d O(n 2 ) )) for a robot with k degrees of freedom, and where free space is defined by n polynomial constraints of degree d =-=[14]-=-. But n k may still be too large for many applications, and in many cases the free space is much simpler than its worst case complexity, which is O(n k ). We would like to exploit this simplicity to t... |

50 |
Point location in fat subdivisions
- OVERMARS
- 1992
(Show Context)
Citation Context ...t the robot manipulators in most situations) are moving, then rectangular bounding boxes are preferable. In a more dynamic environment like a vibrating parts feeder where all objects are rather "=-=fat" [68]-=- and bouncing around, then spherical bounding boxes are more desirable. If the objects are concave or articulated, then a subpart-hierarchical bounding box representation (similar to subpart-hierarchi... |

46 |
Interference detection among solids and surfaces
- Boyse
- 1979
(Show Context)
Citation Context |

46 |
Computing the distance between general convex objects in three-dimensional space
- Gilbert, Foo
- 1990
(Show Context)
Citation Context ...en two objects, Gilbert and his collaborators computed the minimum distance between two convex objects with an expected linear time algorithm and used it for collision detection. Our work shares with =-=[38]-=-, [39], and [41] the calculation and maintenance of closest points during incremental motion. But whereas [38], [39], and [41] require expected linear time to verify the closest points, we use the pro... |

44 |
A new approach to rectangle intersections, part
- Edelsbrunner
- 1983
(Show Context)
Citation Context ...n computational geometry, there are several algorithms which can solve the overlapping problem for d-dimensional bounding boxes in O(nlog d\Gamma1 n+s) time where s is the number of pairwise overlaps =-=[31, 47, 80]-=-. This bound can be improved using coherence. Let a one-dimensional bounding box be [b; e] where b and e are the real numbers representing the beginning and ending points. To determine all pairs of ov... |

44 |
Surface algorithms using bounds on derivatives
- Filip, Magedson, et al.
- 1986
(Show Context)
Citation Context ...ther a simple mesh generation algorithm or an adaptive subdivision of the surfaces. Given a user defined ffl, algorithms for generating such meshes are highlighted for parametric B-spline surfaces in =-=[36]-=- and for algebraic surfaces in [44]. In our implementation we used an inscribed polygonal approximation to the surface boundary. We use the ffl-polytope approximations for convex surfaces only. In suc... |

44 |
Adaptive polygonalization of implicitly defined surfaces
- Hall, Warren
- 1990
(Show Context)
Citation Context ...ithm or an adaptive subdivision of the surfaces. Given a user defined ffl, algorithms for generating such meshes are highlighted for parametric B-spline surfaces in [36] and for algebraic surfaces in =-=[44]-=-. In our implementation we used an inscribed polygonal approximation to the surface boundary. We use the ffl-polytope approximations for convex surfaces only. In such cases the resulting polytope is c... |

42 |
Some NP-hard Polygon Decomposition Problems
- O'Rourke, Supowit
- 1983
(Show Context)
Citation Context ... any special format, we can use 123 a convex decomposition module which does not necessarily give us an optimal convex decomposition of the non-convex objects, since the problem itself is NP-complete =-=[52, 67, 22, 76]-=-. Therefore, applying our sub-part hierarchical tree representation directly to the output of a non-optimal convex decomposition routine may not yield satisfactory results for the purpose of collision... |

42 | Interactive collision detection for molecular graphics
- Turk
- 1989
(Show Context)
Citation Context |

41 |
Distance functions and their application to robot path planning in the presence of obstacles
- Gilbert, Johnson
- 1985
(Show Context)
Citation Context ...ion and the related problem of determining minimum distance has a long history. It has been considered in both static and dynamic (moving objects) versions in [3], [11], [13], [17], [26], [27], [39], =-=[40], [41], [6-=-5]. One of the earlier survey on "clash detection" was presented by Cameron [12]. He mentioned three different approaches for dynamic collision detection. One of them is to perform static co... |

40 | A study of the clash detection problem in robotics
- Cameron
- 1985
(Show Context)
Citation Context |

40 |
A planning system for robot construction tasks
- Fahlman
- 1974
(Show Context)
Citation Context ... [17]) solve the problem in more generality than is necessary for computer animation; while others do not easily produce the exact collision points and contact normal direction for collision response =-=[34]-=-. In one of the earlier animation papers addressing the issue of collision detection, Moore and Wilhelms [63] mentioned the method based on the Cyrus-Beck clipping algorithm [74], which provides a sim... |

40 |
A New Linear Algorithm for Intersecting Convex
- O’Rourke
- 1982
(Show Context)
Citation Context ...ygon and containing an edge in the polygon's boundary. This approach runs in O(N 2 ) time where N is the number of edges of each polygon. 38 An elegant approach which runs in O(M + N) can be found in =-=[66, 71]-=-, where the two polygons A and B each has M , N vertices respectively. This approach not only determines whether two convex polygon intersect or not, it also finds the intersections between them. The ... |