Model Predictive Control Toolbox

 

Model Predictive Control Toolbox

Design and simulate model predictive controllers

Chart showing linear MPC methods and when to use them.

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 design parameters shown in the MPC Designer app.

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.

Simulink model with a Nonlinear MPC block.

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.

Animated parking lot with a vehicle following a parking trajectory.

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.

Chart of linear, nonlinear, and custom optimization solvers supported by Model Predictive Control Toolbox.

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.

MPC controller illustration with a deep learning model used for prediction.

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.

Report showing recommendations on MPC design parameters.

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.

The Model Predictive Control Toolbox Library browser in Simulink.

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 report (with generated code) from the MPC controller block.

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.

"Sumitomo Construction Machinery achieved a 15% reduction in fuel consumption without sacrificing the excavator’s dynamic performance. The increase in efficiency was due, in part, to a 50% reduction in engine speed fluctuations made possible by Model Predictive Control Toolbox and our improved control design."

Get a Free Trial

30 days of exploration at your fingertips.


Request More Information

Let us know how we can help you.