Table of Contents
Fetching ...

Pathfinding with Lazy Successor Generation

Keisuke Okumura

TL;DR

This work addresses pathfinding when edges are implicit and any location may connect to any other, creating a huge branching factor. It introduces LaCAS*, a complete and anytime algorithm that lazily generates successors using a two-level search guided by $k$-nearest neighbors on a $k$-d tree, thereby reducing edge evaluations while retaining completeness. A variant, LaCAT*, adds a grandparent check to further improve initial solution quality at the cost of extra $\\mathsf{connect}$ calls. Empirical results across diverse benchmarks show LaCAS* reliably finds (near-)optimal paths much faster than traditional methods in high-branching scenarios, with LaCAT* offering further refinements. The approach connects to LaCAM* and related lazy/densification strategies, suggesting a broadly applicable framework for planning in expansive graphs where edge evaluations are expensive.

Abstract

We study a pathfinding problem where only locations (i.e., vertices) are given, and edges are implicitly defined by an oracle answering the connectivity of two locations. Despite its simple structure, this problem becomes non-trivial with a massive number of locations, due to posing a huge branching factor for search algorithms. Limiting the number of successors, such as with nearest neighbors, can reduce search efforts but compromises completeness. Instead, we propose a novel LaCAS* algorithm, which does not generate successors all at once but gradually generates successors as the search progresses. This scheme is implemented with k-nearest neighbors search on a k-d tree. LaCAS* is a complete and anytime algorithm that eventually converges to the optima. Extensive evaluations demonstrate the efficacy of LaCAS*, e.g., solving complex pathfinding instances quickly, where conventional methods falter.

Pathfinding with Lazy Successor Generation

TL;DR

This work addresses pathfinding when edges are implicit and any location may connect to any other, creating a huge branching factor. It introduces LaCAS*, a complete and anytime algorithm that lazily generates successors using a two-level search guided by -nearest neighbors on a -d tree, thereby reducing edge evaluations while retaining completeness. A variant, LaCAT*, adds a grandparent check to further improve initial solution quality at the cost of extra calls. Empirical results across diverse benchmarks show LaCAS* reliably finds (near-)optimal paths much faster than traditional methods in high-branching scenarios, with LaCAT* offering further refinements. The approach connects to LaCAM* and related lazy/densification strategies, suggesting a broadly applicable framework for planning in expansive graphs where edge evaluations are expensive.

Abstract

We study a pathfinding problem where only locations (i.e., vertices) are given, and edges are implicitly defined by an oracle answering the connectivity of two locations. Despite its simple structure, this problem becomes non-trivial with a massive number of locations, due to posing a huge branching factor for search algorithms. Limiting the number of successors, such as with nearest neighbors, can reduce search efforts but compromises completeness. Instead, we propose a novel LaCAS* algorithm, which does not generate successors all at once but gradually generates successors as the search progresses. This scheme is implemented with k-nearest neighbors search on a k-d tree. LaCAS* is a complete and anytime algorithm that eventually converges to the optima. Extensive evaluations demonstrate the efficacy of LaCAS*, e.g., solving complex pathfinding instances quickly, where conventional methods falter.
Paper Structure (32 sections, 1 theorem, 6 figures, 1 algorithm)

This paper contains 32 sections, 1 theorem, 6 figures, 1 algorithm.

Key Result

Theorem 1

$\text{LaCAS}^\ast$ (algo:lacas) is complete and optimal.

Figures (6)

  • Figure 1: Example instance and solutions. The start is placed at the bottom left (circle), and the goal at the top right (star). Locations are denoted by small dots ($n=10,000$). The workspace includes obstacles represented by gray lines. Three solution paths are illustrated: (i) initial solution by $\text{LaCAS}^\ast$, (ii) that of $\text{LaCAT}^\ast$, a $\text{LaCAS}^\ast$ variant similar to $\text{Theta}^\ast$daniel2010theta, and (iii) refined $\text{LaCAT}^\ast$ path after 10min. Both initial solutions were obtained in approximately 30s with the Julia language implementation. For reference, $\text{A}^\ast$hart1968formal did not find a path within 1h. Greedy best-first search required $\geq$9min for a suboptimal path, and $\geq$3min for RRT-connect kuffner2000rrt.
  • Figure 2: Effect of techniques in \ref{['sec:tips']}. upper:Search progress is illustrated with dots and fine lines, representing locations within $\mathit{Explored}$ when finding initial solutions or upon reaching the 30s time limit. Solutions are marked by bold lines. These experiments used the scatter-1k scenario, except for §\ref{['subsec:rolling']} which used scatter-10k, both detailed in \ref{['sec:evaluation']}. lower: Quantitative results are summarized. Each scenario comprised 100 instances, potentially including unsolvable ones. "solved" indicates the number of instances solved within the time limit. Other metrics average the results of instances both methods successfully solved. "time" denotes the runtime to find initial solutions. "cost" refers to the initial solution costs. "#$\mathsf{connect}$" is the number of times the method used $\mathsf{connect}$ to derive initial solutions, and "#iteration" is that of the number of search iterations.
  • Figure 3: Example run of each method. The trap scenario is used, with the 1s timeout and $|V|=100$.
  • Figure 4: Results of basic scenarios. Boxplots show the median values with the first and third quartiles. In addition to the runtime results relying on implementations, the figure provides the number of $\mathsf{connect}$ calls (#$\mathsf{connect}$) as a proxy for the search effort. Runtime scores of $\text{LaCAS}^\ast$, $\text{LaCAT}^\ast$, and I$\text{RRT}^\ast$ are omitted because they were executed until reaching the time limit.
  • Figure 5: Results of specially designed scenarios.
  • ...and 1 more figures

Theorems & Definitions (3)

  • Definition 1
  • Theorem 1
  • proof