You are on page 1of 18

The Particle Swarm

Optimization
Algorithm

Neboja Trpkovi
trx.lists@gmail.com
10th Dec 2010
Problem Definition

optimization of continuous nonlinear


functions

finding the best solution in problem


space

Neboja Trpkovi trx.lists@gmail.com Slide 2 of 18


Example

Neboja Trpkovi trx.lists@gmail.com Slide 3 of 18


Importance

function optimization

artificial neural network training

fuzzy system control

Neboja Trpkovi trx.lists@gmail.com Slide 4 of 18


Existing Solutions

Ant Colony (ACO)


discrete

Genetic Algorithms (GA)


slow convergence

Neboja Trpkovi trx.lists@gmail.com Slide 5 of 18


Particle Swarm Optimization

Very simple classification:

a computational method
that optimizes a problem
by iteratively trying to improve a candidate solution
with regard to a given measure of quality

Neboja Trpkovi trx.lists@gmail.com Slide 6 of 18


Particle Swarm Optimization
Facts:

developed by Russell C. Eberhart and James Kennedy


in 1995

inspired by social behavior of bird flocking or fish


schooling

similar to evolutionary techniques such as Genetic


Algorithms (GA)

Neboja Trpkovi trx.lists@gmail.com Slide 7 of 18


Particle Swarm Optimization
Benefits:

faster convergence
less parameters to tune

easier searching in very large
problem spaces

Neboja Trpkovi trx.lists@gmail.com Slide 8 of 18


Particle Swarm Optimization
Basic principle:

let particle swarm move


towards the best position in search
space, remembering each particles
best known position
and global (swarms) best known
position

Neboja Trpkovi trx.lists@gmail.com Slide 9 of 18


Velocity Change
xi specific particle
pi particles (personal) best known position
g swarms (global) best known position
vi particles velocity

vi vi + prp(pi - xi) + grg(g -


xi )
inertia cognitive social

Neboja Trpkovi trx.lists@gmail.com Slide 10 of 18


Position Change

xi specific particle
vi particles velocity

xi x i + v i

Neboja Trpkovi trx.lists@gmail.com Slide 11 of 18


Algorithm
For each particle
Initialize particle
END

Do

For each particle


Calculate fitness value
If the fitness value is better than the best personal fitness value in history,
set current value as a new best personal fitness value
End

Choose the particle with the best fitness value of all the particles, and if that
fitness value is better then current global best, set as a global best
fitness value
For each particle
Calculate particle velocity according velocity change equation
Update particle position according position change equation
End

While maximum iterations or minimum error criteria is not attained


Neboja Trpkovi trx.lists@gmail.com Slide 12 of 18
Single Particle

Neboja Trpkovi trx.lists@gmail.com Slide 13 of 18


Parameters selection
Different ways to choose parameters:

proper balance between exploration and


exploitation
(avoiding premature convergence to a local optimum yet still
ensuring a good rate of convergence to the optimum)

putting all attention on exploitation


(making possible searches in a vast problem spaces)

automatization by meta-optimization

Neboja Trpkovi trx.lists@gmail.com Slide 14 of 18


Avoiding Local Optimums

adding randomization factor to velocity


calculation

adding random momentum in a specific


iterations

Neboja Trpkovi trx.lists@gmail.com Slide 15 of 18


Swarm

Neboja Trpkovi trx.lists@gmail.com Slide 16 of 18


Conclusion
This algorithm belongs ideologically to that philosophical
school

that allows wisdom to emerge rather than trying to impose it,

that emulates nature rather than trying to control it,

and that seeks to make things simpler rather than more


complex.

James Kennedy, Russell Eberhart

Neboja Trpkovi trx.lists@gmail.com Slide 17 of 18


References
Wikipedia
http://www.wikipedia.org/
Swarm Intelligence
http://www.swarmintelligence.org/
Application of a particle swarm optimization
algorithm for determining optimum well location
and type, Jerome Onwunalu and Louis J. Durlofsky, 2009
Particle Swarm Optimization, James Kennedy and
Russell Eberhart, 1995
http://www.engr.iupui.edu/~shi/Coference/psopap4.html
Robot Swarm driven by Particle Swarm
Optimization algorithm, thinkfluid
http://www.youtube.com/watch?v=RLIA1EKfSys

Neboja Trpkovi trx.lists@gmail.com Slide 18 of 18

You might also like