710 Modern Methods of Optimization
(similar to chromosomes in genetic algorithms). Evaluate the objective function
values corresponding to the particles asf[X 1 ( 0 )],f[X 2 ( 0 )],... , f[XN(. 0 )]
3.Find the velocities of particles. All particles will be moving to the optimal point
with a velocity. Initially, all particle velocities are assumed to be zero. Set the
iteration number asi=1.
4.In theith iteration, find the following two important parameters used by a
typical particlej:
(a) The historical best value ofXj(i) coordinates of( jth particle in the cur-
rent iterationi),Pbest ,j, with the highest value of the objective function,
f[Xj(i) , encountered by particle] jin all the previous iterations.
The historical best value ofXj(i) coordinates of all particles up to that(
iteration),Gbest, with the highest value of the objective functionf[Xj(i) ,]
encountered in all the previous iterations by any of theNparticles.
(b) Find the velocity of particlejin theith iteration as follows:
Vj(i)=Vj(i− 1 )+c 1 r 1 [Pbest ,j−Xj(i− 1 )]
+c 2 r 2 [Gbest−Xj(i− 1 )];j= 1 , 2 ,... , N (13.21)
wherec 1 andc 2 are the cognitive (individual) and social (group) learning
rates, respectively, andr 1 andr 2 are uniformly distributed random numbers
in the range 0 and 1. The parametersc 1 andc 2 denote the relative importance
of the memory (position) of the particle itself to the memory (position) of
the swarm. The values ofc 1 andc 2 are usually assumed to be 2 so that
c 1 r 1 andc 2 r 2 ensure that the particles would overfly the target about half
the time.
(c) Find the position or coordinate of thejth particle inith iteration as
Xj(i)=Xj(i− 1 )+Vj(i);j= 1 , 2 ,... , N (13.22)
where a time step of unity is assumed in the velocity term in Eq. (13.22).
Evaluate the objective function values corresponding to the particles as
f[X 1 (i) ],F[X 2 (i) ],... , F[XN(i) .]
5.Check the convergence of the current solution. If the positions of all particles
converge to the same set of values, the method is assumed to have converged.
If the convergence criterion is not satisfied, step 4 is repeated by updating the
iteration number asi=i+1, and by computing the new values ofPbest ,jand
Gbest. The iterative process is continued until all particles conv erge to the same
optimum solution.
13.4.3 Improvement to the Particle Swarm Optimization Method
It is found that usually the particle velocities build up too fast and the maximum of the
objective function is skipped. Hence an inertia term,θ, is added to reduce the velocity.
Usually, the value ofθis assumed to vary linearly from 0.9 to 0.4 as the iterative process
progresses. The velocity of thejth particle, with the inertia term, is assumed as