## 4 Parallel Cascade Identification
#### Details of the PCI Algorithm  
The salient steps for obtaining the impulse response of the dynamic linear element for the current cascade can be listed as follows. When identifying the \(k\)-th cascade, the existing residual before the addition of the \(k\)-th cascade is \(y_{k-1}(n)\). The approach utilized in this paper to obtain the impulse response \(g_{k}(j)\) of the linear element \(L_{k}\) of the \(k\)-th cascade uses cross-correlations of the input with the current residual, and this impulse response will be one of the following:  
* Impulse response will be input residual cross-correlation: \[g_{k}(j)=\phi_{xy_{k-1}}(j)=\frac{1}{T-R+1}\sum_{n=R}^{T}y_{k-1}(n)x(n-j) \hskip 22.762205 ptj=0,\ldots,R\] (4) A portion of second order cross-correlations of input and residual \(\phi_{xxy_{k-1}(j,A)}\) is used; thus, the impulse response will be as follows: \[g_{k}(j)=\phi_{xxy_{k-1}}(j,A)\pm c\delta(j-A)\] (5) where \(\delta(. )\) is the Kronecker delta function, the sign is chosen at random, \(A\) is chosen at random from \(0,\ldots,R\), and \(c\) is chosen such that \(c\to 0\) as \(\overline{y_{k-1}^{2}(n)}\to 0\), e.g., \(c=\frac{\overline{y_{k-1}^{2}(n)}}{\overline{y_{k}^{2}(n)}}\) (here, the over-bar means the finite-time average from \(n=R\) to \(n=T\) as in the expression for \(\phi_{xxy_{k-1}(j)}\) immediately above). * A portion of the third order input residual cross-correlation \(\phi_{xxxy_{k-1}(j,A_{1},A_{2})}\) will be used; thus, the impulse response will be as follows: \[g_{k}(j)=\phi_{xxxy_{k-1}}(j,A_{1},A_{2})\pm c_{1}\delta(j-A_{1})\pm c_{2} \delta(j-A_{2})\] (6)
* We can use this expression up until the \"\(n\)\" order cross-correlation using the following: \[g_{k}(j)=\phi_{x\ldots xy_{k-1}}(j,A_{1},\ldots,A_{D-1})\pm c_{1}\delta(j-A_{1 })\pm\cdots\pm c_{D-1}\delta(j-A_{D-1})\] (7) Nevertheless, in practice, cross-correlations up to the third order are typically enough. The output of the linear element calculated by convolution summation is as follows: \[u_{k}(n)=\sum_{j=0}^{R}g_{k}(j)x(n-j)\] (8)Here, the linear element's output \(u_{k}(n)\) depends on input values \(x(n),x(n-1),\ldots,x(j-R)\), linear elements have the memory length of \(R+1\), and \(g_{k}(j)\) is the impulse response of the linear element \(L_{k}\) at beginning the \(k\)-th cascade. To obtain the static non-linear element for the current cascade by polynomial fitting, the following steps are followed. First \(\overline{u_{i}^{2}(n)}\) is calculated. Let it equal \(M\), and then the impulse response of the dynamic linear element is adjusted to be \(\tilde{g_{i}}(n)=\frac{g_{i}(j)}{\sqrt{M}}\) to ensure that \(\overline{u_{i}^{2}(n)}=1\). A polynomial (static non-linearity) is best fit to minimize the mean square error (MSE) of the approximation of the residual. To fit the static non-linearity, the coefficient aids \((d=0,\ldots,D)\) are found to minimize. \[e_{i}=\overline{\left(y_{i-1}(n)-\sum_{d=0}^{D}a_{id}u_{i}^{d}(n)\right)^{2}}= \frac{1}{T-R+1}\sum_{n=R}^{T}\left(y_{i-1}(n)-\sum_{d=0}^{D}a_{id}u_{i}^{d}(n )\right)^{2} \tag{9}\]  
As noted, the over-bar here means a finite-time average. Minimizing \(e_{i}\) with respect to each of the polynomial coefficients leads to \(D+1\) equations in \(D+1\) unknowns \"\(a_{id}\)\". \[\overline{y_{i-1}(n)u_{i}^{q}(n)}=\sum_{d=0}^{D}a_{id}\overline{u_{i}^{d+q}(n )}\qquad\text{where},\quad q=0,1,...,D \tag{10}\]  
It is important to know whether it is suitable to add the current cascade to the built model or not. The new cascades are to minimize the mean-square error such as to drive the cross-correlations of the input with the residual to zero [28; 30] and are given by the following equation:  
\[\overline{z_{k}^{2}(n)}>\frac{4}{T-R+1}\overline{y_{k-1}^{2}(n)} \tag{11}\]  
where \(\overline{z_{k}^{2}(n)}\) denotes the mean square of the candidate cascade's output, and \(\overline{y_{k-1}^{2}(n)}\) denotes the mean square of the current residual, i.e., the residual remaining from the cascades already present in the model.