Article navigation

Model predictive control: a new paradigm for automatic control

Keywords: Predictive techniques, Control,Control systems

Feedback control

Feedback control is a "hidden technology" which is essential for the operation of most industries and many consumer goods. We could not make petrol for our cars, paper to read from, food for large populations, perform major surgery, or generate electricity without it. We could not land aircraft in fog,drive cars which meet pollution legislation or have ABS systems, use Walkmans,or have long-distance phone conversations without it. Currently feedback control is becoming an essential component of sustainable technology, as it is simply not possible to meet current legislation regarding effluent and other pollution limits without sophisticated control systems (in cars, power stations,industrial complexes etc.).

The idea is simple: measure something you are trying to control, compare the measurement with what it should be, and use the difference to nudge the controlled variable nearer to the desired value. This idea has been used –perhaps unconsciously – since ancient times. Ktesibios's water clock(250AD) used it, and his arrangement has survived to modern times as the float chamber of a carburettor most famously. Watt's flyball governor used the feedback idea for controlling steam engines. In the early 20th century, the feedback concept was consciously articulated in a number of engineering areas, a prime example being Black's feedback amplifier for telephony.

The PID Paradigm

The standard used for feedback control is Proportional, Integral and Derivative (PID) control – in fact, the simpler PI control is used in the great majority of cases. PID can be easily explained and understood.

  • Apply corrective action to reduce the error. Make the action more vigorous as the error increases – proportional action.

  • Add some "accumulated error" to remove any persistent error – integral action.

  • Add some "velocity" signal to increase damping (stability) –derivative action.

Three-term control of this form was gradually developed for a number of applications during the 19th and early 20th centuries, until it was formalised in mathematical terms in the 1920s for ship-steering and for process control.

PID has become the dominant paradigm for control, partly because it was for many years packaged in standard units for process control. But it is a standard paradigm in much wider contexts than that. PID action is what every engineer knows about control – not just the specialists. And many engineers, who face control problems in their own application domains, successfully apply this paradigm without needing to bring in control experts. PID – or even PI– is sufficient for the great majority of control problems. Another strong advantage of PID is that effective tuning rules exist (the Ziegler-Nichols rules) even if limited information is available about the plant being controlled.

But PID has its limits. For example, it is well known that PID control is hard to tune and of limited effectiveness if the time delay in the plant being controlled is longer than its dominant time constant. Challenging performance specifications may require greater controller complexity than PID provides.

Figure 1 PID controller

The PID concept is often presented in the block-diagram form of Figure 1. A similar figure is also used to present more complex controller structures. This figure has the effect of distorting the control problem in several important respects.

  • It suggests that every controlled variable has a set-point.

  • It strongly suggests that the numbers of controlled variables and manipulated variables are equal[1].

  • It suggests that constraints are not important (because they are not visible in any form in the figure).

None of these is true in many control systems.

MFC: model predictive control

Model predictive control, or MFC, can be understood by reference to Figure 2[2]. The current value of the controlled variable is measured. It is invariably found that this is not at the required value (set-point) – because of process disturbances. Some reference trajectory is proposed for gradually bringing the controlled variable back to its set-point. The speed with which this reference trajectory approaches the set-point is an indicator of the"aggressiveness" of the control which will be obtained. Some coincidence points are defined in the future, at which the controlled variable should coincide with the reference trajectory (Figure 2). (Sometimes the reference trajectory is made the same as the set-point trajectory, signifying maximally aggressive control,and frequently every point in the prediction horizon is a coincidence point.)

Figure 2 Model predictive control

A future trajectory for the manipulated variable is then chosen, which brings the predicted controlled variable as close as possible to the reference trajectory at the coincidence points. This future trajectory is found by optimisation, and the predictions are obtained from some kind of model. If the predicted deviation from the reference trajectory is measured by a sum of squares, and the model is linear, then the optimisation problem involved is a linear least-squares problem – one of the most studied problems in numerical analysis, for which standard and very efficient algorithms are available.

The initial part of the computed manipulated variable trajectory is applied to the plant, and a short time later the resulting controlled variable is measured. This is usually not to be found at the value previously predicted, and so the whole cycle is repeated. The new measurement introduces feedback into this control strategy.

The strategy described so far has been applied to industrial problems (both servo and process) by the French company Adersa since 1970[3]. If one adds linear constraints to the problem formulation – actuator range limits,slew rate limits, limits on permissible controlled variable excursions –then the optimisation problem becomes one known as quadratic programming. And if the sum-of-squares criterion is replaced by a criterion such as maximum deviation, or sum of absolute values of deviations, then the optimisation problem becomes the simpler one of linear programming – the most widely studied optimisation problem of all, and the staple tool of operations research,with very efficient and well-developed algorithms. MFC based on linear programming was initially developed within Shell Petroleum, and subsequently by the Dynamic Matrix Corporation (DMC) – now absorbed into Aspentech –which developed the most well-known MPC product, primarily for the petrochemicals industry[4].

