MATMPC - A MATLAB Based Toolbox for Real-time Nonlinear Model Predictive Control

In this paper we introduce MATMPC, an open source software built in MATLAB for nonlinear model predictive control (NMPC). It is designed to facilitate modelling, controller design and simulation for a wide class of NMPC applications. MATMPC has a number of algorithmic modules, including automatic di...

Full description

Saved in:
Bibliographic Details
Published in2019 18th European Control Conference (ECC) pp. 3365 - 3370
Main Authors Chen, Yutao, Bruschetta, Mattia, Picotti, Enrico, Beghi, Alessandro
Format Conference Proceeding
LanguageEnglish
Published EUCA 01.06.2019
Online AccessGet full text
DOI10.23919/ECC.2019.8795788

Cover

More Information
Summary:In this paper we introduce MATMPC, an open source software built in MATLAB for nonlinear model predictive control (NMPC). It is designed to facilitate modelling, controller design and simulation for a wide class of NMPC applications. MATMPC has a number of algorithmic modules, including automatic differentiation, direct multiple shooting, condensing, linear quadratic program (QP) solver and globalization. It also supports a unique Curvature-like Measure of Nonlinearity (CMoN) MPC algorithm. MATMPC has been designed to provide state-of-the-art performance while making the prototyping easy, also with limited programming knowledge. This is achieved by writing each module directly in MATLAB API for C. As a result, MATMPC modules can be compiled into MEX functions with performance comparable to plain C/C++ solvers. MATMPC has been successfully used in operating systems including WINDOWS, LINUX AND OS X. Selected examples are shown to highlight the effectiveness of MATMPC.
DOI:10.23919/ECC.2019.8795788