Title: PSO and GA: An Introduction
1PSO and GA An Introduction
- Saman Halgamuge
- (Application example in collaboration with Asanga
Rathnaweera and Harry Watson IEEE TEC article
published in May 2004)
2Particle Swarm Optimisation.
3Particle Swarm Optimization
- Particle Swarm Optimization (PSO) mimics the
collective intelligent behavior of
unintelligent creatures. - It was developed in 1995 by James Kennedy and
Russell Eberhart Kennedy, J. and Eberhart, R.
(1995). Particle Swarm Optimization,
Proceedings of the 1995 IEEE International
Conference on Neural Networks, pp. 1942-1948,
IEEE Press. (http//dsp.jpl.nasa.gov/members/paym
an/swarm/kennedy95-ijcnn.pdf ) - It has been applied successfully to a wide
variety of search and optimization problems. - In PSO, a swarm of n individuals communicate
either directly or indirectly with one another in
each search directions (gradients).
4Particle Swarm OptimizationThe Anatomy of a
Particle
Ik X ltxk0,xk1,,xkn-1gt P
ltpk0,pk1,,pkn-1gt V ltvk0,vk1,,vkn-1gt x_fitness
? p_fitness ?
- A particle (individual) is composed of
- Three vectors
- The x-vector records the current position
(location) of the particle in the search space, - The p-vector records the location of the best
solution found so far by the particle, and - The v-vector contains a gradient (direction) for
which particle will travel in if undisturbed. - Two fitness values
- The x-fitness records the fitness of the
x-vector, and - The p-fitness records the fitness of the
p-vector.
5Particle Swarm Optimization Swarm search
Velocity calculation xid current value
of the dimension d of the dividual i vid
current velocity of the dimension d of the
individual i. Pid optimal value of the
dimension d of the individual i so far. Pgd
current optimal value of the dimension d of
the swarm. c1, c2 acceleration coefficients. ?
- inertia weight factor
Position update
6Particle Swarm OptimizationSwarm Search
- In PSO, particles never die!
- Particles can be seen as simple agents that fly
through the search space and record (and possibly
communicate) the best solution that they have
discovered. - Initially the values of the velocity vectors are
randomly generated with the range -Vmax, Vmax
where Vmax is the maximum value that can be
assigned to any vid. - Once the particle computes the new Xi and
evaluates its new location. If x-fitness is
better than p-fitness, then Pi Xi and p-fitness
x-fitness.
7Particle Swarm OptimizationThe algorithm
1. Initialise particles in the search space at
random. 2. Assign random initial velocities for
each particle. 3. Evaluate the fitness of each
particle according a user defined objective
function. 4. Calculate the new velocities for
each particle. 5. Move the particles. 6. Repeat
steps 3 to 5 until a predefined stopping
criterion is satisfied.
8Particle SwarmControlling Velocities
- When using PSO, it is possible for the magnitude
of the velocities to become very large. - Performance can suffer if Vmax is inappropriately
set. - Several methods were developed for controlling
the growth of velocities - A dynamically adjusted inertia factor,
- A dynamically adjusted acceleration coefficients.
- Re-initialisation of stagnated particles..
9Particle Swarm OptimizationRelated Issues
- There are a number of related issues concerning
PSO - Controlling velocities (determining the best
value for Vmax), - Swarm Size,
- Inertia weight factor,
- Robust Settings for (C1 and C2),
10Genetic Algorithms
Genetic algorithms are inspired by Darwin's
theory of evolution.
Genetic Algorithms (GAs) were invented by John
Holland and developed by him and his students and
colleagues. This lead to Holland's book
"Adaptation in Natural and Artificial Systems"
published in 1975.
11Genetic Algorithms Biological background
- All living organisms consist of cells. In each
cell there is the same set of chromosomes. - A chromosome consists of genes, blocks of DNA.
Each gene encodes a particular protein. - Complete set of genetic material (all
chromosomes) is called genome. - Particular set of genes in genome is called
genotype. - The genotype provides (with later development
after birth) basis for the organism's phenotype
(its physical and mental characteristics, such as
eye colour, intelligence etc.)
12Genetic Algorithms
Gene representation
Chromosome 1 0101100100110110 Chromosome 2
1101111000011110
13Crossover operation
Chromosome1 01011 00100110110 Chromosome 2
11011 11000011110 Offspring 1 01011
11000011110 Offspring 2 11011
00100110110
14Outline of the Basic Genetic Algorithm 1.
Generate random population of n chromosomes.
(suitable solutions for the problem) 2.
Evaluate the fitness of each chromosome x in the
population. 3. Create a new population by
repeating following steps (1 to 3) until the new
population is complete. 1. Select two parent
chromosomes from a population according to their
fitness (the better fitness, the bigger chance to
be selected) 2. With a crossover probability
cross over the parents to form new offspring
(children). If no crossover was performed,
children are the exact copies of parents. 3.
With a mutation probability mutate new offspring
at each position in chromosome.
15Outline contd. 4. Place new offspring in the
new population. 5. Use new generated population
for a further run of the algorithm. 6. If the
end condition is satisfied, stop, and return the
best solution in current population. 7. Go to
step 2.
16Parameters of GA
- Crossover probability.
- - how often crossover will be performed. If there
is no crossover - (should be high generally, about 80-95)
- Mutation probability.
- - how often parts of chromosome will be
mutated - (mutation rate should be very low as 0.5-1)
- Population size.
- - how many chromosomes are in population (in
one generation)
17Ex Engine performance optimisation with PSO and
GA
Power Output f (CR, ER, ST,IVO, IVD, IVL, EVO,
EVD )
ST - spark timing, ER- equivalence ratio, CR -
compression ratio, IVO - inlet valve open, IVD-
inlet valve duration, EVO - Exhaust valve open,
EVD - Exhaust valve duration , IVL - Inlet valve
lift
Quasi-dimensional engine model is used for engine
power evaluation for a given set of input
parameters
18Objective function for fitness evaluation
If knock Intensity lt 1
Fitness Power output
else
Fitness Power output x 0.2/ Knock Intensity
Knocking is highly undesirable abnormal
combustion behaviour due to rapid auto ignition
of gas mixture
Note According to engine knock model used in
this study, the engine is considered knocking if
the knock Intensity gt1
19Operating range
measured before top dead centre
20(No Transcript)
21Engine power optimisation
22Reference engines normal operating condition
Optimum operating parameters with PSO
ST - spark timing, ER- equivalence ratio, CR -
compression ratio, IVO - inlet valve open, IVD-
inlet valve duration, EVO - Exhaust valve open,
EVD - Exhaust valve duration, BTDC - before top
dead centre, BBDC - before bottom dead centre,
- all the angles are measured in crank angle
degrees