13.4 Particle Swarm Optimization 711
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.23)
The inertia weightθwas originally introduced by Shi and Eberhart in 1999 [13.36] to
dampen the velocities over time (or iterations), enabling the swarm to converge more
accurately and efficiently compared to the original PSO algorthm with Eq. (13.21).
Equation (13.23) denotes an adapting velocity formulation, which improves its fine
tuning ability in solution search. Equation (13.23) shows that a larger value ofθpro-
motes global exploration and a smaller value promotes a local search. Thus a large value
ofθmakes the algorithm constantly explore new areas without much local search and
hence fails to find the true optimum. To achieve a balance between global and local
exploration to speed up convergence to the true optimum, an inertia weight whose
value decreases linearly with the iteration number has been used:
θ (i)=θmax−
(
θmax−θmin
imax
)
i (13.24)
whereθmaxandθminare the initial and final values of the inertia weight, respectively,
andimaxis the maximum number of iterations used in PSO. The values ofθmax= 0. 9
andθmin= 0. 4 are commonly used.
13.4.4 Solution of the Constrained Optimization Problem
Let the constrained optimization problem be given by
Maximizef (X)
subject to (13.25)
gj(X)≤ 0 ;j= 1 , 2 ,... , m
An equivalent unconstrained function,F (X), is constructed by using a penalty function
for the constraints. Two types of penalty functions can be used in defining the function
F (X). The first type, known as the stationary penalty function, uses fixed penalty param-
eters throughout the minimization and the penalty value depends only on the degree of
violation of the constraints. The second type, known as nonstationary penalty function,
uses penalty parameters whose values change dynamically with the iteration number
during optimization. The results obtained with the nonstationary penalty functions have
been found to be superior to those obtained with stationary penalty functions in the
numerical studies reported in the literature. As such, the nonstationary penalty function
is to be used in practical computations.
According to the nonstationary penalty function approach, the functionF (X)is
defined as
F (X)=f (X)+C(i)H (X) (13.26)
whereC(i)denotes a dynamically modified penalty parameter that varies with the iter-
ation numberi, andH (X)represents the penalty factor associated with the constraints: