Swarm Intelligence�Particle Swarm Optimization
CSCI4830/7000�Nikolaus Correll
Algorithm optimization
Describe an algorithm from your practice that requires parameter tuning.
An Optimization Problem
Standard Numerical Approach
More Challenging Problems
A swarming approach to optimization
Left: A herd of wildebeest crossing a river © Eric Inafuku CC BY-SA 2.0.
Right: Slime mold collectively moving in search of food. Middle: a school of fish (big eyed scad) forming a “bait ball” © SteveD. CC BY-SA 2.0. Bottom: a flock of birds migrating.
Two-fold bioinspiration
Implementation: Particle Swarm Optimization
Assign random values to xi
Do
For i = 1 to N
if f(xi) < f(pi) then pi=xi // update particle’s previous best
g = mini(pi) // update global best
vi=wvi+r1(pi-xi)+r2(g-xi) // calculate speed
xi=xi+vi // move all particles
end
until termination criterion is met
Good parameters:
w=0.7298 with r1 and r2 random values in the interval from [0;1.49618]
MATLAB DEMO
Issues
Applications