Humanoid Robotics: A Reference pp 1-24 | Cite as

# Collision Detection

- 471 Downloads

## Abstract

In robotics, a collision or proximity query reports geometric information about the relative configuration or placement of two objects. Some common examples of such queries include checking whether two objects overlap in space, testing if their boundaries intersect, or computing the minimum Euclidean separation distance between their boundaries. Hundreds of papers have been published on different aspects of these queries in robotics and related areas such as computer-aided design and manufacturing, computational geometry, computer graphics, and virtual environments. These queries arise in different robotic applications, including robot motion planning, collision avoidance, grasping, manipulation, control, dynamic simulation, human-robot interaction, haptic rendering, and more. For example, in motion planning for a humanoid robot, it is critical that the planned motion should not result in any collisions between the robot and the surrounding obstacles. At the same time, there should be no self-collisions between different links of the robot (see Fig. 1). The robot’s linkages should not pass through each other, and objects in the environment should move as expected when pushed, pulled, or grasped by the robot. Such actions require fast and accurate collision detection between the geometric representations of both the robot(s) and objects in the scene. Another example is multiple-robot interaction, where the proximity relationships between all possible pairs of robot bodies need to be measured and maintained to realize plausible interaction among the robots. In Fig. 2, the motion of each Nao robot is tracked so as to maintain the safety distance between the two robots to generate physically plausible robotic interactions.

## Keywords

Collision detection Separation distance Penetration depth Generalized penetration depth Continuous collision detection Minkowski sum Voronoi region Bounding volume hierarchy## References

