Main Content

Model Predictive Control Toolbox

Design and simulate model predictive controllers

Model Predictive Control Toolbox™ provides functions, an app, Simulink® blocks, and reference examples for developing model predictive control (MPC). For linear problems, the toolbox supports the design of implicit, explicit, adaptive, and gain-scheduled MPC. For nonlinear problems, you can implement single- and multi-stage nonlinear MPC. The toolbox provides deployable optimization solvers and also enables you to use a custom solver.

You can evaluate controller performance in MATLAB® and Simulink by running closed-loop simulations. For automated driving, you can also use the provided MISRA C™- and ISO 26262-compliant blocks and examples to quickly get started with lane keep assist, path planning, path following, and adaptive cruise control applications.

The toolbox supports C and CUDA® code and IEC 61131-3 Structured Text generation.

Get Started

Learn the basics of Model Predictive Control Toolbox

Linear Plant Specification

Specify linear plant model, input and output signal types, scale factors

MPC Design

Basic workflow for designing traditional (implicit) model predictive controllers

Explicit MPC Design

Fast model predictive control using precomputed solutions instead of run-time optimization

Adaptive MPC Design

Adaptive control of nonlinear plant by updating internal plant model at run time

Gain-Scheduled MPC Design

Gain-scheduled control of nonlinear plants by switching controllers at run time

Nonlinear MPC Design

Design model predictive controllers with nonlinear prediction models, costs, and constraints

Code Generation

Generate code and deploy controllers on real-time targets

Automated Driving Applications

Design and simulate model predictive controllers for automated driving