Parallelizing Broad Phase Collision Detection Algorithms for Sampling Based Path Planners

Collision checking takes most of the time in sampling based path planning algorithms. When the scene gets crowded, more samples are needed and the probability decreases to find a collision free sample. Broad phase algorithms are designed to eliminate obviously collision free samples, so narrow phase algorithms can concentrate on fewer samples suspected to be in collision. In this study, we compare the performance of two broad phase algorithms implemented on both CPU and GPU. A novel technique is proposed to provide load balancing and efficient cache utilization on Bounding Sphere Collision Detection algorithm. Furthermore, Thrust library is extensively utilized on Sweep and Prune (SAP) algorithm. Our experimental results indicate speedups up to 103 times faster for GPU-based SAP algorithm and 134 times faster for GPU-based Bounding Sphere algorithm, compared to CPU implementations. This may allow using sampling based path planning algorithms for scenes with many robots.

[1]  Dinesh Manocha,et al.  GPU-based parallel collision detection for fast motion planning , 2012, Int. J. Robotics Res..

[2]  David Baraff,et al.  Dynamic Simulation of Non-penetrating Rigid Bodies , 1992 .

[3]  Jean-Claude Latombe,et al.  Motion Planning: A Journey of Robots, Molecules, Digital Actors, and Other Artifacts , 1999, Int. J. Robotics Res..

[4]  Steven M. LaValle,et al.  RRT-connect: An efficient approach to single-query path planning , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[5]  Lydia E. Kavraki,et al.  Probabilistic Roadmaps for Robot Path Planning , 1998 .

[6]  Lydia E. Kavraki,et al.  Distributed Sampling-Based Roadmap of Trees for Large-Scale Motion Planning , 2005, Proceedings of the 2005 IEEE International Conference on Robotics and Automation.

[7]  Dinesh Manocha,et al.  Collision Handling in Dynamic Simulation Environments , 2005, Eurographics.

[8]  B. Faverjon,et al.  Probabilistic Roadmaps for Path Planning in High-Dimensional Con(cid:12)guration Spaces , 1996 .

[9]  Lydia E. Kavraki,et al.  Path planning using lazy PRM , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[10]  LIN LOI,et al.  Fast GPU-based Collision Detection , 2010 .

[11]  Dinesh Manocha,et al.  gProximity: Hierarchical GPU‐based Operations for Collision and Distance Queries , 2010, Comput. Graph. Forum.

[12]  Tomas Akenine-Möller,et al.  Real-Time Rendering, Third Edition , 2008 .

[13]  Dinesh Manocha,et al.  I-COLLIDE: an interactive and exact collision detection system for large-scale environments , 1995, I3D '95.

[14]  Lydia E. Kavraki,et al.  Probabilistic roadmaps for path planning in high-dimensional configuration spaces , 1996, IEEE Trans. Robotics Autom..

[15]  Nathan Bell,et al.  Thrust: A Productivity-Oriented Library for CUDA , 2012 .

[16]  Emilio Frazzoli,et al.  Massively parallelizing the RRT and the RRT , 2011, 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[17]  Dinesh Manocha,et al.  Collision-streams: fast GPU-based collision detection for deformable models , 2011, SI3D.

[18]  Kostas E. Bekris,et al.  Sampling-based roadmap of trees for parallel motion planning , 2005, IEEE Transactions on Robotics.

[19]  Wolfgang Straßer,et al.  Fast and Scalable CPU/GPU Collision Detection for Rigid and Deformable Surfaces , 2010, Comput. Graph. Forum.

[20]  John H. Reif,et al.  Complexity of the mover's problem and generalizations , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[21]  Takahiro Harada,et al.  Real-time collision culling of a million bodies on graphics processing units , 2010, ACM Trans. Graph..