Model predictive control is an advanced method of process control that has been
in use in the process industries in chemical plants and oil refineries since
the 1980s. In recent years it has also been used in power system balancing
models. Model predictive controllers rely on dynamic models of the process,
most often linear empirical models obtained by system identification. The
main advantage of MPC is the fact that it allows the current timeslot to be
optimized, while keeping future timeslots in account. This is achieved
by optimizing a finite time-horizon, but only implementing the current timeslot.
MPC has the ability to anticipate future events and can take control actions
accordingly. PID and LQR controllers do not have this predictive ability. MPC is
nearly universally implemented as a digital control, although there is
research into achieving faster response times with specially designed analog
circuitry. Overview
The models used in MPC are generally intended to represent the behavior of
complex dynamical systems. The additional complexity of the MPC control
algorithm is not generally needed to provide adequate control of simple
systems, which are often controlled well by generic PID controllers. Common
dynamic characteristics that are difficult for PID controllers include
large time delays and high-order dynamics.
MPC models predict the change in the dependent variables of the modeled
system that will be caused by changes in the independent variables. In a chemical
process, independent variables that can be adjusted by the controller are often
either the setpoints of regulatory PID controllers or the final control
element. Independent variables that cannot be adjusted by the controller are
used as disturbances. Dependent variables in these processes are other
measurements that represent either control objectives or process
constraints. MPC uses the current plant measurements,
the current dynamic state of the process, the MPC models, and the process
variable targets and limits to calculate future changes in the dependent
variables. These changes are calculated to hold the dependent variables close to
target while honoring constraints on both independent and dependent
variables. The MPC typically sends out only the first change in each
independent variable to be implemented, and repeats the calculation when the
next change is required. While many real processes are not
linear, they can often be considered to be approximately linear over a small
operating range. Linear MPC approaches are used in the majority of applications
with the feedback mechanism of the MPC compensating for prediction errors due
to structural mismatch between the model and the process. In model predictive
controllers that consist only of linear models, the superposition principle of
linear algebra enables the effect of changes in multiple independent
variables to be added together to predict the response of the dependent
variables. This simplifies the control problem to a series of direct matrix
algebra calculations that are fast and robust.
When linear models are not sufficiently accurate to represent the real process
nonlinearities, several approaches can be used. In some cases, the process
variables can be transformed before and/or after the linear MPC model to
reduce the nonlinearity. The process can be controlled with nonlinear MPC that
uses a nonlinear model directly in the control application. The nonlinear model
may be in the form of an empirical data fit or a high-fidelity dynamic model
based on fundamental mass and energy balances. The nonlinear model may be
linearized to derive a Kalman filter or specify a model for linear MPC.
An algorithmic study by El-Gherwi, Budman, and El Kamel shows that
utilizing a dual-mode approach can provide significant reduction in online
computations while maintaining comparative performance to a non-altered
implementation. The proposed algorithm solves N convex optimization problems in
parallel based on exchange of information among controllers.
= Theory behind MPC = MPC is based on iterative,
finite-horizon optimization of a plant model. At time t the current plant state
is sampled and a cost minimizing control strategy is computed for a relatively
short time horizon in the future: . Specifically, an online or on-the-fly
calculation is used to explore state trajectories that emanate from the
current state and find a cost-minimizing control strategy until time . Only the
first step of the control strategy is implemented, then the plant state is
sampled again and the calculations are repeated starting from the new current
state, yielding a new control and new predicted state path. The prediction
horizon keeps being shifted forward and for this reason MPC is also called
receding horizon control. Although this approach is not optimal, in practice it
has given very good results. Much academic research has been done to find
fast methods of solution of Euler–Lagrange type equations, to
understand the global stability properties of MPC's local optimization,
and in general to improve the MPC method. To some extent the theoreticians
have been trying to catch up with the control engineers when it comes to MPC.
= Principles of MPC = Model Predictive Control is a
multivariable control algorithm that uses:
an internal dynamic model of the process a history of past control moves and
an optimization cost function J over the receding prediction horizon,
to calculate the optimum control moves. An example of a non-linear cost function
for optimization is given by: without violating constraints
With: = i -th controlled variable
= i -th reference variable = i -th manipulated variable
= weighting coefficient reflecting the relative importance of
= weighting coefficient penalizing relative big changes in
etc. Nonlinear MPC
Nonlinear Model Predictive Control, or NMPC, is a variant of model predictive
control that is characterized by the use of nonlinear system models in the
prediction. As in linear MPC, NMPC requires the iterative solution of
optimal control problems on a finite prediction horizon. While these problems
are convex in linear MPC, in nonlinear MPC they are not convex anymore. This
poses challenges for both NMPC stability theory and numerical solution.
The numerical solution of the NMPC optimal control problems is typically
based on direct optimal control methods using Newton-type optimization schemes,
in one of the variants: direct single shooting, direct multiple shooting
methods, or direct collocation. NMPC algorithms typically exploit the fact
that consecutive optimal control problems are similar to each other.
This allows to initialize the Newton-type solution procedure
efficiently by a suitably shifted guess from the previously computed optimal
solution, saving considerable amounts of computation time. The similarity of
subsequent problems is even further exploited by path following algorithms
that never attempt to iterate any optimization problem to convergence, but
instead only take one iteration towards the solution of the most current NMPC
problem, before proceeding to the next one, which is suitably initialized.
While NMPC applications have in the past been mostly used in the process and
chemical industries with comparatively slow sampling rates, NMPC is more and
more being applied to applications with high sampling rates, e.g., in the
automotive industry, or even when the states are distributed in space
Robust MPC Robust variants of Model Predictive
Control are able to account for set bounded disturbance while still ensuring
state constraints are met. There are three main approaches to robust MPC:
Min-max MPC. In this formulation, the optimization is performed with respect
to all possible evolutions of the disturbance. This is the optimal
solution to linear robust control problems, however it carries a high
computational cost. Constraint Tightening MPC. Here the
state constraints are enlarged by a given margin so that a trajectory can be
guaranteed to be found under any evolution of disturbance.
Tube MPC. This uses an independent nominal model of the system, and uses a
feedback controller to ensure the actual state converges to the nominal state.
The amount of separation required from the state constraints is determined by
the robust positively invariant set, which is the set of all possible state
deviations that may be introduced by disturbance with the feedback
controller. Multi-stage MPC. This uses a
scenario-tree formulation by approximating the uncertainty space with
a set of samples and the approach is non-conservative because it takes into
account that the measurement information is available at every time stages in the
prediction and the decisions at every stage can be different and can act as
recourse to counteract the effects of uncertainties. The drawback of the
approach however is that the size of the problem grows exponentially with the
number of uncertainties and the prediction horizon.
Commercially available MPC software Commercial MPC packages are available
and typically contain tools for model identification and analysis, controller
design and tuning, as well as controller performance evaluation.
A survey of commercially available packages has been provided by S.J. Qin
and T.A. Badgwell in Control Engineering Practice 11 733–764.
See also System identification
Control theory Control engineering
Feed-forward References
Further reading Kwon, W. H.; Bruckstein, Kailath.
"Stabilizing state feedback design via the moving horizon method".
International Journal of Control 37: pp.631–643.
doi:10.1080/00207178308932998. CS1 maint: Extra text
Garcia, C; Prett, Morari. "Model predictive control: theory and
practice". Automatica 25: pp.335–348. doi:10.1016/0005-1098(89)90002-2. CS1
maint: Extra text Mayne, D.Q.; Michalska. "Receding
horizon control of nonlinear systems". IEEE Transactions on Automatic Control
35: pp.814–824. doi:10.1109/9.57020. CS1 maint: Extra text
Mayne, D; Rawlings, Rao, Scokaert. "Constrained model predictive control:
stability and optimality". Automatica 36: pp.789–814.
doi:10.1016/S0005-1098(99)00214-9. CS1 maint: Extra text
Allgöwer; Zheng. Nonlinear model predictive control. Progress in Systems
Theory 26. Birkhauser. Camacho; Bordons. Model predictive
control. Springer Verlag. Findeisen; Allgöwer, Biegler. Assessment
and Future Directions of Nonlinear Model Predictive Control. Lecture Notes in
Control and Information Sciences 26. Springer.
Diehl, M; Bock, Schlöder, Findeisen, Nagy, Allgöwer. "Real-time optimization
and Nonlinear Model Predictive Control of Processes governed by
differential-algebraic equations". Journal of Process Control 12:
pp.577–585. doi:10.1016/S0959-1524(01)00023-3. CS1
maint: Extra text External links
Control Tuning and Best Practices P. Orukpe: Basics of Model Predictive
Control Case Study. Lancaster Waste Water
Treatment Works, optimisation by means of Model Predictive Control from
Perceptive Engineering ACADO Toolkit - Open Source Toolkit for
Automatic Control and Dynamic Optimization providing linear and
non-linear MPC tools. jMPC Toolbox - Open Source MATLAB
Toolbox for Linear MPC. Model Predictive Control Free book
edited by Tao Zheng, Publisher: Sciyo, 2010.
Study on application of NMPC to superfluid cryogenics.
Nonlinear Model Predictive Control Toolbox for MATLAB and Python
Model Predictive Control Toolbox from MathWorks for design and simulation of
model predictive controllers in MATLAB and Simulink
Pulse step model predictive controller - virtual simulator
Tutorial on MPC with Excel and MATLAB Examples