Model Predictive Control Toolbox



Model Predictive Control Toolbox

Design and simulate model predictive controllers

Linear MPC Design

Design implicit, gain-scheduled, and adaptive MPC controllers that solve a quadratic programming (QP) problem. Generate an explicit MPC controller from an implicit design. Use discrete control set MPC for mixed-integer QP problems.

MPC Designer App

Use the MPC Designer app to interactively design implicit MPC controllers, linearize your Simulink model with Simulink Control Design™, validate controller performance using simulation scenarios, and compare responses for multiple designs.

Nonlinear MPC Design

Design nonlinear and economic MPC controllers that use Optimization Toolbox™ to solve a nonlinear programming (NLP) problem. Use single- or multi-stage formulation for optimal planning and feedback control.

MPC Design for Automated Driving

Accelerate development of automated driving systems using prebuilt Simulink blocks that comply with ISO 26262 and MISRA C standards. Prebuilt blocks support path planning, path following, adaptive cruise control, and other applications.

MPC Optimization Solvers

Select from built-in active-set, interior-point, and mixed-integer QP solvers, or use NLP solvers from Optimization Toolbox. Alternatively, use FORCESPRO solvers (by Embotech) or your own custom solver.

Prediction Model Specification

Specify prediction models analytically with Control System Toolbox™ or Symbolic Math Toolbox™, by linearizing a Simulink model with Simulink Control Design, or through measured data with System Identification Toolbox™ and Deep Learning Toolbox™.

State Estimation and Design Review

Estimate controller states from measured outputs using the state estimator provided by the toolbox or a custom state estimator. Detect potential stability and robustness issues with your linear MPC design using the built-in diagnostic function.

Closed-Loop Simulation

Evaluate controller performance by running closed-loop simulations in Simulink using ISO 26262- and MISRA C-compliant Simulink blocks, as well as in MATLAB with command-line functions. Automate testing for multiple scenarios with Simulink Test™.

Code Generation

Automatically generate production C/C++ and CUDA code, or IEC 61131-3 structured text, from MPC controllers designed in MATLAB and Simulink. Deploy the code to a variety of targets such as ECUs, GPUs, and PLCs.

“With Model-Based Design, our hydraulics engineers can complete the controller design and implementation without involving an embedded engineer. That’s a big advantage, because it saves time and results in a higher-quality controller.”

Eisuke Matsuzaki, Sumitomo Heavy Industries

Get a Free Trial

30 days of exploration at your fingertips.

Request More Information

Let us know how we can help you.