Particle Swarm Optimization Algorithm (PSO)
The PSO algorithm was developed by Kennedy and Eberhart [6], and is based on simulation of bird flocking in two-dimension space. It uses a number of particles (candidate solutions) which fly around in the search space to find best solution [7]. Meanwhile, the particles all look at the best particle (best solution) in their paths. In other words, particles consider their own best solutions as well as the best solution found so far. Each particle tries to modify its position using the following information: the current position, the current velocity, the distance between the current position and pbest, and the distance between the current position and gbest.
In each iteration, the velocities of particles are calculated using the following equation:
(23)
After updating the velocities, the positions of particles can be calculated as: (24)
where is velocity of particle i at iteration t , wis a weighting function, C 1 andC 2 are positive constants,r 1 and r 2 are uniformly distributed random numbers in [0, 1], is the current position of particle i at iteration t , pbest iis the individual best of particle i at iteration t , andgbest is the best solution so far. The first part of (23), provides exploration ability for PSO. The second and third parts represent private thinking and collaboration of particles, respectively.