The optimisation required for MPC has to be solved on-line, in real time. This initially restricted the application of MPC to slow processes. However,both linear and quadratic programming problems are special cases of convex optimisation problems, for which great algorithmic advances have been made in the last 15 years or so. It has been estimated that, if one took full advantage of increases in processor speed, and of improved algorithms, a speed-up of about six orders of magnitude was possible between 1990 and 2000. This means that a problem which required 10min of computation time in 1990 should have needed only about 600m/s in 2000. This clearly means that we should not think of MPC as being confined to slow process applications any more. It is potentially of use in fast, high-bandwidth applications, such as aerospace systems, automotive control, and many servo applications.

The applicability of MPC to high-bandwidth applications has recently been further extended by the discovery that an MPC controller is actually a collection of linear controllers, the particular linear controller in action at any time being determined by the current state of the plant being controlled. Thus it is, in principle, possible to pre-compute these linear controllers off-line and store them in a database (or look-up table in more prosaic language). Deciding which is the appropriate controller to use at any instant can be done relatively quickly. The practical limit to this approach is that when there are many controllers, the number of linear controllers that has to be pre-computed and stored grows exponentially (roughly 2n, where n is the number of constraints; in some problems there can be hundreds or thousands of constraints).

The importance of constraints

Many, perhaps most, systems are at their most productive, or most economical,when run up against constraints – such as maximal flow rates through pipes, maximal safe pressure in a vessel, maximal roll angle in a submarine, or maximal pollutant level which just satisfies environmental legislation. Since one has to allow for unpredicted disturbances, one cannot actually run a control system at a constraint, but must operate as close to it as possible, while keeping the probability of violation down to some acceptable level. MFC is capable of reacting in a very nonlinear fashion as a constraint is approached– essentially it concentrates on satisfying the constraint, at the expense of other performance goals. This allows constraints to be approached more closely than would be possible with a linear controller such as PID (or a more complex linear controller), even a well-tuned one. In an industry such as petrochemicals, with very high-value products, moving slightly nearer to the constraints can worth very large sums of money. Very short payback times have been reported for MFC in such industries.

Once constraints are allowed into the problem formulation, it is possible to replace set-points with zone objectives for some controlled variables. That is,one can tell the controller to be indifferent about the precise level of the variable, so long as it remains within specified limits. A standard application of this idea is in buffer or surge tanks; if a flow disturbance comes along,controlling the level in a tank to a fixed set-point would cause the flow disturbance to be propagated downstream. But if the tank is allowed to absorb the disturbance, the level being allowed to either rise or fall as required,then the disturbance is effectively buffered, and not passed on to other units downstream. Of course, this idea is implemented frequently using conventional control technology, but the point is that MPC allows this to be done easily just by specifying the objectives, rather than prescribing a solution – an example of what and not how.

Conventional PID-based control deals with constraints by treating them as exceptional conditions. An initially-simple PID-based scheme is surrounded by a"spaghetti" of logic and safety-jacketing software. Even the relatively tidy"anti wind-up" schemes for dealing with integrator saturation, which are now available, are, in a logical sense, afterthoughts. By contrast, constraints are built in to the MPC problem specification "up-front". And incidentally integrator wind-up does not arise, so long as the MPC controller is aware of actuator limits (constraints).

MPC makes some things easier

Systematic constraint handling is something which is simply not available with PID (or other, less frequently applied) control. But MPC also makes some things easier, even when no constraints are specified. Coordinated control of several variables, using several manipulated variables (that is, multivariable control) is not a big deal. The idea expressed in Figure 2 still holds; one just has to imagine several controlled variables being predicted in the upper part of the figure, and several (but not necessarily the same number) of manipulated variable trajectories being chosen in the lower part). Mathematically the problem does not change much – dimensions of some matrices change –and the algorithms used do not change at all (except in computational complexity, i.e. CPU, memory and time requirements). What is new is that a decent model of cross-couplings between variables is needed, but this is needed for any form of multivariable control.

A well-known obstacle for PID – or at least for PI – controllers are systems with time delays longer than the dominant time constant. It is difficult or impossible to get good performance in such cases. But for MPC these systems cause no particular difficulty. Provided that the prediction horizon is chosen to be longer than the time delay – a very natural requirement– then MPC controllers can provide very good performance[5].

Systems which are open-loop unstable, or display inverse reaction (initial response in the opposite direction to the long-term response) are difficult to control using conventional approaches, and generally require something more complex than PID. The classical Nyquist-theorem based approach requires the frequency plot to encircle the critical point as many times as the plant has unstable poles – quite a difficult task to achieve, requiring considerable expertise. For example, a helicopter with manipulated variable being the main rotor angle, and controlled variable being forward speed, is both unstable and has inverse reaction. In the author's experience an almost arbitrary choice of parameters for an MPC controller results in a stable closed loop.

