**3. The prediction**

In Fig. 1., the basic principle of MPC is illustrated. It is also very convenient to explain the term 'Prediction' in MPC.

Fig. 1. Basic principle of Model Predictive Control

Consider a SISO discrete system for example, with integer *k* representing the current discrete time, *y*(*k*) representing output and *u*(*k*) representing control input. At time *k*, the historic output *y*(*k*-1), *y*(*k*-2), *y*(*k*-3) …, historic control input *u*(*k*-1), *u*(*k*-2), *u*(*k*-3)…and the instant output *y*(*k*) are known, if we also know the value of instant control input *u*(*k*), the 2 Frontiers of Model Predictive Control

For highly nonlinear processes, and for some moderately nonlinear processes, which have large operating regions, MPC based on local linear model is often inefficient. Since the nonlinearity is the most important essential nature, and the increasing demand on the control performances, controller designers and operators have to face it directly. In 1990s, nonlinear model predictive control (NMPC) became one of the focuses of MPC research and it is still difficult to handle today as Prof. Qin mentioned in his survey (Qin *et al*., 2003). The direct incorporation of a nonlinear process into the MPC formulation will result in a nonconvex nonlinear programming problem, which needs to be solved under strict sampling time constraints. In general, there is still no analytical solution to this kind of nonlinear programming problem. To solve this difficulty, many kinds of simplified model is chosen to present nonlinear systems, such as nonlinear affine model (Cannon, 2004), bilinear model (Yang *et al*., 2007), block-oriented model (including Hammerstein model, Wiener model,

Stochastic characters and other complex factors also special expression models, such as Markov chain description and other method. Limited by the length, we won't introduce them in detail here, readers who are interested in these models can read more surveys on

In Fig. 1., the basic principle of MPC is illustrated. It is also very convenient to explain the

Consider a SISO discrete system for example, with integer *k* representing the current discrete time, *y*(*k*) representing output and *u*(*k*) representing control input. At time *k*, the historic output *y*(*k*-1), *y*(*k*-2), *y*(*k*-3) …, historic control input *u*(*k*-1), *u*(*k*-2), *u*(*k*-3)…and the instant output *y*(*k*) are known, if we also know the value of instant control input *u*(*k*), the

*etc*.)(Harnischmacher *et al*., 2007, Arefi *et al*., 2008).

MPC and then find clue to research on them.

Fig. 1. Basic principle of Model Predictive Control

**3. The prediction** 

term 'Prediction' in MPC.

next future output *y*(*k*+1|*k*) can be predicted. This operation is usually called as one-step prediction.

With similar process, if we know the sequence of future control input *u*(*k*), *u*(*k*+1), *u*(*k*+2), *u*(*k*+3)…, we can predict the sequence of future output *y*(*k*+1|*k*), *y*(*k*+2|*k*), *y*(*k*+3|*k*) …, here, the length of prediction or the number of predictive steps is called predictive horizon in MPC.

In MPC, though we cannot know he sequence of future control input *u*(*k*), *u*(*k*+1), *u*(*k*+2), *u*(*k*+3)…, we can still predict *y*(*k*+1|*k*), *y*(*k*+2|*k*), *y*(*k*+3|*k*), with he sequence of future control input *u*(*k*), *u*(*k*+1), *u*(*k*+2), *u*(*k*+3)… remaining in these predictive values as unknown variables that need to be solved.

If certain expectation future output is given, such as the future trajectory shown in Fig. 1. (the expect way of output how it reaches the setpoint in certain time), to the contrary of prediction mentioned in the second and the third paragraph of this section, the sequence of future control input *u*(*k*), *u*(*k*+1), *u*(*k*+2), *u*(*k*+3)… can be solved by the given *y*(*k*+1|*k*), *y*(*k*+2|*k*), *y*(*k*+3|*k*) …, and this is exactly the way how MPC can get a optimal control law from model prediction.
