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|
|Compute optimal control action for nonlinear MPC controller|
|Option set for nlmpcmove function|
|Examine prediction model and custom functions of nlmpc object for potential problems|
|Convert nlmpc object into one or more mpc objects|
|Create Simulink bus object and configure Bus Creator block for passing model parameters to Nonlinear MPC Controller block|
|Nonlinear MPC Controller||Simulate nonlinear model predictive controllers|
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 theOptimization
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.
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.
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.