Skip to content

This is a library for some of sampling-based motion planning algorithms implemented in MATLAB.

License

Notifications You must be signed in to change notification settings

MaaniGhaffari/sampling_based_planners

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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}
}

About

This is a library for some of sampling-based motion planning algorithms implemented in MATLAB.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published