Skip to content
n-dimensional RRT, RRT* (RRT-Star)
Branch: master
Clone or download
Pull request Compare This branch is 1 commit ahead, 17 commits behind motion-planning:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Collection of rrt-based algorithms that scale to n-dimensions

  • rrt
  • rrt* (rrt-star)



Define an n-dimensional Search Space, and n-dimensional obstacles within that space. Assign start and goal locations as well as the number of iterations to expand the tree before testing for connectivity with the goal, and the max number of overall iterations.

Search Space

Assign bounds to Search Space in form: [(x_lower, x_upper), (y_lower, y_upper), ...]

Start and Goal

Points represented by tuples of form: (x, y, ...)


Axis-aligned (hyper)rectangles represented by a tuples of form (x_lower, y_lower, ..., x_upper, y_upper, ...)

Non-axis aligned (hyper)rectangles or other obstacle representations should also work, provided that collision_free and obstacle_free are updated to work with the new obstacles.


Assign resolution of edges:

  • q: Distance away from existing vertices to probe.
  • r: Discretization length to use for edges when sampling along them to check for collisions. Higher numbers run faster, but may lead to undetected collisions.


Visualization examples can be found for rrt and rrt* in both 2 and 3 dimensions.


  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D


MIT License

You can’t perform that action at this time.