Skip to content
This is a library for some of sampling-based motion planning algorithms implemented in MATLAB.
MATLAB Fortran HTML C++ Makefile C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
figures adding figures. May 11, 2016
gpml Adding IIG, GPML, and reorganising the lib. Jul 11, 2016
src Update covUI.m Jul 11, 2016
LICENSE Initial commit for the lib methods and RRT planner. May 10, 2016
README.md Update README.md May 7, 2019
init.m

README.md

sampling_based_planners


This is a library for some of the sampling-based motion planning algorithms implemented in MATLAB. Currently the following methods are available: rapidly-exploring random tree (RRT), rapidly-exploring random graph (RRG), asymptotically optimal RRT (RRT*). The incrementally-exploring information gathering (IIG) which is built on the rapidly-exploring information gathering (RIG) technique.

  • Initialize the library
>> init
  • IIG (RIG with an information-based convergence metric): The information functions estimate the mutual information, the available methods are mutual information 'mi', mutual information upper bound 'miub', Gaussian process variance reduction 'gpvr', and Gaussian process variance reduction with uncertain input 'ugpvr'. For more details please see the IIG paper:

Ghaffari Jadidi, M., Valls Miro, J. and Dissanayake, G. (2019) ‘Sampling-based incremental information gathering with applications to robotic exploration and environmental monitoring’, The International Journal of Robotics Research, 38(6), pp. 658–685. doi: 10.1177/0278364919844575. https://arxiv.org/abs/1607.01883

For example, we can run IIG using 'ugpvr' information function as follows:

>> out = iig_planner('gpvr')

The 'ugpvr' uses covUI function which is a wrapper for integration over covariance functions with uncertain input and it can be used as a meta-covariance function in conjunction with any covariance function available in GPML. Generally, 'mi' is suitable when taking expectation over future measurements is possible. It requires direct integrations over a probabilistic measurement model. The 'gpvr' and 'ugpvr' are preferred for environmental monitoring tasks.

  • RRT
>> out = rrt_planner()

Image of RRT

  • RRG
>> out = rrg_planner()
  • RRT*
>> out = rrtstar_planner()

The implementations depend on the MATLAB built-in kd-tree objects.

It is possible to make the planners kinodynamic by modifying the steer.m function.

Citations

@article{mghaffari2019sampling,
  title={Sampling-based incremental information gathering with applications to robotic exploration and environmental monitoring},
  author={Ghaffari Jadidi, Maani and Valls Miro, Jaime and Dissanayake, Gamini},
  journal={The International Journal of Robotics Research},
  volume={38},
  number={6},
  pages={658-685},
  year={2019},
  doi = {10.1177/0278364919844575}
}
You can’t perform that action at this time.