Regarding Goal Bounding and Jump Point Search

Jump Point Search (JPS) is a well known symmetry-breaking algorithm that can substantially improve performance for grid-based optimal pathfinding. When the input grid is static further speedups can be obtained by combining JPS with goal bounding techniques such as Geometric Containers (instantiated as Bounding Boxes) and Compressed Path Databases. Two such methods, JPS+BB and Two-Oracle Path PlannING (Topping), are currently among the fastest known approaches for computing shortest paths on grids. The principal drawback for these algorithms is the overhead costs: each one requires an all-pairs precomputation step, the running time and subsequent storage costs of which can be prohibitive. In this work we consider an alternative approach where we precompute and store goal bounding data only for grid cells which are also jump points. Since the number of jump points is usually much smaller than the total number of grid cells, we can save up to orders of magnitude in preprocessing time and space. Considerable precomputation savings do not necessarily mean performance degradation. For a second contribution we show how canonical orderings, partial expansion strategies and enhanced intermediate pruning can be leveraged to improve online query performance despite a reduction in preprocessed data. The combination of faster preprocessing and stronger online reasoning leads to three new and highly performant algorithms: JPS+BB+ and Two-Oracle Pathfinding Search (TOPS) based on search, and Topping+ based on path extraction. We give a theoretical analysis showing that each method is complete and optimal. We also report convincing gains in a comprehensive empirical evaluation that includes almost all current and cutting-edge algorithms for grid-based pathfinding.

[1]  Adi Botea Ultra-Fast Optimal Pathfinding without Runtime Search , 2011, AIIDE.

[2]  Alban Grastien,et al.  The JPS Pathfinding System , 2012, SOCS.

[3]  Robert E. Tarjan,et al.  Fibonacci heaps and their uses in improved network optimization algorithms , 1984, JACM.

[4]  Robert E. Tarjan,et al.  The pairing heap: A new form of self-adjusting heap , 2005, Algorithmica.

[5]  Po-An Chen,et al.  Simple optimization techniques for A*-based search , 2009, AAMAS.

[6]  Malte Helmert,et al.  The Fast Downward Planning System , 2006, J. Artif. Intell. Res..

[7]  Robert E. Tarjan,et al.  A Back-to-Basics Empirical Study of Priority Queues , 2014, ALENEX.

[8]  Nathan R. Sturtevant,et al.  Euclidean Heuristic Optimization , 2011, AAAI.

[9]  Nathan R. Sturtevant,et al.  Combining Bounding Boxes and JPS to Prune Grid Pathfinding , 2016, AAAI.

[10]  Alban Grastien,et al.  Online Graph Pruning for Pathfinding On Grid Maps , 2011, AAAI.

[11]  Alban Grastien,et al.  Improving Jump Point Search , 2014, ICAPS.

[12]  Alex J. Champandard,et al.  DHPA* and SHPA*: Efficient Hierarchical Pathfinding in Dynamic and Static Game Worlds , 2010, AIIDE.

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

[14]  Nathan R. Sturtevant,et al.  The Grid-Based Path Planning Competition: 2014 Entries and Results , 2015, SOCS.

[15]  Andrew V. Goldberg,et al.  A Hub-Based Labeling Algorithm for Shortest Paths in Road Networks , 2011, SEA.

[16]  Simon Parsons,et al.  Principles of Robot Motion: Theory, Algorithms and Implementations by Howie Choset, Kevin M. Lynch, Seth Hutchinson, George Kantor, Wolfram Burgard, Lydia E. Kavraki and Sebastian Thrun, 603 pp., $60.00, ISBN 0-262-033275 , 2007, The Knowledge Engineering Review.

[17]  Andrew V. Goldberg,et al.  Computing the shortest path: A search meets graph theory , 2005, SODA '05.

[18]  Nathan R. Sturtevant,et al.  Partial-Expansion A* with Selective Node Generation , 2012, SOCS.

