A small C++ template library for planning algorithms. It is not meant to be the most efficient one but to offer a simple and easy to understand implementation of the most common planning algorithms. Note that RDT (Random Dense Tree) implements the SMART algorithm version of RRT, which is a rapid convergence implementation.
- 2D Dijkstra / A*
- 3D Dijkstra / A*
- 2D RDT*
- 3D RDT*
- One code for 2D and 3D planning algorithms;
- representing system and obstacles as (convex) polytopes;
- collision detection using Separating Axis Theorem (SAT);
- generic metric functions.
- Eigen, a powerful C++ template library for linear algebra;
- Matplotplusplus, a simple to use plotting library for C++.
- Planning Algorithms, by Steven M. LaValle;
- Real Time Collision Detection, by Christer Ericson;
- RRT*-SMART: A Rapid Convergence Implementation of RRT* by Nasir J, Islam F, Malik U, et al.
This project is licensed under the MIT License.
If you find this project useful, consider to star it on GitHub. If you use it in your projects, please cite it!
The examples folder contains a few examples on how to use the library.



