# An Analytical Design of Simplified Decoupling Smith Predictors for Multivariable Processes
## 2 Materials and Methods
### The Modified PSO Algorithm for Model Reduction  
The concept of PSO was developed based on the social behavior of swarms looking for the most fertile feeding location [27]. All solutions in PSO can be represented as particles in a swarm. Each particle has a position in a search space which represents a parameter value and a velocity vector used to update new positions. At each step, all particles are updated with the two best solution values: personal best position (Pbest) so far and global best position (Gbest) (i.e., the best value obtained among all particles up to that step). The well-known update equations of position and velocity of each particle are as follows:  
\[v_{i}(k+1)=\omega v_{i}(k)+c_{1}\omega_{1}(x_{Pbest}-x_{i}(k))+c_{2}\omega_{2}( x_{Gbest}-x_{i}(k)) \tag{8}\]  
\[\omega=\omega_{\max}-\frac{\omega_{\max}-\omega_{\min}}{M}k \tag{9}\]  
\[x_{i}(k+1)=x_{i}(k)+v_{i}(k+1) \tag{10}\]  
where \(v_{i}(t)\) and \(x_{i}(t)\) are the velocity and position of the \(i\)th particle, respectively; \(t\), iteration, \(c_{1}\), and \(c_{2}\) are acceleration (scaling, learning) factors; \(\omega_{1}\) and \(\omega_{2}\) are real numbers generated randomly in the (0-1) range; \(\omega\) is the inertial weight; and \(M\) is the maximum number of iterations. In this work, the following form of the transfer function, Equation (11), was used as a general approximated model for the sake of simplicity. Apparently, a higher-order transfer function could be developed to obtain a better approximation for diagonal elements of a decoupled matrix, but it would make it difficult to derive an analytical PID controller. Moreover, based on reviewing related publications in the process control field, Equation (11) was found to be suitable for most process applications. Further, in this study, it can address equivalent models for the decoupler elements (\(d_{ij}\)) and the diagonal elements of the decoupled process (\(q_{ii}\)) shown in Tables 1 and 2. \[G_{m}(s)=\frac{K(\tau_{2}s+1)e^{-\theta s}}{(\tau_{1}s+1)(\tau_{2}s+1)} \tag{11}\]  
where \(\tau_{1},\tau_{2}\) are time constants which should be positive values, assuming \(\tau_{1}>\tau_{2}\geq 0\); \(K\) is gain; and \(\tau_{z}\) is a non-negative parameter. When \(\tau_{z}=0\), the model, Equation (11), becomes the popular SOPTD system, Equation (16), or even the FOPTD system, Equation (15), if the smaller time constant of the  
\begin{table}
\begin{tabular}{c c} \hline \hline
**Process** & **Diagonal Elements of Decoupled Process** \\ \hline \(2\times 2\) & \(q_{11}=g_{11}-\frac{g_{12}g_{21}}{g_{22}}\) & \(q_{22}=g_{22}-\frac{g_{12}g_{21}}{g_{11}}\) \\ \hline \(3\times 3\) & \(q_{11}=g_{11}-\frac{g_{12}(g_{33}g_{21}-g_{13}g_{31})+g_{13}(g_{31}g_{22}-g_{21} g_{32})}{g_system is also equal to zero. \(\theta\) is a delay time, and in order to facilitate the approximation procedure, it is a predetermined value based on the unit step response of the original model. The parameters that need to be tuned are written in the following vector form:  
\[\mathbf{x}=\Big{[} \begin{array}{cccc}K&\tau_{1}&\tau_{2}&\tau_{z}\end{array}  \Big{]}. \tag{12}\]  
The different constraints of these parameters are defined as  
\[\left\{ \begin{array}{l}K_{\min}<K<K_{\max}\\ 0\leq\tau_{1}<\tau_{\max}\\ 0\leq\tau_{2}<\tau_{\max}\\ 0\leq\tau_{z}<\tau_{\max}\end{array} \right. \tag{13}\]  
where \(K_{\min},\ K_{\max},\ \tau_{\max}\) are determined based on the open-loop unit step responses of the original model. The structure of the approximation algorithm is illustrated in Figure 3. This structure can work for both open-loop and closed-loop systems. In this work, a unit step input was applied to the open-loop system, which was always stable. However, in case the open-loop system was unstable, a simple feedback controller such as a proportional control was adopted to make the closed-loop systems stable. Then, the proposed method could be applied normally. The gain constraints and other boundaries of time constants could be determined based on the step response of the system.