PA*SE: Parallel A* for Slow Expansions

Planners need to become faster as we seek to tackle increasingly complicated problems. Much of the recent improvements in computer speed is due to multi-core processors. For planners to take advantage of these types of architectures, we must adapt algorithms for parallel processing. There are a number of planning domains where state expansions are slow. One example is robot motion planning, where most of the time is devoted to collision checking. In this work, we present PA*SE, a novel, parallel version of A* (and weighted A*) which parallelizes state expansions by taking advantage of this property. While getting close to a linear speedup in the number of cores, we still preserve completeness and optimality of A* (bounded sub-optimality of weighted A*). PA*SE applies to any planning problem in which significant time is spent on generating successor states and computing transition costs. We present experimental results on a robot navigation domain (x,y,heading) which requires expensive 3D collision checking for the PR2 robot. We also provide an in-depth analysis of the algorithm's performance on a 2D navigation problem as we vary the number of cores (up to 32) as well as the time it takes to collision check successors during state expansions.

[1]  Sven Koenig,et al.  Fast replanning for navigation in unknown terrain , 2005, IEEE Transactions on Robotics.

[2]  Nathan R. Sturtevant,et al.  Simultaneously Searching with Multiple Settings: An Alternative to Parameter Tuning for Suboptimal Single-Agent Search Algorithms , 2010, SOCS.

[3]  Keki B. Irani,et al.  Parallel A^* and AO^* Algorithms: An Optimality Criterion and Performance Evaluation , 1986, ICPP.

[4]  James A. Hendler,et al.  PRA*: Massively Parallel Heuristic Search , 1995, J. Parallel Distributed Comput..

[5]  Eric A. Hansen,et al.  Parallel Structured Duplicate Detection , 2007, AAAI.

[6]  Ariel Felner,et al.  Theta*: Any-Angle Path Planning on Grids , 2007, AAAI.

[7]  Maxim Likhachev,et al.  SIPP: Safe interval path planning for dynamic environments , 2011, 2011 IEEE International Conference on Robotics and Automation.

[8]  Jean-Claude Latombe,et al.  Nonholonomic multibody mobile robots: Controllability and motion planning in the presence of obstacles , 1991, Proceedings. 1991 IEEE International Conference on Robotics and Automation.

[9]  Michael J. Quinn,et al.  Designing Efficient Algorithms for Parallel Computers , 1987 .

[10]  Vincent Vidal,et al.  Adaptive K-Parallel Best-First Search: A Simple but Efficient Algorithm for Multi-Core Domain-Independent Planning , 2010, SOCS.

[11]  Sebastian Thrun,et al.  ARA*: Anytime A* with Provable Bounds on Sub-Optimality , 2003, NIPS.

[12]  Akihiro Kishimoto,et al.  Scalable, Parallel Best-First Search for Optimal Sequential Planning , 2009, ICAPS.

[13]  Laveen N. Kanal,et al.  A Hybrid SSS*/Alpha-Beta Algorithm for Parallel Search of Game Trees , 1985, IJCAI.

[14]  Nathan R. Sturtevant,et al.  Benchmarks for Grid-Based Pathfinding , 2012, IEEE Transactions on Computational Intelligence and AI in Games.

[15]  Nils J. Nilsson,et al.  A Formal Basis for the Heuristic Determination of Minimum Cost Paths , 1968, IEEE Trans. Syst. Sci. Cybern..

[16]  Wheeler Ruml,et al.  Best-First Heuristic Search for Multi-Core Machines , 2009, IJCAI.