[19]  Teruhisa Miura,et al.  A* with Partial Expansion for Large Branching Factor Problems , 2000, AAAI/IAAI.

[20]  Ronald L. Rivest,et al.  Introduction to Algorithms, Second Edition , 2001 .

[21]  E. Denardo,et al.  Shortest-Route Methods: 1. Reaching, Pruning, and Buckets , 1979, Oper. Res..

[22]  Nathan R. Sturtevant,et al.  Canonical Orderings on Grids , 2016, IJCAI.

[23]  Alfonso Gerevini,et al.  Two-Oracle Optimal Path Planning on Grid Maps , 2018, ICAPS.

[24]  Peter J. Stuckey,et al.  Path Planning with CPD Heuristics , 2019, IJCAI.

[25]  Sven Koenig,et al.  Understanding Subgoal Graphs by Augmenting Contraction Hierarchies , 2018, IJCAI.

[26]  Nathan R. Sturtevant,et al.  Memory-Based Heuristics for Explicit State Spaces , 2009, IJCAI.

[27]  Peter Sanders,et al.  Exact Routing in Large Road Networks Using Contraction Hierarchies , 2012, Transp. Sci..

[28]  Alfonso Gerevini,et al.  Compressed Path Databases with Ordered Wildcard Substitutions , 2017, ICAPS.

[29]  Christos D. Zaroliagis,et al.  Geometric containers for efficient shortest-path computation , 2005, JEAL.

[30]  Peter J. Stuckey,et al.  Cutting the Size of Compressed Path Databases with Wildcards and Redundant Symbols , 2019, ICAPS.

[31]  Peter J. Stuckey,et al.  Forward Search in Contraction Hierarchies , 2018, SOCS.

[32]  Cong Hu,et al.  Improving the Combination of JPS and Geometric Containers , 2019, ICAPS.

[33]  Howie Choset,et al.  PRIMAL: Pathfinding via Reinforcement and Imitation Multi-Agent Learning , 2018, IEEE Robotics and Automation Letters.

[34]  Sven Koenig,et al.  Feasibility Study: Subgoal Graphs on State Lattices , 2017, SOCS.

[35]  Raffaello D'Andrea,et al.  Coordinating Hundreds of Cooperative, Autonomous Vehicles in Warehouses , 2007, AI Mag..

[36]  Nathan R. Sturtevant,et al.  Enhanced Partial Expansion A , 2014, J. Artif. Intell. Res..

[37]  Ben Strasser,et al.  Compressing Optimal Paths with Run Length Encoding , 2015, J. Artif. Intell. Res..

[38]  T. K. Satish Kumar,et al.  The FastMap Algorithm for Shortest Path Computations , 2017, ISAIM.

[39]  Sven Koenig,et al.  Subgoal Graphs for Optimal Pathfinding in Eight-Neighbor Grids , 2013, ICAPS.

[40]  Sven Koenig,et al.  Identifying Hierarchies for Fast Optimal Search , 2014, SOCS.

[41]  Adi Botea,et al.  Path Planning with Compressed All-Pairs Shortest Paths Data , 2013, ICAPS.

[42]  Peter J. Stuckey,et al.  Regarding Jump Point Search and Subgoal Graphs , 2019, IJCAI.

[43]  Tristan Cazenave,et al.  Optimizations of data structures, heuristics and algorithms for path-finding on maps , 2006, 2006 IEEE Symposium on Computational Intelligence and Games.

[44]  Nathan R. Sturtevant,et al.  Memory-Efficient Abstractions for Pathfinding , 2007, AIIDE.

[45]  Ben Strasser,et al.  Fast First-Move Queries through Run-Length Encoding , 2014, SOCS.

[46]  Peter Sanders,et al.  Contraction Hierarchies: Faster and Simpler Hierarchical Routing in Road Networks , 2008, WEA.

[47]  Rolf H. Möhring,et al.  Fast Point-to-Point Shortest Path Computations with Arc-Flags , 2006, The Shortest Path Problem.