Generalized predictive control--Part I 139
multiplied by
EjAq j
we have:
Subtracting (9) from (10) gives:
EjAAy(t + j) = EjBAu(t + j -
1)
+ Ej¢(t + j)
and substituting for
EjAA
from (6) gives:
y(t + j) = EjBAu(t + j -
1)
+ Fjy(t) +
E~(t
+ j).
(7)
0 = .4(R - E) + q-J(q-1S - F).
The polynomial R - E is of degree j and may be
split into two parts:
R- E = ~ + rjq -j
so that:
As
Ej(q-1)
is of degree j - 1 the noise components
are all in the future so that the optimal predictor,
given measured output data up to time t and any
given
u(t + i)
for i > l, is clearly:
9(t + j It) = GjAu(t + j -
1) +
Fjy(t)
(8)
where
Gj(q-1) = EjB.
Note that
Gj(q-
1) =
B(q-
1)[1 -
q-~Fj(q-
t)]/
A(q-
t)A so that one way of computing G~ is simply
to consider the Z-transform of the plant's step-
response and to take the first j terms (Clarke and
Zhang, 1985).
In the development of the GMV self-tuning
controller only one prediction
~(t + kit)
is used
where k is the assumed value of the plant's dead-
time. Here we consider a whole set of predictions
for which j runs from a minimum up to a large
value: these are termed the minimum and maximum
"prediction horizons". For j < k the prediction
process .P(t +Jl t) depends entirely on available
data, but for j >/k assumptions need to be made
about future control actions. These assumptions
are the cornerstone of the GPC approach.
2.1. Recursion of the Diophantine equation
One way to implement long-range prediction is
to have a bank of self-tuning predictors for each
horizon j; this is the approach of De Keyser
and Van Cauwenberghe (1982, 1983) and of the
MUSMAR method (Mosca
et al.,
1984). Altern-
atively, (6) can be resolved numerically for E i and
F i for the whole range of js being considered.
Both these methods are computationally expensive.
Instead a simpler and more effective scheme is to
use recursion of the Diophantine equation so that
the polynomials
Ej+I
and
Fj+I
are obtained given
the values of
Ej
and Fj.
Suppose for clarity of notation E =
E j, R = E j. 1,
F = Fj, S = Fj+ ~
and consider the two Diophantine
equations with $ defined as AA:
1 = EA + q-iF
(9)
1 = R.4 + q-tJ+ 1~S.
(10)
~IR + q-J(q-tS - F
+ ,4rj) =
O.
Clearly then /~ = 0 and also S is given
Sq( F - ,~r j).
As ,4 has a unit leading element we have:
by
rj -~ fo
(1 la)
Si = fi+ 1 -- ~li+ lri
(1 lb)
for i = 0 to the degree of
S(q-1);
and:
R(q-i) = E(q-1) + q-Jrj
(12)
G j+ I = B(q- 1)R(q- 1).
(13)
Hence given the plant polynomials
A(q -1)
and
B(q-1)
and one solution
Ej(q-a)
and
Fj(q-1)
then
(11) can be used to obtain
Fj+~(q -1)
and (12) to
give E j+ l(q- 1) and so on, with little computational
effort. To initialize the iterations note that forj = 1:
1 --- E1.4 + q-1Ft
and as the leading element of ,4 is 1 then:
E1 = 1, F1 = q(1 - ,']).
The calculations involved, therefore, are straightfor-
ward and simpler than those required when using
a separate predictor for each output horizon.
3. THE PREDICTIVE CONTROL LAW
Suppose a future set-point or reference sequence
[w(t +
j); j = 1,2 .... ] is available. In most cases
w(t + j)
will be a constant w equal to the current set-
point w(t), though sometimes (as in batch process
control or robotics) future variations in
w(t +j)
would be known. As in the IDCOM algorithm
(Richalet
et al.,
1978) it might be considered that a
smoothed approach from the current output Xt) to
w is required which is obtainable from the simple