0% found this document useful (0 votes)
14 views22 pages

17 Swarm

The document discusses the application of Particle Swarm Optimization (PSO), a technique developed by Russ Eberhart and James Kennedy, which involves particles searching for optimal solutions by adjusting their velocities based on personal and neighborhood bests. It outlines the basic mechanics of PSO, including initialization, velocity adjustment, and the importance of cooperation among particles. Additionally, it touches on parameters influencing PSO performance and provides pseudocode for implementation.

Uploaded by

Vicente
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views22 pages

17 Swarm

The document discusses the application of Particle Swarm Optimization (PSO), a technique developed by Russ Eberhart and James Kennedy, which involves particles searching for optimal solutions by adjusting their velocities based on personal and neighborhood bests. It outlines the basic mechanics of PSO, including initialization, velocity adjustment, and the importance of cooperation among particles. Additionally, it touches on parameters influencing PSO performance and provides pseudocode for implementation.

Uploaded by

Vicente
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

Reflexión:

• Es posible aplicar la red neuronal o


algoritmos genéticos (GA) para el
problema del laberinto?
• ¿Qué aplicaciones posibles tienen GA?
• Redes sociales: ¿Qué información nos
provee?
• ¿Cuál es el mecanismo de
agrupamiento?

Particle Swarm optimisation


Particle Swarm
optimisation
These slides adapted from a presentation
by [email protected] - one of the
main researchers in PSO

PSO invented by Russ Eberhart (engineering


Prof) and James Kennedy (social scientist)
in USA
Cooperation example
The basic idea
 Each particle is searching for the optimum
 Each particle is moving and hence has a
velocity.
 Each particle remembers the position it was
in where it had its best result so far (its
personal best)
 But this would not be much good on its own; particles
need help in figuring out where to search.

Particle Swarm optimisation


The basic idea II
 The particles in the swarm co-operate. They exchange
information about what they’ve discovered in the
places they have visited
 The co-operation is very simple. In basic PSO it is
like this:
– A particle has a neighbourhood associated with it.
– A particle knows the fitnesses of those in its
neighbourhood, and uses the position of the one with best
fitness.
– This position is simply used to adjust the particle’s velocity

Particle Swarm optimisation


Initialization. Positions and
velocities
What a particle does
 In each timestep, a particle has to move to a
new position. It does this by adjusting its
velocity.
– The adjustment is essentially this:
– The current velocity PLUS
– A weighted random portion in the direction of its personal best
PLUS
– A weighted random portion in the direction of the neighbourhood
best.
 Having worked out a new velocity, its position is simply
its old position plus the new velocity.

Particle Swarm optimisation


Neighbourhoods

geographical
social
Neighbourhoods

Global
The circular
neighbourhood
1
Particle 1’s 3-
2
neighbourhood 8

7 3

Virtual circle 4
6
5
Particles Adjust their positions according to a
``Psychosocial compromise’’ between what an
individual is comfortable with, and what society
reckons

My best
perf.
pi
Here I The best
am! x pg perf. of my
neighbours

v
Pseudocode
http://www.swarmintelligence.org/tutorials.ph
p

Equation (a)
v[] = c0 *v[]
+ c1 * rand() * (pbest[] - present[])
+ c2 * rand() * (gbest[] - present[])
(in the original method, c0=1, but many
researchers now play with this parameter)

Equation (b)
present[] = present[] + v[]

Particle Swarm optimisation


Pseudocode
http://www.swarmintelligence.org/tutorials.ph
p
For each particle
Initialize particle
END

Do
For each particle
Calculate fitness value
If the fitness value is better than its peronal best
set current value as the new pBest
End

Choose the particle with the best fitness value of all as gBest
For each particle
Calculate particle velocity according equation (a)
Update particle position according equation (b)
End
While maximum iterations or minimum error criteria is not attained

Particle Swarm optimisation


Pseudocode
http://www.swarmintelligence.org/tutorials.ph
p
Particles' velocities on each dimension
are clamped to a maximum velocity
Vmax. If the sum of accelerations would
cause the velocity on that dimension to
exceed Vmax, which is a parameter
specified by the user. Then the velocity
on that dimension is limited to Vmax.

Particle Swarm optimisation


Animated illustration
Global
optimu
m
Parameters
Number of particles
 C1 (importance of personal best)
 C2 (importance of neighbourhood best)

Particle Swarm optimisation


Parameters
 Number of particles
(10—50) are reported as usually
sufficient.
 C1 (importance of personal best)
 C2 (importance of neighbourhood best)
 Usually C1+C2 = 4. No good reason other
than empiricism
 Vmax – too low, too slow; too high, too
unstable.
Particle Swarm optimisation
Some functions often used for
testing real-valued optimisation
algorithms
Griewank Rastrigin

Rosenbrock
... and some typical results
Optimum=0, dimension=30
Best result after 40 000 evaluations
30D function PSO Type 1" Evolutionary
algo.(Angeline 98)
Griewank [±300] 0.003944 0.4033

Rastrigin [±5] 82.95618 46.4689

Rosenbrock [±10] 50.193877 1610.359


Adaptive swarm size
There has been enough I try to kill myself
improvement
although I'm the worst

I try to generate a
I'm the best new particle
but there has been not enough
improvement
Adaptive coefficients

rand(0…b)(p-x)
av
The better I The better is my best
am, the more I neighbour, the more
follow my own I tend to go towards
way him

You might also like