Professional Documents
Culture Documents
PSO
PSO
James Kennedy
Kennedy_Jim@bls.gov
Graduated in
Psychology.
Not at all a
professional researcher.
Particle Swarm Optimization
• PSO is the only algorithm that does not implement the survival of
the fittest.
5
x10
0
vi(t)
-400
-5 -200
400
200 0
0
-200
200 xi(t)
-400 400
Particle i
Swarming :
Swarming Contd …
Bingo !
Why Social insects ?
Problem solving benefits include:
– Flexible
– Robust
– Self-Organized
– Having no clear leader
– Can use past memory
– Swarming nature
– colonial life
General PSO Algorithm:
vi(t)
xi(t)
Particle i. pbest
General PSO Algorithm Contd …
vi(t)
xi(t)
Particle i. pbest
.gbest
General PSO Algorithm Contd …
• Velocity update:
vi(t+1)= w×vi(t) +
+ c1×rand× (pbest(t) - xi(t)) +
+ c2×rand× (gbest(t) - xi(t))
vi(t)
gbest_i(t)
Xi(t)
pbest_i(t)
General PSO Algorithm Contd …
• Velocity update:
vi(t+1)=w×vi(t) +
+ c1×rand× (pbest(t) - xi(t)) +
+ c2×rand× (gbest(t) - xi(t))
vi(t)
gbest_i(t)
Xi(t)
pbest_i(t)
General PSO Algorithm Contd …
• Velocity update:
vi(t+1)=w×vi(t) +
+ c1×rand× (pbest(t) - xi(t)) +
+ c2×rand× (gbest(t) - xi(t))
vi(t)
gbest_i(t)
Xi(t)
pbest_i(t)
General PSO Algorithm Contd …
• Velocity update:
vi(t+1)=w vi(t) +
+c1*rand *(pbest(t) - xi(t)) +
+ c2*rand*(gbest(t) - xi(t))
• Position update: vi(t)
gbest_i(t)
Xi(t)
xi(t+1)=xi(t) + vi(t+1)
pbest_i(t)
General PSO Algorithm Contd …
• Velocity update:
vi(t+1)=w vi(t) +
+c1*rand*(pbest(t) - xi(t)) +
+c2*rand*(gbest(t) - xi(t))
• Position update:
xi(t+1)=xi(t) + vi(t+1) vi(t) Gbest(t)
pbest_i(t)
Flow chart depicting the General PSO Algorithm:
Start
evaluate fitness
Loop until all
( w0 − w1 ) * k
w(k ) = w0 *
I
where
k = search number
I = max . no. of iterations
w0 = 0.9
w1 = 0.4
2
K= , φ = c1 + c2 , φ > 4
2 − φ − φ − 4φ2
Where
R1, R2, R3 : random numbers between 0 and 1
ω : inertia weight between 0.01 and 0.7
x̂ :best position of a particle
ŷ : best position of a randomly chosen other particle from
within the swarm
z : a random velocity vector
a, b, c : constants
Comprehensive Learning PSO
Overcomes premature convergence
Conventional PSO
– Learns simultaneously from pbest and gbest.
– Possibility of trapping in local minima.
CLPSO
– Learns from gbest of swarm, pbest of particle and
pbest of all other particles at different dimension.
Vi , d if= bi
Else wn(d) + rand ( pbestf ,d − X i ,d )
.Vi ,d ==1
The local and global best positions of particles are not directly used in
deciding their new positions.
The location of each particle is then changed in the next search using
its updated velocity information.
The fitness values of all particles are then evaluated and the overall
best location is selected.
In the next search, each particle following clonal selection principle
occupies the best position achieved so far and then they diversify .
As the search process continues all particles proceed towards the best
possible location which then represents the desired solution.
The velocity update equation of CPSO becomes
vid (k + 1) = H (k ) * vid (k )
(H 0 − H1 ) * k
Where H (k ) = H 0 *
I
k = search munber
I = max . no. of iterations
H 0 = 0.9
H 1 = 0.4