3.2 Decoupling non-minimal state space MPC
3.2.1 Incremental input form
As presented in (Wang and Young 2006; Wang 2009), the non-minimal state-space system representation in incremental input form is given by
x∆,k = G∆x∆,k−1+ B∆∆vk−1
yk = C∆x∆,k
(3.17)
with A modification to the usual linear state-space MPC formulation, see e.g. (Ikonen and Najim 2002; Kwon and Han 2005; Camacho and Bordons 2007;
Wang 2009), is proposed here, that allows to assign individual prediction and control horizons, denoted Np and Nc, respectively, to the n input-output pairs (∆vi, yi) i = 1, 2, . . . , n. The vectors of the predicted system outputs Y , future input differences ∆V and the future reference trajectory R are defined to be
Yi = [yi,k+1|k yi,k+2|k · · · yi,k+N pi|k]T
respectively. For completeness,
∆Ui = [∆ui,k|k ∆ui,k+1|k · · · ∆ui,k+N ci−1|k]T
∆U = [∆U1T ∆U2T · · · ∆UnT]T
(3.20e)
and
Ui = [ui,k|k ui,k+1|k · · · ui,k+N ci−1|k]T U = [U1T U2T · · · UnT]T
(3.20f)
denote the current and predicted incremental inputs as well as the current and predicted inputs, respectively.
The cost function required to be minimised, however, is of the same form as in (Wang and Young 2006)
J∆= (Y − R)TQ(Y − R) + ∆VTΛ∆V (3.21)
where Q = diag(Q1Q2. . . Qn) and Λ = diag(Λ1Λ2. . . Λn) are positive definite and positive semi-definite block diagonal weighting matrices, respectively, where the individual matrix blocks Qi ∈ RN pi×N pi and Λi ∈ RN ci×N ci are themselves diagonal matrices.
In order to minimise the cost function (3.21) w.r.t the decision variables
∆V, i.e. input differences, requires that the output predictions Y are expressed in terms of ∆V . As an exemplary, yet representative case, the output predictions
of the ith output, by taking (3.17) into account, are given by
yi,k+1|k = C∆,ix∆,k+1|k= C∆,iG∆x∆,k|k+ C∆,iB∆,i∆vi,k
yi,k+2|k = C∆,iG2∆x∆,k|k+ C∆,iG∆B∆,i∆vi,k|k
+ C∆,iB∆,i∆vi,k+1|k
yi,k+3|k = C∆,iG3∆x∆,k|k+ C∆,iG2∆B∆,i∆vi,k|k
+ C∆,iG∆B∆,i∆vi,k+1|k + C∆,iB∆,i∆vi,k+2|k
...
yi,k+N ci|k = C∆,iGN c∆ix∆,k|k
+ C∆,i
N cXi−1 j=0
Gj∆B∆,i∆vi,k+N ci−1−j|k ...
yi,k+N pi|k = C∆,iGN p∆ ix∆,k|k
+ C∆,i
N pXi−N ci
j=N pi−1
Gj∆B∆,i∆vi,k+N pi−1−j|k
(3.22)
where C∆,i denotes the ith row of C∆ and B∆,i denotes the ith column of B∆, respectively. Furthermore, (3.22) can be written in a more compact form
Yi = Fix∆,k+ Φi∆Vi (3.23)
with
Subsequently, the predictions of the n outputs are obtained from
Y = F x∆,k+ Φ∆V (3.26)
with F = [F1T F2T · · · FnT]T ∈ RPni=1N pi×n(na+nbd) and Φ = diag(Φ1Φ2· · · Φn) ∈ RPni=1N pi×Pni=1N ci being a block diagonal matrix.
Substituting (3.26) into the cost function (3.21) and solving the optim-isation problem
min.∆V J∆ (3.27)
the incremental artificial input predictions are obtained in the usual state variable feedback form, cf. (Wang 2009)
∆V = −Kx∆x∆,k+ KR∆R (3.28a)
i=1Npi feedback gain matrices, respectively.
System input recovery
Solving the optimisation problem (3.27) results in obtaining the transformed sys-tem input (3.28a), however, the syssys-tem input uk is required to be obtained since this input is applied to the actual system.
Consider the input transformation (3.8) and associated transformation matrix E(z−1) defined in (3.9) and (3.10), respectively, which can also be written as sim-plicity, let the order of all the polynomials (3.30) identically be ne, which also follows directly from (3.10). This may mean that some of the coefficients ejli are
set to zero.
Remark 3.2.1. In the case of MIMO systems with multiple time delays, i.e.
the time delay of the individual transfer functions in (3.3) differ, some leading coefficients in (3.30) are set zero anyway.
So, the ith input can be obtained as
ui,k = Xn
l=1
eil(z−1)vl,k (3.31)
and, subsequently, the predictions of the ith input are given by
ui,k+j = Xn
l=1
eil(z−1)vl,k+j ∀j = 1, 2, . . . , Nci− 1 (3.32)
and, as a consequence, the entire vector containing current and predicted input values (3.20f) can be recovered by
U = ˜EV + ˆE ˆV (3.33)
with
Essentially, (3.33) is the representation of (3.31) and (3.32) in a compact matrix form. Also, note that (3.33) consists of a term corresponding to the current and predicted inputs and a term corresponding to previous inputs only, since
Vˆ = [v1,k−1 v1,k−2 . . . v1,k−ne v2,k−1 v2,k−2 . . . v2,k−ne
. . . vn,k−1 vn,k−2 . . . vn,k−ne+1 vn,k−ne]T (3.36)
Handling constraints
When imposing constraints on the system, it is desired that these do not introduce cross-couplings of the outputs. Consequently, if there is a change of the reference signal affecting, e.g. Y1, then, the remaining outputs are not supposed to be affected, despite imposed constraints on the input and/or output. The proposed modification of the NMSS MPC formulation in incremental input form allows one to consider the input-output pairs (∆Vi, Yi) individually. This, in turn, allows the choice of which outputs are allowed to change and which are not by making use of the reference governor approach, see e.g. (Bemporad and Mosca 1994;
Gilbert and Kolmanovsky 1995; Bemporad et al. 1997; Angeli and Mosca 1999;
Exadaktylos et al. 2008). Similar to the closed-loop paradigm (CLP) (Rossiter 2004), where a perturbation term is added to the optimal, i.e. unconstrained, control law such that the constraints are fulfilled, the reference governor adapts the reference signal in order to avoid constraint violation, i.e.
W = R + Γ (3.37)
where W ∈ RPni=1N pi×1 denotes the adapted reference signal and
Γ = [ΓT1 ΓT
2 . . . ΓTn]T (3.38)
denotes the reference signal perturbation vector where
Γi = [γi,k+1|k γi,k+2|k . . . γi,k+N pi|k]T (3.39)
denotes the reference signal perturbation corresponding to the ith system output reference trajectory.
Since Γ describes a deviation from the desired reference trajectory, the values of its elements γi,k+j|k are ideally zero, which corresponds to the case of inactive constraints. Moreover, in order to maintain offset-free steady-state set-point tracking, the sequences {γi,k+1|k γi,k+2|k . . . γi,k+N pi|k} ∀i = 1, 2, . . . , n are required to converge to zero, which is assumed here. However, to keep the deviation as small as possible, the following quadratic optimisation problem can be formulated
min.Γ
ΓT Γ s. t. M Γ ≤ N
(3.40)
where the constraints are required to be fulfilled element wise. The matrices M and N of dimension (4Pn
i=1Npi)×1, respectively, formulate the constraints on the incremental system input, system input as well as system output, i.e.
M =
respectively, and are subsequently derived.
At first, consider the case of imposing constraints on the incremental inputs ∆U , i.e.
∆U ≤ ∆U ≤ ∆U (3.42)
where (·) and (·) denote the lower and upper boundaries, respectively. The op-timal predicted control sequence (3.28), when considering the adapted reference signal W , becomes
∆V = −Kxx∆,k+ KR(R + Γ) = ∆Vopt+ KRΓ (3.43)
where the subscript (·)opt denotes optimal, i.e. unconstrained, and is the solution of (3.21), i.e. (3.28). Substituting (3.43) into (3.33) after multiplying throughout with ∆, gives
∆U = ˜E∆Vopt+ ˆE∆ ˆV + ˜EKRΓ= ∆Uopt+ ˜EKRΓ (3.44)
so that the matrices formulating the constraints associated with ∆U , are given by
M∆U =
− ˜EKR
EK˜ R
; N∆U =
∆Uopt− ∆U
∆U − ∆Uopt
(3.45)
which are of dimension 2Pn
i=1Nci×Pn
i=1Npi and 2Pn
i=1Nci× 1, respectively.
Next, consider constraints on the input magnitude of U , i.e.
U ≤ U ≤ U (3.46)
these can be directly derived from above by expressing ∆U in a compact matrix form, i.e.
∆U = Υ1U − Υ2 uk−1 (3.47)
where
denote matrices of dimensionPn
i=1Nci×Pn
i=1NciandPn
i=1Nci×n, respectively.
So, the constraints can be formulated to be
MU =
and these matrices are of dimension 2Pn
i=1Nci×Pn
i=1Npi and 2Pn
i=1Nci× 1, respectively.
Finally, consider constraints on the outputs Y , i.e.
Y ≤ Y ≤ Y (3.50)
Substituting (3.43) into the output prediction equation (3.26), the constraints
formulation is obtained as
i=1Npi× 1, respectively.
Regarding the optimisation problem (3.40) and the subsequent deriva-tion of the constraints formuladeriva-tion, the following observaderiva-tions can be made:
• When constraints are not violated by (3.28), then Γ = 0, so that, from (3.40), N ≥ 0. This, in turn, means that (3.40) is required to be solved only if at least one element in the vector N is negative, i.e. [N ]j < 0 ∀j, where [N ]j denotes the jth element of N .
• In order to avoid cross-coupling effects introduced by the constraints, cor-responding reference trajectory deviations can be chosen, e.g. Γ = Γ1, which are allowed to vary. This, effectively, forces the remaining reference trajectory deviations to be zero. Also, the matrices M and N can be trun-cated accordingly. This allows the dimension of the optimisation problem (3.40) to be kept low.