PathPlanning is a library of animated path planning algorithms that includes implementations of A-star, Dijkstra, RRT, and spline-based trajectory generation for both 2D and 3D environments. The project provides a collection of motion planning algorithms that demonstrate how robots can find collision-free paths through continuous spaces, with each algorithm rendered as a step-by-step visual animation to show how the search or tree grows over time.
The library covers three main categories of path planning: sampling-based methods like RRT, RRT-star, and BIT-star that grow trees by randomly sampling configuration space; search-based methods including A-star, Dijkstra, and D-star Lite that compute optimal routes through known environments using heuristic graph search; and trajectory generation techniques that produce smooth, continuous curves using Bezier, B-spline, cubic spline, Dubins, or polynomial interpolation. These algorithms can operate in both two-dimensional and three-dimensional spaces, with the tree-building algorithms adjusting their sampling and collision-checking dimensions accordingly.
The project includes a step-by-step animation engine that renders each algorithm iteration as a visual frame, making it possible to observe how different planning methods explore space and converge toward a solution. The library also provides spline-based path smoothing capabilities for generating continuous, differentiable curves from waypoints.