Fast Generation of Collision-Free Trajectories for Robot Swarms Using GPU Acceleration

As the capabilities of robots and their control systems improve, we see an increasing number of use cases where the simultaneous operation of robots within a space is advantageous. Although trajectories for individual robots can be computed quickly using the existing methods, when robots operate simultaneously and in close proximity, the requirement for collision avoidance introduces a coupling between robot trajectories and makes the trajectory generation problem difficult to solve quickly. In this paper, we propose a parallelizable formulation of such problems and a method for solving them quickly on modern graphics processing units, using momentum-based gradient descent. We demonstrate the proposed framework in simulation using two case studies: a swarm of 200 quadcopters traversing a maze and a fleet of 100 bicycle robots changing their formation. In both the cases, our method requires just seconds to generate feasible, collision-free trajectories for the entire swarm.

[1]  Peter I. Corke,et al.  Multirotor Aerial Vehicles: Modeling, Estimation, and Control of Quadrotor , 2012, IEEE Robotics & Automation Magazine.

[2]  Julian Förster,et al.  System Identification of the Crazyflie 2.0 Nano Quadrocopter , 2015 .

[3]  Angela P. Schoellig,et al.  Trajectory Generation for Multiagent Point-To-Point Transitions via Distributed Model Predictive Control , 2018, IEEE Robotics and Automation Letters.

[4]  Vijay Kumar,et al.  Minimum snap trajectory generation and control for quadrotors , 2011, 2011 IEEE International Conference on Robotics and Automation.

[5]  Yuan Yu,et al.  TensorFlow: A system for large-scale machine learning , 2016, OSDI.

[6]  Vijay Kumar,et al.  Safe and complete trajectory generation for robot teams with higher-order dynamics , 2016, 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[7]  Jimmy Ba,et al.  Adam: A Method for Stochastic Optimization , 2014, ICLR.

[8]  Vincent Roberge,et al.  Fast Genetic Algorithm Path Planner for Fixed-Wing Military UAV Using GPU , 2018, IEEE Transactions on Aerospace and Electronic Systems.

[9]  Jianmin Zheng,et al.  Parallel genetic algorithm based automatic path planning for crane lifting in complex environments , 2016 .

[10]  Javier Alonso-Mora,et al.  A message-passing algorithm for multi-agent trajectory planning , 2013, NIPS.

[11]  Markus Hehn,et al.  A Computationally Efficient Motion Primitive for Quadrocopter Trajectory Generation , 2015, IEEE Transactions on Robotics.

[12]  Luca Antiga,et al.  Automatic differentiation in PyTorch , 2017 .

[13]  Jasper Snoek,et al.  Practical Bayesian Optimization of Machine Learning Algorithms , 2012, NIPS.

[14]  Wolfgang Hönig,et al.  Trajectory Planning for Heterogeneous Robot Teams , 2018, 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[15]  W. Daniel Hillis,et al.  Data parallel algorithms , 1986, CACM.

[16]  Emilio Frazzoli,et al.  Incremental Sampling-based Algorithms for Optimal Motion Planning , 2010, Robotics: Science and Systems.

[17]  Gaurav S. Sukhatme,et al.  Trajectory Planning for Quadrotor Swarms , 2018, IEEE Transactions on Robotics.

[18]  Raffaello D'Andrea,et al.  Quadrocopter Trajectory Generation and Control , 2011 .

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

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

[21]  Soon-Jo Chung,et al.  Swarm assignment and trajectory optimization using variable-swarm, distributed auction assignment and sequential convex programming , 2016, Int. J. Robotics Res..

[22]  Vijay Kumar,et al.  Search-Based Motion Planning for Aggressive Flight in SE(3) , 2017, IEEE Robotics and Automation Letters.

[23]  Angela P. Schoellig,et al.  Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach , 2012, 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[24]  Maxim Likhachev,et al.  High-dimensional planning on the GPU , 2010, 2010 IEEE International Conference on Robotics and Automation.

[25]  Dinesh Manocha,et al.  Efficient nearest-neighbor computation for GPU-based motion planning , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[26]  Raffaello D'Andrea,et al.  Iterative MILP methods for vehicle-control problems , 2005, IEEE Transactions on Robotics.

[27]  S. LaValle Rapidly-exploring random trees : a new tool for path planning , 1998 .

[28]  Vijay Kumar,et al.  Mixed-integer quadratic program trajectory generation for heterogeneous quadrotor teams , 2012, 2012 IEEE International Conference on Robotics and Automation.

[29]  Dinesh Manocha,et al.  g-Planner: Real-time Motion Planning and Global Navigation using GPUs , 2010, AAAI.

[30]  Kartik Mohta,et al.  Search-based motion planning for quadrotors using linear quadratic minimum time control , 2017, 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[31]  Charles Richter,et al.  Polynomial Trajectory Planning for Aggressive Quadrotor Flight in Dense Indoor Environments , 2016, ISRR.

[32]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[33]  Abderrahmane Kheddar,et al.  GPU Robot Motion Planning Using Semi-Infinite Nonlinear Programming , 2016, IEEE Transactions on Parallel and Distributed Systems.

[34]  H. Kuhn The Hungarian method for the assignment problem , 1955 .

[35]  Vijay Kumar,et al.  Trajectory Generation and Control for Precise Aggressive Maneuvers with Quadrotors , 2010, ISER.

[36]  M. E. Flores Real-Time Trajectory Generation for Constrained Nonlinear Dynamical Systems Using Non-Uniform Rational B-Spline Basis Functions , 2008 .

[37]  Ozgur Koray Sahingoz,et al.  A UAV path planning with parallel ACO algorithm on CUDA platform , 2014, 2014 International Conference on Unmanned Aircraft Systems (ICUAS).

[38]  Jianmin Zheng,et al.  A GPU-Enabled Parallel Genetic Algorithm for Path Planning of Robotic Operators , 2015 .

[39]  Jonathan P. How,et al.  Decoupled multiagent path planning via incremental sequential convex programming , 2015, 2015 IEEE International Conference on Robotics and Automation (ICRA).

[40]  Gaurav S. Sukhatme,et al.  Downwash-aware trajectory planning for large quadrotor teams , 2017, 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[41]  Javier Alonso-Mora,et al.  Multi-robot navigation in formation via sequential convex programming , 2015, 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[42]  D. Lucas,et al.  Development of a multi-resolution parallel genetic algorithm for autonomous robotic path planning , 2012, 2012 12th International Conference on Control, Automation and Systems.

[43]  Anthony Stentz,et al.  R* Search , 2008, AAAI.

[44]  Saurav Agarwal,et al.  Simultaneous Optimization of Assignments and Goal Formations for Multiple Robots , 2018, 2018 IEEE International Conference on Robotics and Automation (ICRA).