Abstract
The collision detection problem arises in many different areas, such as games, computer graphics, physics simulations, robot control systems, and others. There exist many different setups of this problem. We consider a setup associated with a special case of the collision detection problem that may arise during the process of optimization of robot control. The number of geometries of rigid bodies in this setup is relatively small (of the order of tens or hundreds), but the number of configurations (i.e., bodies in different positions) can be substantial (of the order of thousands or tens of thousands). In some cases, these configurations (scenes) may be pregenerated together, while in other cases, new scenes can appear only after the collision detection in previous ones. Several scene sources may participate simultaneously. There are well-known flexible implementations of algorithms for collision detection (for instance, Flexible Collision Library, FCL) designed for many-core CPUs. However, efficient GPU implementations (at least for the described setup) are still missing. In this paper, we outline a GPU implementation and compare it with the FCL. We measure the acceleration of our implementation against a single-threaded CPU version (which is the FCL in our case) under different regimes. In some cases, the acceleration reaches a value of the order of 60 to 70.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bandi, S., Thalmann, D.: An adaptive spatial subdivision of the object space for fast collision detection of animated rigid bodies. Comput. Graph. Forum (1995). https://doi.org/10.1111/j.1467-8659.1995.cgf143-0259.x
Baraff, D., Witkin, A., Kass, M.: Untangling cloth. In: ACM SIGGRAPH 2003 Papers (SIGGRAPH 2003), pp. 862–870. Association for Computing Machinery, New York, NY, USA (2003). https://doi.org/10.1145/1201775.882357
Cai, P., Cai, Y., Chandrasekaran, I., Zheng, J.: Collision Detection Using Axis Aligned Bounding Boxes, pp. 1–14. Simulation, Serious Games and Their Applications (2013)
Coumans, E.: Bullet: a case study in optimizing physics middleware for the GPU. In: NVIDIAs GPU Technology Conference (2009). https://doi.org/10.14529
Ehmann, S.A., Lin, M.C.: Accurate and fast proximity queries between polyhedra using convex surface decomposition. Comput. Graph. Forum (2001). https://doi.org/10.1111/1467-8659.00543
Evstigneev, N.M., Ryabkov, O.I., Tsatsorin, E.A.: On the inversion of multiple matrices on GPU in batched mode. Supercomputing Front. Innov. 5(2) (2018). https://doi.org/10.14529/jsfi180203
Fan, W., Wang, B., Paul, J.C., Sun, J.: An octree-based proxy for collision detection in large-scale particle systems. Sci. China Inf. Sci. 56(1), 1–10 (2012)
Gottschalk, S., Lin, M.C., Manocha, D.: OBBTree. In: Proceedings of the 23rd Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH 1996). ACM Press (1996). https://doi.org/10.1145/237170.237244
He, T., Kaufman, A.: Collision detection for volumetric objects. In: Proceedings. Visualization 1997 (Cat. No. 97CB36155). IEEE (1997). https://doi.org/10.1109/visual.1997.663851
Hermann, A., Drews, F., Bauer, J., Klemm, S., Roennau, A., Dillmann, R.: Unified GPU voxel collision detection for mobile manipulation planning. In: 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE (2014). https://doi.org/10.1109/iros.2014.6943148
Hubbard, P.M.: Approximating polyhedra with spheres for time-critical collision detection. ACM Trans. Graph. 15(3), 179–210 (1996)
Kim, D., Heo, J.P., Huh, J., Kim, J., eui Yoon, S.: HPCCD: Hybrid parallel continuous collision detection using CPUs and GPUs. Comput. Graph. Forum 28(7), 1791–1800 (2009). https://doi.org/10.1111/j.1467-8659.2009.01556.x
Lauterbach, C., Mo, Q., Manocha, D.: gProximity: Hierarchical GPU-based operations for collision and distance queries. Comput. Graph. Forum 29(2), 419–428 (2010)
Lefebvre, S., Hoppe, H.: Perfect spatial hashing. In: ACM SIGGRAPH 2006 Papers (SIGGRAPH 2006), p. 579588. Association for Computing Machinery, New York, NY, USA (2006). https://doi.org/10.1145/1179352.1141926
Levinthal, C.: Molecular model-building by computer. Sci. Am. 214(6), 42–52 (1966)
Melax, S.: Dynamic plane shifting BSP traversal. In: Proceedings of the Graphics Interface 2000 Conference, May 15–17, 2000, Montr’eal, Qu’ebec, Canada, pp. 213–220 (2000). http://graphicsinterface.org/wp-content/uploads/gi2000-28.pdf
Pan, J., Chitta, S., Manocha, D.: FCL: a general purpose library for collision and proximity queries. In: 2012 IEEE International Conference on Robotics and Automation. IEEE (2012). https://doi.org/10.1109/icra.2012.6225337
Redon, S., Kim, Y., Lin, M., Manocha, D., Templeman, J.: Interactive and continuous collision detection for avatars in virtual environments. In: IEEE Virtual Reality 2004. IEEE (2004). https://doi.org/10.1109/vr.2004.1310064
Tang, M., Manocha, D., Tong, R.: MCCD: multi-core collision detection between deformable models using front-based decomposition. Graph. Models 72(2), 7–23 (2010)
Teller, S.J., Séquin, C.H.: Visibility preprocessing for interactive walkthroughs. ACM SIGGRAPH Comput. Graph. 25(4), 61–70 (1991)
Wu, J., Kobbelt, L.: Piecewise linear approximation of signed distance fields. In: VMV (2003)
Zachmann, G.: Minimal hierarchical collision detection. In: Proceedings of the ACM Symposium on Virtual Reality Software and Technology (VRST 2002), pp. 121128. Association for Computing Machinery, New York, NY, USA (2002). https://doi.org/10.1145/585740.585761
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Golitsyn, D.L., Korzun, A.V., Ryabkov, O.I. (2021). CUDA Implementation of an Algorithm for Batch Mode Detection of Collisions. In: Sokolinsky, L., Zymbler, M. (eds) Parallel Computational Technologies. PCT 2021. Communications in Computer and Information Science, vol 1437. Springer, Cham. https://doi.org/10.1007/978-3-030-81691-9_9
Download citation
DOI: https://doi.org/10.1007/978-3-030-81691-9_9
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-81690-2
Online ISBN: 978-3-030-81691-9
eBook Packages: Computer ScienceComputer Science (R0)