borglab / gpmp2

Gaussian Process Motion Planner 2
Other
38 stars 10 forks source link

GPMP2

This library is an implementation of GPMP2 (Gaussian Process Motion Planner 2) algorithm described in Motion Planning as Probabilistic Inference using Gaussian Processes and Factor Graphs (RSS 2016). The core library is developed in C++ language with optional Python and MATLAB toolboxes. GPMP2 was started at the Georgia Tech Robot Learning Lab, see THANKS for contributors.

Prerequisites

Installation (C++ only)

Python Package Installation

At this point, you should be able to start a Python interpreter and load gpmp2 via import gpmp2.

Matlab Toolbox Installation

We clone, build and install gpmp2 as usual, making sure to set the GPMP2_BUILD_MATLAB_TOOLBOX cmake flag.

  git clone https://github.com/borglab/gpmp2.git
  cd gpmp2 && mkdir build && cd build
  cmake -DGPMP2_BUILD_MATLAB_TOOLBOX:=ON ..
  make -j8 # build
  sudo make install

Start matlab and load the toolboxes be entering the following commands window:

addpath('/usr/local/gtsam_toolbox')
addpath('/usr/local/gpmp2_toolbox')

You should now be able to run any of the scripts in the matlab/gpmp2_examples directory.

Citing

If you use GPMP2 in an academic context, please cite following publications:

@inproceedings{Mukadam-IJRR-18,
  Author = {Mustafa Mukadam and Jing Dong and Xinyan Yan and Frank Dellaert and Byron Boots},
  Title = {Continuous-time {G}aussian Process Motion Planning via Probabilistic Inference},
  journal = {The International Journal of Robotics Research (IJRR)},
  volume = {37},
  number = {11},
  pages = {1319--1340},
  year = {2018}
}

@inproceedings{Dong-RSS-16,
  Author = {Jing Dong and Mustafa Mukadam and Frank Dellaert and Byron Boots},
  Title = {Motion Planning as Probabilistic Inference using {G}aussian Processes and Factor Graphs},
  booktitle = {Proceedings of Robotics: Science and Systems (RSS)},
  year = {2016}
}

@inproceedings{dong2018sparse,
  title={Sparse {G}aussian Processes on Matrix {L}ie Groups: A Unified Framework for Optimizing Continuous-Time Trajectories},
  author={Dong, Jing and Mukadam, Mustafa and Boots, Byron and Dellaert, Frank},
  booktitle={2018 IEEE International Conference on Robotics and Automation (ICRA)},
  pages={6497--6504},
  year={2018},
  organization={IEEE}
}

License

GPMP2 is released under the BSD license, reproduced in LICENSE.