Professional Documents
Culture Documents
Rania Hassan
Post-doctoral Associate
Engineering Systems Division
James Kennedy
Social Psychologist
US Department of Labor
Russell Eberhart
Dean of Engineering Research
Indiana Univ. Purdue Univ. Indianapolis
– In Compindex: there are 18150 hits for the GA from 1990 to 2004,
whereas there are only 105 hits for PSO - many version of PSO are
likely to appear.
© Rania Hassan 3/2004
Engineering Systems Division - Massachusetts Institute of Technology 9
PSO Conceptual Development
• Social Behavior Simulation Optimizer
• The social model was intended to answer the following
questions:
– How do large numbers of birds (or other populations
exhibiting swarming behavior) produce seamless, graceful
flocking choreography, while often, but suddenly changing
direction, scattering and regrouping?
– Are there any advantages to the swarming behavior for an
individual in a swarm?
– Do humans exhibit social interaction similar to the swarming
behavior in other species?
• Phase I:
• in the simulation, when c and c are set high, the flock is sucked
violently into the cornfield; whereas if they are set low, the flock
swirls around the cornfield and slowly approach it.
– The simulation with the known cornfield position appeared real
and raised the question of how do birds find “optimal” food
sources in reality without knowing the “cornfield” location?
• Example 1: scientists proved that parks in affluent neighborhoods
attract more birds than parks in poor neighborhoods.
• Example 2: put a bird feeder in your balcony and see what happens
in few hours.
© Rania Hassan 3/2004
Engineering Systems Division - Massachusetts Institute of Technology 14
PSO Algorithm
• Phase III
– The swarming behavior of the birds could be the reason for finding optimal
food resources.
– The model developed in Phase II could be used (with minor modifications)
to find optimal solutions for N-dimensional, non-convex, multi-modal,
nonlinear functions.
– In this current basic version of PSO, craziness and velocity matching are
eliminated.
Algorithm Description
• Initial Swarm
– No well established guidelines for swarm size, normally 15 to 30.
– particles are randomly distributed across the design space.
x i = x PLQ + rand (x PD[ − x PLQ )
where x PLQ and x PD[ are vectors of lower and upper limit values
respectively.
• Velocity Update
– provides search directions
– Includes deterministic and probabilistic parameters.
– Combines effect of current motion, particle own memory,
and swarm influence.
New velocity
v ik + = wv ik + c rand
( p i
− x ik ) + c rand
§¨ p g − x i ·¸
© k k
¹
∆t ∆t
x ik v ik
• Stopping Criteria
– Maximum change in best fitness smaller than specified
tolerance for a specified number of moves (S).
( ) ( )
f p kg − f p kg− q ≤ ε q = , ,..S
• Functional Constraints
– Exterior penalty methods (linear, step linear, or quadratic).
penalty multipliers
fitness function N con
f (x ) = φ (x ) + ¦ ri (PD[[,gi ])
i =
v ik + = c rand
( p i
− x ik ) + c rand
§¨ p g − x i ·¸
© k k
¹
∆t ∆t
© Rania Hassan 3/2004
Engineering Systems Division - Massachusetts Institute of Technology 20
Discretization
Minimize (
f (x ) = x + x + VLQ x + VLQ x )
• Known global minimum of [0,0] and an optimal function value of 0.
• PSO parameters:
– Swarm Size = 30
– Inertia, w = 0.5 (static)
– Self Confidence, c = 1.5
– Swarm Confidence, c = 1.5
– Stopping Tolerance, ε = 0.001
2
4
Statistics 1.5 Statistics
2 1
Min = 15.1 0
0.5
Min = 0.25
x2
x2
0
-2
Mean = 49.9 -0.5
Mean = 26.5
-4 -1
-1.5
Max = 92.6 -6
-2
Max = 86.6
-8 -2.5
-6 -4 -2 0 2 4 6 -8 -6 -4 -2 0 2 4 6 8 10
x1 x1
2
0.8
Statistics 1.5 Statistics
1 0.6
x2
0
0.2
Mean = 13.6 -0.5
Mean = 4.69
-1 0
Max = 66.5
-1.5
-2
-0.2 Max = 41.9
-2.5 -0.4
-5 -4 -3 -2 -1 0 1 2 3 4 -6 -5 -4 -3 -2 -1 0 1 2
x1 x1
Minimize f (x ) = x − (
x ) + ( − x )
• PSO parameters:
– Swarm Size = 30
– Inertia, w = 0.5 (static)
– Self Confidence, c = 1.5
– Swarm Confidence, c = 1.5
– Stopping Tolerance, ε = 0.001
Statistics 3
3
Statistics
2
2
Min = 1.03 1
Min = 0.26
x2
x2
0 1
Mean = 1.4E4 -1
0
Mean = 5.8E3
-2
-3
Max = 5.3E4 -4
-1
Max = 6.9E4
-5 -2
-5 0 5 -4 -2 0 2 4 6
x1 x1
1 1.4
Statistics 1.2
Statistics
0.8
x2
0.8
0.4
Mean = 2.6E4 0.6 Mean = 1.3E3
0.2
0.4
4.5
2.5
1.5
0.5
0
0 20 40 60 80 100 120
Move
4 4
3.5 3.5
3 3
Fitness Value
Fitness Value
2.5 2.5
2 2
1.5 1.5
1 1
0.5 0.5
0 0
0 10 20 30 40 50 60 0 10 20 30 40 50 60
Particle number Particle number
7 6
x 10 Results for Move 65, # of Feasible Particles (out of 60) = 17 x 10 Results for Move 112, # of Feasible Particles (out of 60) = 16
3 14
12
2.5
10
2
Fitness Value
Fitness Value
8
1.5
6
1
4
0.5
2
0 0
0 10 20 30 40 50 60 0 10 20 30 40 50 60
Particle number Particle number
Value Acquisition
Cost
Reliability
Payload / Launch
Mass
Mission
Requirements
Solutions
Focus on the conceptual Use non-calculus based
design stage (less variables, search methods like the
simpler models) Genetic Algorithm (GA)
© Rania Hassan 3/2004
Engineering Systems Division - Massachusetts Institute of Technology 33
System Problem
Communication Satellite Design
Design Variables
There are 27 design variables that can be combined into 2.2 trillion different designs.
Design
Description and discrete values
parameter
1 to 8 HPA type (TWTA or SSPA)
Solar array cell type (GaAs single junction, GaAs multi-junction, Si
9
thin, Si normal, or hybrid Si with GaAs multi-junction)
10 Battery cell type (NiCd or NiH2)
11 N/S thermal coupling (no coupling or coupling)
N/S STK thruster technology (xenon plasma, arcjets, bi-propellant,
12
and hydrazine monopropellant)
13 E/W STK thruster technology (bi-propellant or hydrazine)
14 Launch vehicle choice from 8 options
• PSO parameters:
– Swarm Size = 60
– Inertia, w = 0.5 (static)
– Self Confidence, c = 1.5
– Swarm Confidence, c = 1.5
– Stopping Tolerance, ε = 5 kg
• Known solution
x = [1 0 1 1 1 1 1 1 4 2 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 0 3]
f (x ) = 3443 kg
• PSO solution
x = [1 1 1 0 1 1 1 1 4 2 1 1 0 1 0 2 1 1 0 1 1 0 1 0 1 1 2]
f (x ) = 3461 kg
14 8
7
12
6
10
Fitness Value
Fitness Value
5
8
4
6
3
4
2
2 1
0 0
0 10 20 30 40 50 60 0 10 20 30 40 50 60
Particle number Particle number
5 4
x 10 Results for Move 15, # of Feasible Particles (out of 60) = 50 x 10 Results for Move 33, # of Feasible Particles (out of 60) = 58
14 1.8
12 1.6
1.4
10
1.2
Fitness Value
Fitness Value
8
1
6
0.8
4
0.6
2 0.4
0 0.2
0 10 20 30 40 50 60 0 10 20 30 40 50 60
Particle number Particle number