Package Summary
The mpc_local_planner package implements a plugin to the base_local_planner of the 2D navigation stack. It provides a generic and versatile model predictive control implementation with minimum-time and quadratic-form receding-horizon configurations.
- Maintainer status: developed
- Maintainer: Christoph Rösmann <christoph.roesmann AT tu-dortmund DOT de>
- Author: Christoph Rösmann <christoph.roesmann AT tu-dortmund DOT de>
- License: GPLv3
- Source: git https://github.com/rst-tu-dortmund/mpc_local_planner.git (branch: melodic-devel)
Package Summary
The mpc_local_planner package implements a plugin to the base_local_planner of the 2D navigation stack. It provides a generic and versatile model predictive control implementation with minimum-time and quadratic-form receding-horizon configurations.
- Maintainer status: developed
- Maintainer: Christoph Rösmann <christoph.roesmann AT tu-dortmund DOT de>
- Author: Christoph Rösmann <christoph.roesmann AT tu-dortmund DOT de>
- License: GPLv3
- Source: git https://github.com/rst-tu-dortmund/mpc_local_planner.git (branch: noetic-devel)
Contents
Overview
The mpc_local_planner package implements a plugin to the base_local_planner of the 2D navigation stack. It provides a generic and versatile model predictive control implementation. The package already provides standard realizations like minimum-time and quadratic-form receding-horizon control, but can also be easily extended by deriving from one of the various interface classes.
The following paper describes the approach:
C. Rösmann, A. Makarow, and T. Bertram: Online Motion Planning based on Nonlinear Model Predictive Control with Non-Euclidean Rotation Groups, arXiv:2006.03534 '[cs.RO]', June 2020.
Use GitHub to report bugs or submit feature requests. [View active issues]
Get Started
The best way to get started is to look at one of the example configurations in the related GitHub repository. The cfg directory contains several example yaml configurations.
It is highly recommended to be familiar with the navigation stack and all its components (global planner, local planner, costmap_2d, ...).
It might also be helpful to be familiar with the teb_local_planner as the planners are very similar from the API and parameter point of view (the teb_local_planner wiki page already provides several tutorials which do not exist for this planner yet).
Please also have a look at the repository's wiki page.