**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 NP, 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]:

$$\begin{aligned} X\_i(0) &= \{ \mathbf{x}\_{i,1}(0), \mathbf{x}\_{i,2}(0), \dots, \mathbf{x}\_{i,D}(0) \} \\ x\_{i,j}(0) &= \mathbf{x}\_{\min} + rand\_{i,j}(0, 1) \times (\mathbf{x}\_{\max} - \mathbf{x}\_{\min}) \\ V\_i(0) &= \left\{ v\_{i,1}(0), v\_{i,2}, \dots, v\_{i,N\_p}(0) \right\} \end{aligned} \tag{3}$$

where 1 ≤ *i* ≤ *Np* ≤ *j* ≤ D, [*xmin, xmax*] 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\_{\vec{i}}\left(t+1\right) = X\_{\vec{r}^1}(t) + F(X\_{\vec{r}^2}\left(t\right) - X\_{\vec{r}^3}\left(t\right))\tag{4}$$

where *F* is a differential weight between 0 and 1.

The crossover operation aims to construct a new population *ui*,(*<sup>t</sup>* + 1), which is chosen from the current individuals and mutant individuals in order to increase the diversity of the generated individuals [19]:

$$\begin{aligned} \mathcal{U}\_{i}(t+1) &= \{u\_{i/1}\ (t+1), u\_{i/2}\ (t+1), \cdots, u\_{i,D}(t+1)\} \\ u\_{i,j}(t+1) &\left\{\begin{array}{c} v\_{i}(t+1), \ if \text{rand}\ (0,1) \leq \mathbb{C}\_{r} \text{ or } j = j\_{\text{rand}} \\ \mathbf{x}\_{i}(t), \text{ otherwise}, \end{array} \right.\end{aligned} \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 Cr is a crossover parameter that is randomly chosen from 0 to 1.

In the selection operation, the crossover vector *U*(*t*+1) is compared to the target vector *Xi*(*t*) by evaluating the fitness function value based on a greedy criterion, and the vector with a smaller fitness value is selected as the next generation vector:

$$X\_i(t+1) = \begin{cases} \ U\_i(t+1), \ if f(X\_i(t)) \ge f(\mathcal{U}\_i(t+1)) \\ \qquad X\_i(t), \text{ otherwise,} \end{cases} \tag{6}$$

The global best part is updated with the minimum fitness value (*gbest*) and the personal-best part (*pbest*).

3. *Iteration Loop of PSO*: The velocity and position equations of individuals remains unchanged and follows the earlier stated Equations of (1) and (2) respectively in page 3 as shown below:

$$v\_i(t+1) = wv\_i(t) + r\_1c\_1(P\_i(t) - x\_i(t)) + r\_2c\_2(g(t) - x\_i(t))$$

$$x\_i(t+1) = x\_i(t) + v\_i(t+1)$$

The pseudo code (Algorithm 3) and flowchart (see Figure 4) of DEPSO are shown below.