- 1.K. Abdel-Malekl, D. Blackmore, K. Joy, Swept volumes: foundations, perspectives, and applications. Int. J. Shape Model. 87–127 (2002)Google Scholar
- 2.P. Agarwal, L. Guibas, S. Har-Peled, A. Rabinovitch, M. Sharir, Penetration depth of two convex polytopes in 3D. Nord. J. Comput.
**7**, 227–240 (2000)MathSciNetzbMATHGoogle Scholar - 3.P.K. Agarwal, J. Basch, L.J. Guibas, J. Hershberger, L. Zhang, Deformable free space tiling for kinetic collision detection. Int. J. Robot. Res.
**21**(3), 179–197 (2002)CrossRefzbMATHGoogle Scholar - 4.D. Baraff, Dynamic simulation of non-penetrating rigid body simulation. PhD thesis, Cornell University, 1992Google Scholar
- 5.G. Barequet, B. Chazelle, L. Guibas, J. Mitchell, A. Tal, Boxtree: a hierarchical representation of surfaces in 3D, in
*Proceedings of Eurographics’96*(1996)Google Scholar - 6.J. Basch, J. Erickson, L. Guibas, J. Hershberger, L. Zhang, Kinetic collision detection between two simple polygons, in
*Proceedings of the Tenth Annual ACM-SIAM Symposium on Discrete Algorithms*, 1999, pp. 102–111Google Scholar - 7.N. Beckmann, H. Kriegel, R. Schneider, B. Seeger, The r*-tree: an efficient and robust access method for points and rectangles, in
*Proceedings of the SIGMOD Conference on Management of Data*, 1990, pp. 322–331Google Scholar - 8.S. Cameron, Collision detection by four-dimensional intersection testing, in
*Proceedings of International Conference on Robotics and Automation*, 1990, pp. 291–302Google Scholar - 9.S. Cameron, Enhancing GJK: computing minimum and penetration distance between convex polyhedra, in
*IEEE International Conference on Robotics and Automation*, 1997, pp. 3112–3117Google Scholar - 10.S. Cameron, R.K. Culley, Determining the minimum translational distance between two convex polyhedra, in
*Proceedings of International Conference on Robotics and Automation*, 1986, pp. 591–596Google Scholar - 11.J.F. Canny, Collision detection for moving polyhedra. IEEE Trans. PAMI
**8**, 200–209 (1986)CrossRefGoogle Scholar - 12.Y.-K. Choi, W. Wang, Y. Liu, M.-S. Kim, Continuous collision detection for elliptic disks. IEEE Trans. Robot.
**22**(2), 213–224 (2006)CrossRefGoogle Scholar - 13.K. Chung, W. Wang, Quick collision detection of polytopes in virtual environments, in
*Proceedings of ACM Symposium on Virtual Reality Software and Technology*(1996)Google Scholar - 14.J. Cohen, M. Lin, D. Manocha, M. Ponamgi, I-COLLIDE: an interactive and exact collision detection system for large-scale environments, in
*Proceedings of the ACM Interactive 3D Graphics Conference*, 1995, pp. 189–196Google Scholar - 15.D. Dobkin, J. Hershberger, D. Kirkpatrick, S. Suri, Computing the intersection-depth of polyhedra. Algorithmica
**9**, 518–533 (1993)MathSciNetCrossRefzbMATHGoogle Scholar - 16.D.P. Dobkin, D.G. Kirkpatrick, Determining the separation of preprocessed polyhedra – a unified approach, in
*Proceedings of the 17th International Colloquium on Automata, Languages and Programming*. Lecture Notes in Computer Science, vol. 443 (Springer, 1990), pp. 400–413Google Scholar - 17.P. Dworkin, D. Zeltzer, A new model for efficient dynamics simulation, in
*Proceedings Eurographics Workshop on Animation and Simulation*, 1993, pp. 175–184Google Scholar - 18.H. Edelsbrunner, A new approach to rectangle intersections, Part I. Int. J. Comput. Math.
**13**, 209–219 (1983)MathSciNetCrossRefzbMATHGoogle Scholar - 19.S. Ehmann, M.C. Lin, Accelerated proximity queries between convex polyhedra using multi-level Voronoi marching, in
*Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems*, 2000, pp. 2101–2106Google Scholar - 20.S. Ehmann, M.C. Lin, Accurate and fast proximity queries between polyhedra using convex surface decomposition. Comput. Graphics Forum (Proceedings of Eurographics’2001)
**20**(3), 500–510 (2001)Google Scholar - 21.J. Erickson, L. Guibas, J. Stolfi, L. Zhang. Separation sensitive collision detection for convex objects, in
*Proceedings of the SODA*, 1999Google Scholar - 22.S. Fisher, M.C. Lin, Deformed distance fields for simulation of non-penetrating flexible bodies, in
*Proceedings of the EG Workshop on Computer Animation and Simulation*, 2001, pp. 99–111Google Scholar - 23.E.G. Gilbert, D.W. Johnson, S.S. Keerthi, A fast procedure for computing the distance between objects in three-dimensional space. IEEE J. Robot. Autom.
**RA-4**, 193–203 (1988)CrossRefGoogle Scholar - 24.E.G. Gilbert, C.J. Ong, New distances for the separation and penetration of objects, in
*Proceedings of International Conference on Robotics and Automation*, 1994, pp. 579–586Google Scholar - 25.S. Gottschalk, Collision queries using oriented bounding boxes. PhD thesis, Department of Computer Science, University of North Carolina, 2000Google Scholar
- 26.S. Gottschalk, M. Lin, D. Manocha, OBB-Tree: a hierarchical structure for rapid interference detection, in
*Proceedings of the ACM Siggraph’96*, 1996, pp. 171–180Google Scholar - 27.N. Govindaraju, S. Redon, M. Lin, D. Manocha, CULLIDE: interactive collision detection between complex models in large environments using graphics hardware, in
*Proceedings of the ACM SIGGRAPH/EG Workshop on Graphics Hardware*, 2003, pp. 25–32Google Scholar - 28.L. Guibas, D. Hsu, L. Zhang,
*H-Walk*: hierarchical distance computation for moving convex bodies, in*Proceedings of the ACM Symposium on Computational Geometry*, 1999Google Scholar - 29.M. Held, J. Klosowski, J.S.B. Mitchell, Real-time collision detection for motion simulation within complex environments, in
*Proceedings of the ACM SIGGRAPH’96 Visual Proceedings*, 1996, p. 151Google Scholar - 30.M. Held, J.T. Klosowski, J.S.B. Mitchell, Evaluation of collision detection methods for virtual reality fly-throughs, in
*Canadian Conference on Computational Geometry*, 1995Google Scholar - 31.B.V. Herzen, A.H. Barr, H.R. Zatz, Geometric collisions for time-dependent parametric surfaces. Comput. Graph.
**24**(4), 39–48 (1990)CrossRefGoogle Scholar - 32.K. Hoff, A. Zaferakis, M. Lin, D. Manocha, Fast and simple 2D geometric proximity queries using graphics hardware, in
*Proceedings of the ACM Symposium on Interactive 3D Graphics*, 2001, pp. 145–148Google Scholar - 33.K. Hoff, A. Zaferakis, M. Lin, D. Manocha, Fast 3D geometric proximity queries between rigid and deformable models using graphics hardware acceleration. Technical Report TR02-004, Department of Computer Science, University of North Carolina, 2002Google Scholar
- 34.C.M. Hoffmann,
*Geometric and Solid Modeling*(Morgan Kaufmann, San Mateo, 1989)Google Scholar - 35.J.E. Hopcroft, J.T. Schwartz, M. Sharir, Efficient detection of intersections among spheres. Int. J. Robot. Res.
**2**(4), 77–80 (1983)CrossRefGoogle Scholar - 36.H. Six, D. Wood, Counting and reporting intersections of
*D*-ranges. IEEE Trans. Comput.**C-31**, 46–55 (1982)MathSciNetCrossRefzbMATHGoogle Scholar - 37.D. Hsu, L. Kavraki, J. Latombe, R. Motwani, S. Sorkin, On finding narrow passages with probabilistic roadmap planners, in
*Proceedings of the 3rd Workshop on Algorithmic Foundations of Robotics*, 1998, pp. 25–32Google Scholar - 38.P.M. Hubbard, Interactive collision detection, in
*Proceedings of IEEE Symposium on Research Frontiers in Virtual Reality*, 1993Google Scholar - 39.T. Hudson, M. Lin, J. Cohen, S. Gottschalk, D. Manocha, V-COLLIDE: accelerated collision detection for VRML, in
*Proceedings of the VRML Conference*, 1997, pp. 119–125Google Scholar - 40.C. Je, M. Tang, Y. Lee, M. Lee, Y. Kim, PolyDepth: real-time penetration depth computation using iterative contact-space projection. ACM Trans. Graph.
**31**, 5:1–5:14 (2012)Google Scholar - 41.B. Kim, J. Rossignac, Collision prediction for polyhedra under screw motions, in
*ACM Conference on Solid Modeling and Applications*, 2003Google Scholar - 42.D. Kim, L.J. Guibas, S. Shin, Fast collision detection among multiple moving spheres, in
*ACM Symposium on Computational Geometry*, 1997, pp. 373–375Google Scholar - 43.Y.J. Kim, M.C. Lin, D. Manocha, DEEP: an incremental algorithm for penetration depth computation between convex polytopes, in
*Proceedings of the IEEE Conference on Robotics and Automation*, 2002, pp. 921–926Google Scholar - 44.Y.J. Kim, M.A. Otaduy, M.C. Lin, D. Manocha, 6-DOF haptic display using localized contact computations, in
*Proceedings of the Haptics Symposium*, 2002, pp. 209–216Google Scholar - 45.D. Kirkpatrick, J. Snoeyink, B. Speckman, Kinetic collision detection for simple polygons. Int. J. Comput. Geom. Appl.
**12**, 3–27 (2002)MathSciNetCrossRefzbMATHGoogle Scholar - 46.J. Klosowski, M. Held, J.S.B. Mitchell, H. Sowizral, K. Zikan, Efficient collision detection using bounding volume hierarchies of k-DOPs. IEEE Trans. Vis. Comput. Graph.
**4**(1), 21–37 (1998)CrossRefGoogle Scholar - 47.S. Krishnan, M. Gopi, M. Lin, D. Manocha, A. Pattekar, Rapid and accurate contact determination between spline models using shelltrees. Comput. Graph. Forum, Proc. Eur.
**17**(3), C315–C326 (1998)Google Scholar - 48.S. Krishnan, A. Pattekar, M. Lin, D. Manocha, Spherical shell: a higher order bounding volume for fast proximity queries, in
*Proceedings of the Third International Workshop on Algorithmic Foundations of Robotics*, 1998, pp. 122–136Google Scholar - 49.E. Larsen, S. Gottschalk, M. Lin, D. Manocha, Fast proximity queries with swept sphere volumes. Technical Report TR99-018, Department of Computer Science, University of North Carolina, 1999Google Scholar
- 50.C. Lauterbach, Q. Mo, D. Manocha, gProximity: hierarchical GPU-based operations for collision and distance queries. Comput. Graph. Forum
**29**(2), 419–428 (2010)CrossRefGoogle Scholar - 51.Y. Lee, S. Lengagne, A. Kheddar, Y. Kim, Accurate evaluation of a distance function for optimization-based motion planning, in
*IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)*, 2012Google Scholar - 52.Y. Lee, Y.J. Kim, Simple and parallel proximity algorithms for general polygonal models, in
*CASA*(2010)Google Scholar - 53.M. Lin, S. Gottschalk, Collision detection between geometric models: a survey. in
*Proceedings of the IMA Conference on Mathematics of Surfaces*, 1998Google Scholar - 54.M. C. Lin, Efficient collision detection for animation and robotics. PhD thesis, University of California, Berkeley, 1993Google Scholar
- 55.M.C. Lin, J.F. Canny, Efficient algorithms for incremental distance computation, in
*IEEE Conference on Robotics and Automation*, 1991, pp. 1008–1014Google Scholar - 56.F. Liu, T. Harada, Y. Lee, Y.J. Kim, Real-time collision culling of a million bodies on graphics processing units. ACM Trans. Graph.
**29**(6), 154:1–154:8 (2010)Google Scholar - 57.I. Lotan, F. Schwarzer, D. Halperin, J.-C. Latombe, Efficient maintenance and self-collision testing for kinematic chains, in
*Symposium on Computational Geometry*, 2002Google Scholar - 58.D. Manocha, Algebraic and numeric techniques for modeling and robotics. PhD thesis, Computer Science Division, Department of Electrical Engineering and Computer Science, University of California, Berkeley, 1992Google Scholar
- 59.M. McKenna, D. Zeltzer, Dynamic simulation of autonomous legged locomotion, in
*Computer Graphics (SIGGRAPH ’90 Proceedings)*, vol. 24, ed. by F. Baskett, 1990, pp. 29–38Google Scholar - 60.B.V. Mirtich, Impulse-based dynamic simulation of rigid body systems. PhD thesis, University of California, Berkeley, 1996Google Scholar
- 61.B. Mirtich, V-Clip: fast and robust polyhedral collision detection. ACM Trans. Graph.
**17**(3), 177–208 (1998)CrossRefGoogle Scholar - 62.M. Shamos, D. Hoey, Geometric intersection problems, in
*Proceedings of the 17th Annual IEEE Symposium on Foundations of Computer Science*, 1976, pp. 208–215Google Scholar - 63.G. Nawratil, H. Pottmann, B. Ravani, Generalized penetration depth computation based on kinematical geometry. Comput. Aided Geom. Des.
**26**, 425–443 (2009)MathSciNetCrossRefzbMATHGoogle Scholar - 64.B. Naylor, J. Amanatides, W. Thibault, Merging BSP trees yield polyhedral modeling results, in
*Proceedings of the ACM SIGGRAPH*, 1990, pp. 115–124Google Scholar - 65.M.A. Otaduy, M.C. Lin, Sensation preserving simplification for haptic rendering. ACM Trans. Graph. (Proc. ACM SIGGRAPH)
**22**, 543–553 (2003)CrossRefGoogle Scholar - 66.M.H. Overmars, Point location in fat subdivisions. Inform. Proc. Lett.
**44**, 261–265 (1992)MathSciNetCrossRefzbMATHGoogle Scholar - 67.J. Pan, X. Zhang, D. Manocha, Efficient penetration computation using active learning. ACM Trans. Graph.
**32**, 1476–1484 (2013)Google Scholar - 68.J. Pan, S. Chitta, D. Manocha, Fcl: a general purpose library for collision and proximity queries, in
*IEEE International Conference on Robotics and Automation*, 2012, pp. 3859–3866Google Scholar - 69.M. Ponamgi, D. Manocha, M. Lin, Incremental algorithms for collision detection between solid models. IEEE Trans. Vis. Comput. Graph.
**3**(1), 51–67 (1997)CrossRefGoogle Scholar - 70.M.J. Pratt, Surface/surface intersection problems, in
*The Mathematics of Surfaces II*, ed. by J.A. Gregory (Claredon Press, Oxford, 1986), pp. 117–142Google Scholar - 71.S. Quinlan, Efficient distance computation between non-convex objects, in
*Proceedings of International Conference on Robotics and Automation*, 1994, pp. 3324–3329Google Scholar - 72.S. Redon, A. Kheddar, S. Coquillart, An algebraic solution to the problem of collision detection for rigid polyhedral objects, in
*Proceedings of the IEEE Conference on Robotics and Automation*, 2000Google Scholar - 73.S. Redon, A. Kheddar, S. Coquillart, Fast continuous collision detection between rigid bodies. Proc. Eur. (Comput. Graph. Forum)
**21**(3), 279–287 (2002)Google Scholar - 74.S. Redon, Y.J. Kim, M.C. Lin, D. Manocha, Fast continuous collision detection for articulated models, in
*Proceedings of ACM Symposium on Solid Modeling and Applications*, 2004Google Scholar - 75.H. Samet,
*Foundations of Multidimensional and Metric Data Structures*(Morgan Kaufmann Publishers Inc., San Francisco, 2005). ISBN:0123694469zbMATHGoogle Scholar - 76.F. Schwarzer, M. Saha, J.-C. Latombe, Exact collision checking of robot paths, in
*Workshop on Algorithmic Foundations of Robotics (WAFR)*, 2002Google Scholar - 77.R. Seidel, Linear programming and convex hulls made easy, in
*Proceedings of the 6th Annual ACM Conference on Computational Geometry*(Berkeley, 1990), pp. 211–215Google Scholar - 78.J. Snyder et al., Interval methods for multi-point collisions between time dependent curved surfaces, in
*Proceedings of ACM Siggraph*, 1993, pp. 321–334Google Scholar - 79.D.E. Stewart, J.C. Trinkle, An implicit time-stepping scheme for rigid body dynamics with inelastic collisions and coulomb friction. Int. J. Numer. Methods Eng.
**39**, 2673–2691 (1996)MathSciNetCrossRefzbMATHGoogle Scholar - 80.M. Tang, Y.J. Kim, Interactive generalized penetration depth computation for rigid and articulated models using object norm. ACM Trans. Graph.
**33**(1), 1:1–1:15 (2014)Google Scholar - 81.M. Tang, Y.J. Kim, D. Manocha, C
^{2}A: controlled conservative advancement for continuous collision detection of polygonal models, in*Proceedings of the International Conference on Robotics and Automation*, 2009Google Scholar - 82.M. Tang, Y.J. Kim, D. Manocha, Continuous collision detection for non-rigid contact computations using local advancement, in
*Proceedings of International Conference on Robotics and Automation*, 2010Google Scholar - 83.M. Tang, D. Manocha, Y.J. Kim, Hierarchical and controlled advancement for continuous collision detection of rigid and articulated models. IEEE Trans. Vis. Comput. Graph.
**20**(5), 755–766 (2014)CrossRefGoogle Scholar - 84.M. Tang, D. Manocha, J. Lin, R. Tong, Collision-streams: fast GPU-based collision detection for deformable models, in
*I3D ’11: Proceedings of the 2011 ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games*, 2011, pp. 63–70Google Scholar - 85.M. Tang, D. Manocha, R. Tong, MCCD: multi-core collision detection between deformable models using front-based decomposition. Graph. Model.
**72**(2), 7–23 (2010)CrossRefGoogle Scholar - 86.M. Tang, R. Tong, Z. Wang, D. Manocha, Fast and exact continuous collision detection with Bernstein sign classification. ACM Trans. Graph.
**33**, 186:1–186:8 (2014)Google Scholar - 87.G. van den Bergen, Proximity queries and penetration depth computation on 3D game objects, in
*Game Developers Conference*, 2001Google Scholar - 88.G. van den Bergen, Ray casting against general convex objects with application to continuous collision detection. J. Graph. Tools (2004). http://dtecta.com/papers/jgt04raycast.pdf Google Scholar
- 89.Z. Wang, M. Tang, R. Tong, D. Manocha, Tightccd: efficient and robust continuous collision detection using tight error bounds, in
*Pacific Graphics*, 2015Google Scholar - 90.W. Bouma, G. Vanecek, Collision detection and analysis in a physically based simulation, in
*Proceedings Eurographics Workshop on Animation and Simulation*, 1991, pp. 191–203Google Scholar - 91.A. Wilson, E. Larsen, D. Manocha, M.C. Lin, Partitioning and handling massive models for interactive collision detection. Comput. Graph. Forum (Proc. Eur.)
**18**(3), 319–329 (1999)Google Scholar - 92.L. Zhang, Y. Kim, D. Manocha, A simple path non-existence algorithm using c-obstacle query, in
*Proceedings of the WAFR*, 2006Google Scholar - 93.L. Zhang, Y. Kim, D. Manocha, A fast and practical algorithm for generalized penetration depth computation, in
*Proceedings of Robotics: Science and Systems*, Atlanta, 2007Google Scholar - 94.L. Zhang, Y.J. Kim, D. Manocha, C-DIST: efficient distance computation for rigid and articulated models in configuration space, in
*ACM Solid and Physical Modeling Conference (SPM07)*, Beijing, 2007Google Scholar - 95.L. Zhang, Y.J. Kim, G. Varadhan, D. Manocha. Generalized penetration depth computation. Comput. Aided Des.
**39**(8), 625–638 (2007)CrossRefGoogle Scholar - 96.X. Zhang, Y. Kim, k-IOS: intersection of spheres for efficient proximity query, in
*IEEE International Conference on Robotics and Automation (ICRA)*, 2012Google Scholar - 97.X. Zhang, M. Lee, Y.J. Kim, Interactive continuous collision detection for non-convex polyhedra. Vis. Comput.
**22**, 749–760 (2006)CrossRefGoogle Scholar - 98.X. Zhang, S. Redon, M. Lee, Y.J. Kim, Continuous collision detection for articulated models using Taylor models and temporal culling. ACM Trans. Graph. (Proc. SIGGRAPH 2007)
**26**(3), 15 (2007)Google Scholar