Lightweight Software Package for High-Quality Planning with Dynamics
The PRACSYS lab at Rutgers University is publicly releasing a software package that provides a lightweight implementation of Stable Sparse-RRT (SST), a motion planner for systems with dynamics.
SST and its asymptotically optimal variant SST* are sampling-based tree planners similar to RRT, Expansive Space Trees and RRT*. They provide path quality guarantees for motion planning but they do not need access to a local planner, i.e., they can solve problems without using a boundary value problem solver. The computational performance of SST is competitive to that of RRT. An overview of the algorithm, along with links to the Bitbucket source code repository can be found on the group's webpage for the SST software.
You can also check the corresponding WAFR 2014 publication on SST.
The software package includes implementations for RRT and SST. In addition, the following modules are provided:
- Set of Benchmarks: A simple kinematic point, a pendulum, a first-order car, and a dynamic car with drift (second-order) are provided for initial testing.
- Nearest Neighbor Data Structure: A graph-based nearest neighbor structure that allows for easy removal of samples.
- Visualization Capabilities: Snapshots of trees and solutions in the .svg format can be generated with the help of the simple-svg code.
- Example Initialization Code: Using boost program options, a simple run executable has been created that allows for input-driven experiments, where planners and systems are determined at runtime.
- Basic Statistics Gathering.
- Instructions on how to compile, run the code, as well as generate the documentation through Doxygen are also available.
The code is written in C++ and is tested both in Mac OSX 10.7 and Ubuntu 12.04 LTS. The only code dependency is Boost, and this is only for the example run program. A CMake file is provided for building the code.
Our future plans include the implementation of the algorithm on OMPL. The current software package allows for quick dissemination of the implementation for researchers interested in kinodynamic motion planning with optimality guarantees.
Any reports regarding issues with the code or questions about it or the algorithm can be directed to:
Kostas Bekris (kostas.bekris\AT\cs.rutgers.edu) and/or Zakary Littlefield (zwl2\AT\cs.rutgers.edu).