Model predictive control
From Wikipedia, the free encyclopedia
Model Predictive Control, or MPC, is an advanced method of process control that has been in use in the process industries such as chemical plants and oil refineries since the 1980s. Model predictive controllers rely on dynamic models of the process, most often linear empirical models obtained by system identification.
Contents |
[edit] Overview
The models are used to predict the behavior of dependent variables (i.e. outputs) of a dynamical system with respect to changes in the process independent variables (i.e. inputs). In chemical processes, independent variables are most often setpoints of regulatory controllers that govern valve movement (e.g. valve positioners with or without flow, temperature or pressure controller cascades), while dependent variables are most often constraints in the process (e.g. product purity, equipment safe operating limits). The model predictive controller uses the models and current plant measurements to calculate future moves in the independent variables that will result in operation that honors all independent and dependent variable constraints. The MPC then sends this set of independent variable moves to the corresponding regulatory controller setpoints to be implemented in the process.
Despite the fact that most real processes are approximately linear within only a limited operating window, 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 plant. 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 because of process nonlinearities, the process can be controlled with nonlinear MPC. Nonlinear MPC utilizes a nonlinear model directly in the control application. The nonlinear model may be in the form of an empirical data fit (e.g. artificial neural networks) or a high fidelity model based on fundamentals such as mass, species, and energy balances. The nonlinear model may be linearized to derive a Kalman filter or specify a model for linear MPC. The time derivatives may be set to zero (steady state) for applications of real-time optimization or data reconciliation. Alternatively, the nonlinear model may be used directly in nonlinear model predictive control and nonlinear estimation (e.g. moving horizon estimation). A reliable nonlinear model is a core component of simulation, estimation, and control applications.
[edit] 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 (via a numerical minimization algorithm) for a relatively short time horizon in the future: [t,t + T]. Specifically, an online or on-the-fly calculation is used to explore state trajectories that emanate from the current state and find (via the solution of Euler-Lagrange equations) a cost-minimizing control strategy until time t + T. 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 now 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.
[edit] Principles of MPC
Model Predictive Control (MPC) 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 prediction horizon,
to calculate the optimum control moves.
The optimization cost function is given by:
without violating constraints (low/high limits)
With:
xi = i -th control variable (e.g. measured temperature)
ri = i -th reference variable (e.g. required temperature)
ui = i -th manipulated variable (e.g. control valve)
= weighting coefficient reflecting the relative importance of xi
= weighting coefficient penalizing relative big changes in ui
etc.
[edit] Nonlinear MPC
Nonlinear Model Predictive Control, or NMPC, is a variant of model predictive control (MPC) 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.[1]
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, 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 (or "real-time iterations") that do never attempt to iterate any optimization problem to convergence, but instead only iterate with 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.
[edit] See also
[edit] References
- ^ An excellent overview of the state of the art (in 2008) is given in the proceedings of the two large international workshops on NMPC, by Zheng and Allgower (2000) and by Findeisen, Allgöwer, and Biegler (2006).
[edit] Further reading
- Kwon; Bruckstein, Kailath (1983). "Stabilizing state feedback design via the moving horizon method". International Journal of Control 37: pp.631-643.
- Garcia; Prett, Morari (1989). "Model predictive control: theory and practice". Automatica 25: pp.335-348.
- Mayne; Michalska (1990). "Receding horizon control of nonlinear systems". IEEE Transactions on Automatic Control 35: pp.814-824.
- Mayne; Rawlings, Rao, Scokaert (2000). "Constrained model predictive control: stability and optimality". Automatica 26: pp.789-814.
- Allgöwer; Zheng (2000). Nonlinear model predictive control, Progress in Systems Theory 26. Birkhauser.
- Findeisen; Allgöwer, Biegler (2006). Assessment and Future Directions of Nonlinear Model Predictive Control, Lecture Notes in Control and Information Sciences 26. Springer.
- Diehl; Bock, Schlöder, Findeisen, Nagy, Allgöwer (2002). "Real-time optimization and Nonlinear Model Predictive Control of Processes governed by differential-algebraic equations". Journal of Process Control 12: pp.577-585.