# Design of Gas Cyclone Using Hybrid Particle Swarm Optimization Algorithm
## 2 Pso
Output: Best_Vector Population = Initialize Population (N\({}_{\rm P}\),D,ub,lb) while(T \(\
eq\) True)do  Best_Vector = Evaluate_Population (Population)  V\({}_{\rm x}\) = Select_Random_Vector (Population)  Index = Find_Index_of_Vector(V\({}_{\rm x}\)) ///Specify row number of a vector  Select_Random_Vector (Population, v\({}_{1}\),v\({}_{2}\),v\({}_{3}\))// where v\({}_{1}\)\(\
eq\) v\({}_{2}\)\(\
eq\) v\({}_{3}\)\(\
eq\) v\({}_{\rm x}\)  V\({}_{\rm y}\) = v\({}_{1}\) + F (v\({}_{2}\) - v\({}_{3}\))// donor vector for(i = 0;i ++;l < D - 1)//Loop for starting Crossover  operation if(rand\({}_{\rm j}\) [0,1] \(<\) C\({}_{\rm r}\)) then  u[\(i\)] = v\({}_{\rm x}\)[\(i\)] else u[\(i\)] = v\({}_{\rm y}\)[\(i\)] endfor/ /end crossover operation if(f(t)\(\leq\) f(v\({}_{\rm x}\))) then  Update Population (u, Index, Population) end//While loop returnBest_Vector
```
**Algorithm 2** Pseudo-code for classic differential evolution

## 4 Hybridised PSO

Hybridised PSO is a method that combines PSO with various classical and evolutionary optimization algorithms to make use of the strengths of both approaches while compensating for their flaws. DEPSO, a hybridised PSO which combines DE and PSO, is the suggested hybridised PSO for this research. DEPSO follows the same steps as the standard DE method until the trial vector is created. If the trial vector meets the criteria, it is added to the population; otherwise, the algorithm moves on to the PSO phase and creates a new candidate solution. Iteratively, the technique is repeated until the optimal value is found. The incorporation of the PSO phase generates a disturbance in the population, which aids in population diversification and the output of an optimum solution. The following is an illustration of the algorithm's procedure [19]:

1. _Population initialization_: The individual \(x\), with the population number \(\text{N}_{\text{P}}\), is randomly generated to form an initial population in a \(D\)-dimensional space. All the individuals should be generated within the bounds of the solution space. The initial individuals are generated randomly in the range of the search space. Additionally, the associated velocities of all particles in the population are generated randomly in the \(D\)-dimension space. Therefore, the initial individuals and the initial velocity can be expressed as follows [19]:

Figure 3: Flowchart of classic differential evolution. \[ \begin{array}{l}X_{i}(0)\ =\ \{x_{i,1}(0),x_{i,2}(0),\ldots,x_{i,D}(0)\}\\ x_{i,j}(0)\ =\ x_{min}+rand_{ij}(0,1)\ \times\ (x_{max}-x_{min})\\ V_{i}(0)\ =\ \Big{\{}v_{i,1}(0),v_{i,2},\ldots,v_{i,N_{p}}(0)\Big{\}},\end{array}  \tag{3}\]

where \(1\leq i\leq N_{p}\leq j\leq\) D, [\(x_{min}\), \(x_{max}\)] is the range of the search space, and rand(0,1) is a random number chosen between 0 and 1. 2. _Iteration Loop of DE:_ The individual mutation operation is denoted as time \(t\). By randomly choosing three individuals from the previous population, the mutant individual (\(t+1\)) can be generated as [19]: \[V_{i}\left(t+1\right)=X_{r^{2}}(t)+F(X_{r^{2}}\left(t\right)-X_{r^{3}}\left(t\right))\] (4) where \(F\) is a differential weight between 0 and 1. The crossover operation aims to construct a new population \(u_{i,}(t+1)\), which is chosen from the current individuals and mutant individuals in order to increase the diversity of the generated individuals [19]:

\[ \begin{array}{l}U_{i}\left(t\ +\ 1\right)\ =\ \{u_{i,1}\ \left(t\ +\ 1\right),\ u_{i,2}\ \left(t\ +\ 1\right),\cdots,\ u_{i,D}\left(t\ +\ 1\right)\}\\ u_{i,j}(t+1)\ \left\{\begin{array}{l}v_{i}(t+1),\ if\ rand\ (0,1)\ \leq C_{r}\ or\ j\ =\ j_{rand}\\ x_{i}(t),\ otherwise,\end{array}\right.\end{array}  \tag{5}\]

where rand(0, 1) is a random number chosen from 0 to 1, \(j_{rand}\) is an integer chosen from 1 to \(D\) randomly, and C\({}_{r}\) is a crossover parameter that is randomly chosen from 0 to 1.