MPC for fault-tolerant control

The author's interest in MPC was sparked by its potential application to providing fault-tolerant controllers. In complex processes there is often some redundancy of actuators and other components, which can be exploited in case of equipment failure, battle damage, and similar events. Consider the following scenario for a control system based on MPC[6]

  • A failure occurs.

  • The MPC's internal model is updated.

  • The MPC optimiser figures out what to do.

The really hard step is the second one: detecting the failure and updating the model to reflect the failed condition. Sometimes this will be relatively easy. The increasing availability of self-validating and self-diagnosing sensors and actuators means that information about some failures becomes available easily and very quickly. And failures such as jammed actuators can be represented easily in the MPC framework by adjusting the constraint specifications – for example, setting a maximum slew rate to zero. But in general, detecting and representing the failed condition is hard. We proceed by assuming that the failure detection and isolation (FDI) function has been performed (somehow), and we want to demonstrate the benefits that could be achieved in that case by using MPC.

We illustrate the possibilities by reference to an actual aircraft incident– that of El Al Flight 1862[7]. This involved a cargo Boeing 747 which suffered separation of both starboard engines during take-off from Amsterdam airport. The engine separation caused damage to the leading edge of the starboard wing, reduced effectiveness of the starboard leading-edge flaps, loss of the outer ailerons, loss of 6 out of 10 spoilers, and an unusually long lag on the lower rudder. The pilot managed to fly the damaged plane for about 10min,but then lost control while executing a right turn (lining up for landing) and crashed into an apartment block, with the loss of about 80 lives.

We have simulated flying the damaged 747 using an MFC controller, whose internal (linear) model has been updated with FDI information. The set-up is shown in Figure 3. The idea is that the MFC controller attempts to restore the usual behaviour of the plane, but it does so by using the available control surfaces (and engine thrusts) in a highly unconventional manner. The pilot's commands are processed by a reference model, whose outputs are the undamaged plane's expected behaviour. The MFC controller then tries to track that behaviour, thus to some extent hiding the effects of the damage from the pilot. In our simulation this controller was running at an update frequency of 10Hz. We also had to simulate a pilot, and for this purpose we used a second MFC controller, running at 1Hz. The damaged plane was simulated by a very detailed nonlinear model which was made available to us by TU Delft. Our simulation showed that we were able to fly the damaged plane past the point at which the pilot lost control, and bring it down to ground level.

Figure 3 MPC-based fault-tolerent controller

There is plenty more to be done to make this concept of fault-tolerant control a reality. But by tackling examples such as this one with a realistic level of detail, we have demonstrated its plausibility. Hard problems remain,including some fundamental science, such as "How much – and what kind of– information do we really need in order to control something?"

Conclusion

The FID paradigm has been enormously successful, and is sufficient for many control problems. It is currently the dominant paradigm in automatic control. The author contends that MFC should now be viewed as an equally valid paradigm– not to replace FID, but to complement it, and to be considered the standard technology for those problems which are too tough for FID to do well.

For further details contact: Dr Jan Maciejowski, Tel: +44 (0) 1223 332732;Fax: +44 (0) 1223 332662; E-mail: jmm@eng.cam.ac.uk

Jan MaciejowskiPresident of the Institute of Measurement and Control

Notes

  • 1.

    This suggestion is avoided if one thinks of the lines as vectors of signals, and of the blocks as matrix- valued operators. But these are sophisticated interpretations for control experts.

  • 2.

    Taciejowski, J.M. (2002), Predictive Control with Constraints,Prentice-Hall, Englewood Cliffs, NJ, USA. Advantage of PID is that effective tuning rules exist (the Ziegler-Nichols rules) even if limited information is available about the plant being controlled.

  • 3.

    Richalet, J. et al. (1978), "Model predictive heuristic control:applications to industrial processes", Automatica, Vol. 14, pp. 413-28.

  • 4.

    Cutler, C.R. and Ramaker, B.L. (1980), "Dynamic matrix control – a computer control algorithm", Proc. Joint American Control Conference, San Francisco.

  • 5.

    The prediction within MFC provides phase advance, which makes this possible. Such phase advance is also obtained – though in a more complicated way – in a Smith predictor.

  • 6.

    Maciejowski, J.M. and Jones, C.N. (2003), "MFC Fault-Tolerant flight control case study: Flight 1862", submitted to IFAC Safeprocess Conference, June 2003, Washington DC.

  • 7.

    Smaili, M.H. (1997), "Flight data reconstruction and simulation of EL AL flight 1862", MSc thesis, Technical University Delft. Model predictive control.

or Create an Account

Close Modal
Close Modal