MATMPC: a MATLAB based toolbox for real-time nonlinear model predictive control

Yutao Chen, Mattia Bruschetta, Enrico Picotti, Alessandro Beghi

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

45 Citations (Scopus)


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.

Original languageEnglish
Title of host publication2019 18th European Control Conference, ECC 2019
Place of PublicationPiscataway
PublisherInstitute of Electrical and Electronics Engineers
Number of pages6
ISBN (Electronic)9783907144008
Publication statusPublished - 1 Jun 2019
Event18th European Control Conference, ECC 2019 - Naples, Italy, Naples, Italy
Duration: 25 Jun 201928 Jun 2019
Conference number: 18


Conference18th European Control Conference, ECC 2019
Abbreviated titleECC 2019
Other18th European Control Conference (ECC 2019) (in cooperation with IFAC)
Internet address


Dive into the research topics of 'MATMPC: a MATLAB based toolbox for real-time nonlinear model predictive control'. Together they form a unique fingerprint.

Cite this