## 3 Identification of Multivariable Hammerstein Model  
Predictive control offers its own distinctive features for dealing with coupled variables in process control, such as large inertia, input constraints, etc. It can also handle the predictive control of nonlinear plant well with a nonlinear predictive model. Therefore, predictive control is an appropriate solution for the combined cooling and power load-following control of MGT-CCP. In the design framework of the predictive controller, designing a prediction model takes the lead. The Hammerstein model consists of a static memoryless nonlinear element and a dynamic linear model [29, 30]. It has the advantages of small computing load, strong nonlinearity-approximating ability, and favorable controller design. Since the nonlinearity of the cooling system is very strong, the Hammerstein model is taken to be the prediction model for generalized predictive controller (GPC) whose algorithm matches well with the prediction model. An effective Hammerstein model identification method for SISO system has been proposed in [24], which we extend to multi-input-single-output (MISO) systems for modeling the MGT-CCP. Assuming that a system with \(n_{u}\)-input and single-output can be described by the following Hammerstein model:  
\[A(z^{-1})y_{t}=B(z^{-1})\overline{u}_{t} \tag{2}\]  
Figure 3: The value of V-gap between different operating points in MGT-CCP system. (**a**) Nonlinearity distribution of MGT-CCP process under varying fuel \(u_{1}\); (**b**) Nonlinearity distribution of MGT-CCP process under varying refrigerant valve opening \(u_{2}\). where \(A(z^{-1})\) and \(B(z^{-1})\) are polynomials in the shift operator \(z^{-1}\) with:  
\[ \begin{array}{c}A(z^{-1})=1+a_{1}z^{-1}+a_{2}z^{-2}+\ldots+a_{n}z^{-n},\\ B(z^{-1})=b_{1}z^{-1}+b_{2}z^{-2}+\ldots+b_{n}z^{-n},b_{i}\in R^{1\times n_{u}}, i=1,2,\ldots,n,\\ \overline{u}_{t}=\left[\begin{array}{c}f_{1}(u_{t}(1))\\ f_{2}(u_{2}(2))\\ \vdots\\ f_{n_{u}}(u_{t}(n_{u}))\end{array}\right]=\left[\begin{array}{c}\overline{u }_{t}(1)\\ \overline{u}_{t}(2)\\ \vdots\\ \overline{u}_{t}(n_{u})\end{array}\right]=\left[\begin{array}{c}c_{11}u_{t}( 1)+c_{21}u_{t}(1)^{2}+\ldots+c_{q1}u_{t}(1)^{q}\\ c_{12}u_{t}(2)+c_{22}u_{t}(2)^{2}+\ldots+c_{q2}u_{t}(2)^{q}\\ \vdots\\ c_{1n_{u}}u_{t}(n_{u})+c_{2n_{u}}u_{t}(n_{u})^{2}+\ldots+c_{qn_{u}}u_{t}(n_{u}) ^{q}\end{array}\right].\end{array} \]  
The following assumptions are made:  
_Assumption 1_. : Suppose the order of polynomial \(A\left(z^{-1}\right)\) and \(B\left(z^{-1}\right)\) are equal to \(n\). It is assumed that \(n\) and \(q\) are both known, or can be determined by trial and error. _Assumption 2_. : The first coefficient of the function \(f_{j},\left(j=1,2,\cdots,n_{u}\right)\) equals \(1\); i.e., \(c_{1j}=1,\left(j=1,2,\cdots,n_{u}\right)\)[24]. _Assumption 3_. : The order of the function \(f_{j},\left(j=1,2,\cdots,n_{u}\right)\) is \(q\). Suppose \(q\) is even, then there is at least one real root of (20). In this way, one is guaranteed that a value of \(u_{t}\) can be found [30]. Then (2) can be rewritten as follows:  
\[y_{t}=-\sum_{i=1}^{n}a_{i}y_{t-i}+\sum_{i=1}^{n}b_{i}\overline{u}_{t-i}=-\sum _{i=1}^{n}a_{i}y_{t-i}+\sum_{i=1}^{n}\sum_{j=1}^{n_{u}}\sum_{k=1}^{q}b_{ij}c_{ kj}u_{t-i}(j)^{k} \tag{3}\]  
where \(b_{ij}\) represents the element of the \(j\)-th column of \(b_{i}\). Define the following vectors:  
\[