## 4 Proposed Hybrid PSO (PHPSO) for NWFSSP
### Particle Swarm Optimization (PSO)  
PSO is an optimization algorithm that simulates its behavior from the biological example of a flock of birds searching for food in a defined area [33]. Birds do not know where the food is, but they know at each time how far the food is, by following the nearest food strategy. PSO simulates this behavior and finds the best solution in the search space. Each particle in PSO is used to represent a single solution. The fitness value of each particle is evaluated by the objective function. The velocity of each particle provides flying direction for food. In this context, the particle reaches towards the approximate solution for the given objective function. The standard theory and procedure of PSO is well defined by [PERSON] and [PERSON] [34].  
The algorithm is initialized with particles at random positions, and then it explores the search space to find a better solution [18]. For each iteration, each particle adjusts its velocity to follow two best solutions. The first is the cognitive part where a particle follows its own best solution found so far, called \"_pbest_\", and the other is the current best solution of swarm, called \"_gbest_\". On the basis of the different learning approaches of particles, PSO presents with two versions viz. the global version and the local version. In the global PSO, each particle learns from the best particle in the whole swarm, while in the local version each particle learns from the best particle in its neighborhood. Out of these two versions, the local PSO has a slower convergence speed; thus, it may adapt to a changing environment more easily which is followed exactly in the NWFSS. The new velocity is denoted by \(\mathrm{V_{new}}\) and the new position is denoted by \(\mathrm{X_{new}}\), as stated in Equations (9) and (10):  
\[\mathrm{V_{new}}=\mathrm{w^{*}V_{curr}+c_{1}*r_{1}*(pbest-X_{curr})+c_{2}*r_{2 }*(gbest-X_{curr})} \tag{9}\]  
\[\mathrm{X_{new}}=\mathrm{X_{curr}}+\mathrm{V_{new}} \tag{10}\]  
where \(\mathrm{w}\) is the inertia weight, which provides balance between local and global search capabilities. The acceleration constants \(c_{1}\) and \(c_{2}\) in Equation (9) are cognitive parameters which develop the bird's own confidence (cognitive behavior) and its confidence in the swarm (social behavior), respectively. Low values of \(c_{1}\) and \(c_{2}\) may direct particles to roam far from target regions, whereas high values may lead towards hasty movement from target regions. So, these acceleration coefficients should be appropriately adjusted. \(\mathrm{X_{new}}\) and \(\mathrm{V_{new}}\) are the new position and velocity of the particle, respectively. \(\mathrm{X_{curr}}\) and \(\mathrm{V_{curr}}\) are the current position and velocity of the particle, respectively. In the standard PSO, the new velocity of the particle is found by Equation (9), considering its previous velocity and the distance of its current position from both its own best historical position and its neighbors' best position. Generally, the value of each component in velocity is set to the range (\(\mathrm{V_{max}}\), \(-\mathrm{V_{max}}\)) due to which particles cannot roam excessively outside the search space. With this new velocity, the particle moves towards a new position according to Equation (10). This process stops when the user-defined terminating criterion is met.