Nonlinear MPC Design
As in traditional linear MPC, nonlinear MPC calculates control actions at each control interval, using a combination of model-based prediction and constrained optimization. The key differences are:
The prediction model can be nonlinear and include time-varying parameters
The equality and inequality constraints can be nonlinear
The scalar cost function to be minimized can be a nonquadratic (linear or nonlinear) function of the decision variables.
By default, nonlinear MPC controllers solve a nonlinear programming problem using
fmincon function, which requires Optimization Toolbox™ software. If you do not have Optimization Toolbox software you can specify your own custom nonlinear solver.
For more information, see Nonlinear MPC.
|Nonlinear model predictive controller|
|Multistage nonlinear model predictive controller|
|Compute optimal control action for nonlinear MPC controller|
|Option set for |
|Create data structure to simulate multistage MPC controller with
|Examine prediction model and custom functions of |
|Create Simulink bus object and configure Bus Creator block for passing model parameters to Nonlinear MPC Controller block|
Nonlinear MPC Basics
Nonlinear model predictive controllers control plants using nonlinear prediction models, cost functions, or constraints.
To define a prediction model for a nonlinear MPC controller, specify the state and output functions.
Nonlinear MPC controllers support generic cost functions, such as a combination of linear or nonlinear functions of the system states, inputs, and outputs.
You can specify custom linear and nonlinear constraints for your nonlinear MPC controller in addition to standard linear MPC constraints.
By default, nonlinear MPC controllers optimize their control move using the
fmincon function from the Optimization Toolbox. You can also specify your own custom nonlinear solver.
You can use nonlinear MPC for both optimal trajectory planning and closed-loop control applications.
Plan an optimal rocket lander trajectory and perform closed-loop control of landing process using multistage nonlinear MPC.
Control a nonlinear plant as it transitions between operating points.
Achieve swing-up and balancing control of an inverted pendulum on a cart using a nonlinear model predictive controller.
You can generate one or more linear MPC controllers from a nonlinear MPC controller and use these controllers for gain-scheduled control applications.
Simulate nonlinear MPC controller as adaptive and time-varying MPC controller, and compare performance.
You can use nonlinear MPC controllers for optimal planning applications that require a nonlinear model with nonlinear costs or constraints.
Use nonlinear MPC to plan and execute trajectories for a robot manipulator.
Economic model predictive controllers optimize control actions to satisfy generic economic or performance cost functions.
Maximize production of an ethylene oxide plant for profit using a nonlinear cost function and nonlinear constraints.