Impact: A Toolchain for Nonlinear Model Predictive Control Specification, Prototyping, and Deployment
Impact is a flexible toolchain for nonlinear model predictive control (NMPC) specification with automatic code generation capabilities.
The toolchain reduces the engineering complexity of NMPC implementations by providing the user with an easy-to-use application programming interface, and with the flexibility of using multiple state-of-the-art tools and numerical optimization solvers for rapid prototyping of NMPC solutions.
Impact is written in Python, users can call it from Python and MATLAB, and the generated NMPC solvers can be directly executed from C, Python, MATLAB and Simulink.
License: Impact is released under the GNU LGPLv3 license.
You can install Impact (ideally into a virtual environment) via pip using the following command:
pip install impact-meco
Alternatively, you can clone this repository and install Impact from source. You just need to (i) clone the repository, (ii) move into Impact's root directory, and (iii) run the setup.py
script with the install
option. It will install your application into the virtualenv site-packages folder and also download and install all dependencies:
git clone https://gitlab.kuleuven.be/meco-software/impact.git
cd impact
python setup.py install
You could also use the develop
option, instead of install
, during the execution of setup.py
as python setup.py develop
.
This has the advantage of just installing a link to the site-packages folder instead of copying the data over. You can then modify/update the source code without having to run python setup.py install
again after every change.
Please submit an issue if you want to report a bug or propose new features.