Main Content

Model Predictive Control Toolbox

Design and simulate model predictive controllers

Model Predictive Control Toolbox™ provides functions, an app, and Simulink® blocks for designing and simulating controllers using linear and nonlinear model predictive control (MPC). The toolbox lets you specify plant and disturbance models, horizons, constraints, and weights. By running closed-loop simulations, you can evaluate controller performance.

You can adjust the behavior of the controller by varying its weights and constraints at run time. The toolbox provides deployable optimization solvers and also enables you to use a custom solver. To control a nonlinear plant, you can implement adaptive, gain-scheduled, and nonlinear MPC controllers. For applications with fast sample rates, the toolbox lets you generate an explicit model predictive controller from a regular controller or implement an approximate solution.

For rapid prototyping and embedded system implementation, including deployment of optimization solvers, the toolbox supports C code and IEC 61131-3 Structured Text generation.

Get Started

Learn the basics of Model Predictive Control Toolbox

Plant Specification

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

MPC Design

Basic workflow for designing traditional (implicit) model predictive controllers

Adaptive MPC Design

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

Explicit MPC Design

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

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