Research Article

Particle Swarm Optimization with Double Learning Patterns

Algorithm 1

Particle swarm optimization with double learning patterns.
Input:
 Master swarm size (), slave swarm size (), the dimensionality of the problem space
 (), maximum number of fitness evolution (iterMax), objective function ()
(1) Randomly initialize the position and velocity of all particles in the master swarm.
(2) Randomly initialize the position and velocity of all particles in the slave swarm.
(3) Calculate the fitness values of and ,
(4) Set and to be and for each
particle of the master swarm and slave swarm, respectively.
(5) Set the particle with the best fitness of the master swarm to be , and set the particle
with the best fitness of the slave swarm to be .
(6) Set generation , the counter .
(7) while   ≤ iterMax  do
(8)  for    do
(9)  for    do
(10)    Update the dimensional velocity according to (11), and Update the dimensional
    position according to (2).
(11)  end for
(12)  Calculate the fitness value ;
(13)  if    then
(14)      ; ;
(15)      if    then
(16)       ; ;
(17)      end if
(18)  end if
(19)  end for
(20)  for    do
(21)  for    do
(22)    Update the dimensional velocity according to (14), and Update the dimensional
    position according to (2);
(23)  end for
(24)  Calculate the fitness value ;
(25)  if    then
(26)      ; ;
(27)      if    then
(28)       ; ; ;
(29)      else
(30)       ;
(31)      end if
(32)  end if
(33)  end for
(34)  if    then
(35)     ;
(36)  end if
(37)  ;
(38) end while
(39) Set the global best position
(40) return  Gb