Any-angle path planning


Any-angle path planning algorithms are a subset of pathfinding algorithms that search for a path between two points in space and allow the turns in the path to have any angle. The result is a path that goes directly toward the goal and has relatively few turns. Other pathfinding algorithms such as A* constrain the paths to a grid, which produces jagged, indirect paths.

Background

Real-world and many game maps have open areas that are most efficiently traversed in a direct way. Traditional algorithms are ill-equipped to solve these problems:
An any-angle path planning algorithm aims to produce optimal or near-optimal solutions while taking less time than the basic visibility graph approach. Fast any-angle algorithms take roughly the same time as a grid-based solution to compute.

Definitions

; Taut path: A path where every heading change in the path “wraps” tightly around some obstacle. For a uniform grid, only taut paths can be optimal.
; Single-source: A path-finding problem that seeks to find the shortest path to all parts from the graph, starting from one vertex.

Algorithms

A*-based

So far, five main any-angle path planning algorithms that are based on the heuristic search algorithm A* have been developed, all of which propagate information along grid edges:
There are also A*-based algorithm distinct from the above family:
Besides, for search in high-dimensional search spaces, such as when the configuration space of the system involves many degrees of freedom that need to be considered, and/or momentum needs to be considered, variants of the rapidly-exploring random tree have been developed that converge to the optimal path by increasingly finding shorter and shorter paths:
Any-angle path planning are useful for robot navigation and real-time strategy games where more optimal paths are desirable. Hybrid A*, for example, was used as an entry to a DARPA challenge. The steering-aware properties of some examples also translate to autonomous cars.