2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.
-
Upload
declan-neville -
Category
Documents
-
view
218 -
download
1
Transcript of 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.
![Page 1: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/1.jpg)
23/4/18 EIE426-AICV 1
Evolutionary Computation (EC)
eie426-ec-200809.ppt
![Page 2: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/2.jpg)
23/4/18 EIE426-AICV 2
Contents Basic Concepts of EC Genetic Algorithms An Example Chromosome Representation Stopping Criteria Initial Population Selection Mechanisms Crossover and Mutation Fitness Functions Another Example Application: Routing Optimization Advantages and Disadvantages of EC
![Page 3: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/3.jpg)
23/4/18 EIE426-AICV 3
Evolution and Search
Evolution - search through the enormous genetic parameter space for the best genetic make-up.
Borrow ideas from nature to help us solve problems that have equally large search spaces or similarly changing environment.
![Page 4: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/4.jpg)
23/4/18 EIE426-AICV 4
Natural Evolution and Evolutionary Computation
Natural Evolution
Individual
Fitness
Environment
Evolutionary Computing
Candidate Solution
Quality
Problem
![Page 5: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/5.jpg)
23/4/18 EIE426-AICV 5
Different ECsSeveral classes of EC algorithms have been developed:
- Genetic algorithms (GA’s): model genetic evolution- Genetic programming: based on GA’s, but individuals are programs (represented as trees)- Evolutionary programming: from the simulation of adaptive behavior in evolution (phenotype evolution)- Evolution strategies: model the strategic parameters that control variation in evolution, i.e., the evolution of evolution- Culture evolution: models the evolution of culture of a population and how the culture influences the evolution of individuals.- Co-evolution: individuals evolve through cooperation, or in competition with one other.
![Page 6: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/6.jpg)
23/4/18 EIE426-AICV 6
Basic Concepts
• Chromosome: individual• Population: many individuals• Gene: each characteristics of chromosome (one parameter)• Allele: the value of a gene• Crossover: generate offspring by combining parts of the
parents.• Mutation: introduce new genetic material into an existing
individual.• Fitness: the survival strength of an individual• Culling (removing) and elitism (copying)
![Page 7: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/7.jpg)
23/4/18 EIE426-AICV 7
Evolutionary Computation
Recombination(Crossover)
MutationPopulation
Offspring
ParentsSelection
ReplacementThe evolutionary cycle
![Page 8: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/8.jpg)
23/4/18 EIE426-AICV 8
Genetic Algorithms
The GA was the first EC paradigm developed and applied (Holland 1975).
The features of the original GA’s:
(1) A bit string representation
(2) Proportional selection
(3) Cross-over as the primary method to produce new individuals.
Several changes have been made:
(1) Different representation schemes
(2) Different selection methods
(3) Different GA operators (cross-over, mutation and elitism)
![Page 9: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/9.jpg)
23/4/18 EIE426-AICV 9
Random Search
The GA is a search procedure. Random search is possibly the simplest search
procedure. Its training time may be very long before an acceptable solution is obtained.
Procedure:
(1) Start from an initial search point or a set of initial points.
(2) Random perturbations to the points
(3) Repeat until an acceptable solution is reached or a maximum number of iterations is exceeded.
![Page 10: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/10.jpg)
23/4/18 EIE426-AICV 10
General Genetic Algorithm(1) Let g = 0.(2) Initialize the initial generation Cg .(3) While no stopping criterion is satisfied
(a) Evaluate the fitness of each individual in Cg .(b) g g+1.(c) Select parents from Cg-1.(d) Recombine selected parents through cross-over to
form offspring Og (with a probability pc).(e) Mutate offspring in Og (with a probability pm).(f) Select the new generation Cg from (the previous
generation Cg-1, e.g., the best individuals are copied) and the offspring Og.
g: generationNote: The things in () might or might not be carried out.
![Page 11: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/11.jpg)
23/4/18 EIE426-AICV 11
An Example
sequence. 0) toting(approxima
number small decrasing a is ,...2,1 and ,...2,1
,...2,1,20
12
0
,...2,1,20
12
:equation above the tosolutions ofnumber infinitivean are There
1010tan
010cos1010sin
:maxima local thefind funtion to thetedifferntiacan We
2,1 0.210sin
:function following theof maximum theFind
0
ii
ii
x
x
ii
x
xx
xxxxf
xxxxf
i
ii
ii
![Page 12: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/12.jpg)
23/4/18 EIE426-AICV 12
.85.385.1an greater thslighytly is
85.1
[-1,2].in maximum theis
19
1919
19
fxf
x
x
![Page 13: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/13.jpg)
23/4/18 EIE426-AICV 13
Use a genetic algorithm to solve the problem:
Coding (chromosome representation of a solution)
Generation of initial population (solutions) Fitness calculation Genetic operation
![Page 14: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/14.jpg)
23/4/18 EIE426-AICV 14
Coding (chromosome representation):Use a binary string to represent x. If the solution is to be precise to 10-6, then the interval (2-(-1)) = 3 should be divided into 3× 106. At least 22 bits should be used because
mapping genotype phonotype
process coding a ,,...,,
3041944210321520972
02021
22621
bbbx
![Page 15: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/15.jpg)
23/4/18 EIE426-AICV 15
Decoding
21111111111111111111111
10000000000000000000000
637197.012
3967 288 20.1
967 288 21111010100011000101110'
1111010100011000101110 e.g.,12
)1(2'0.1
'2,...,,
mapping phonotypegenotype
process decoding a , ,...,,
2
2
22
2
1
22
10
21
0202021
02021
x
x
s
xx
xbbbb
xbbb
i
ii
![Page 16: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/16.jpg)
23/4/18 EIE426-AICV 16
minmaxmin
10
1
02011
maxmin
12
'
'2,,
:belowgiven is conversion then thestring,binary bit -an by
drepresente is ,in valuesthat takesparameter a if general,In
xxx
xx
xbbbb
m
xx
m
m
i
iim
![Page 17: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/17.jpg)
23/4/18 EIE426-AICV 17
Generation of initial population
A set of N 22-bit binary strings can be randomly generated as the initial population.
![Page 18: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/18.jpg)
23/4/18 EIE426-AICV 18
Fitness calculation
Since f(x) > 0 in the interval, we can directly use f(x) as a fitness function:
f(s) = f(x)
e.g.,
s1 = <1000101110110101000111>, f(s1)=2.586345
s2 = <0000001110000000010000>, f(s2)=1.078878
s3 = <1110000000111111000101>, f(s3)= 3.250650
![Page 19: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/19.jpg)
23/4/18 EIE426-AICV 19
Genetic operation(1) Selection: based on the fitness of individualse.g., roulette wheel selection (fitness proportionate selection)
(2) Crossover (with a probability pc)e.g.,
s2 = <00000 | 01110000000010000>, f(s2)=1.078878
s3 = <11100 | 00000111111000101>, f(s3)= 3.250650After the crossover operation:
s’2 = <00000 | 00000111111000101>, f(s’2)=1.940865
s’3 = <11100 | 01110000000010000 >, f(s’3)= 3.459245
![Page 20: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/20.jpg)
23/4/18 EIE426-AICV 20
(3) Mutation (with a probability pm) e.g.,
s3 = <1110000000111111000101>
f(s3)= 3.250650After the mutation operation:
s’3 = <1110100000111111000101 >
f(s’3)= 0.917743or
s3 = <1110000000111111000101>
s”3 = <1110000001111111000101 >
f(s”3)= 3.343555
![Page 21: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/21.jpg)
23/4/18 EIE426-AICV 21
Simulation results:
N = 50, pc = 0.25, pm = 0.01, at 89 generations, the best individual was obtained:
smax = <1101001111110011001111>
xmax = 1.850 549
f(xmax) = 3.850 274
![Page 22: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/22.jpg)
23/4/18 EIE426-AICV 22
The best individual at each iteration (up to 150 generations)
Generation The chromosome of the best individual
x fitness
1 1000111000010110001111 1.831 624 3.534 806
11 0110101011100111001111 1.854 860 3.833 286
17 1110101011111101001111 1.847 536 3.842 004
54 1000110110100011001111 1.848 699 3.847 155
71 0100110110001011001111 1.850 897 3.850 162
89 1101001111110011001111 1.850549 3.850274
150 1101001111110011001111 1.850549 3.850274
![Page 23: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/23.jpg)
23/4/18 EIE426-AICV 23
Summary on Basic Concepts Evolution is an optimization process, where the aim is to
improve the ability of individuals to survive. An evolutionary algorithm (EA) is a stochastic search for
an optimal solution to a given problem. Evolution - search through the enormous genetic
parameter space for the best genetic make-up. Borrow ideas from nature to help us solve problems that
have an equally large search spaces or similarly changing environment.
![Page 24: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/24.jpg)
23/4/18 EIE426-AICV 24
Genotype: describes the genetic composition of an individual
Phenotype: the expressed behavioral traits of an individual in a specific environment.
Selection: use the fitness evaluations to decide which are the best parents to reproduce.
Crossover: generate offspring by combining parts of the parents
Mutation: introduce new genetic material into an existing individual.
Coding: phenotype genotype Decoding: genotype phenotype
![Page 25: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/25.jpg)
23/4/18 EIE426-AICV 25
Simple Genetic Algorithm (SGA)Representation Binary strings
Recombination
(crossover)
N-point (commonly used 1-point and 2-point) or uniform;
pc typically in range (0.6, 0.9)
Mutation Bitwise bit-flipping with fixed probability pm (typically between 1/pop_size and 1/ chromosome_length)
Parent selection Fitness-Proportionate
Survivor selection All children replace parents
Speciality Emphasis on crossover
![Page 26: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/26.jpg)
23/4/18 EIE426-AICV 26
Genotype space = {0,1}I
I-bit binary stringsPhenotype space
Coding (encoding or(representation)
Decoding(inverse representation)
011101001
010001001
10010010
10010001
Chromosome Representation
![Page 27: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/27.jpg)
23/4/18 EIE426-AICV 27
Binary-valued variables: no extra coding required Nominal-valued variables
D-bit with 2D discrete nominal valuese.g., four colors: red (00), blue (01), green (10), yellow (11)
Continuous-valued variables
I1,0:
![Page 28: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/28.jpg)
23/4/18 EIE426-AICV 28
Other Representations Gray coding of integers (still binary chromosomes)
Gray coding is a mapping that means that small
changes in the genotype cause small changes in the
phenotype (unlike binary coding, e.g., 0111(7) and
1000 (8)).
It is generally accepted that it is better to encode
numerical variables directly as
Integers
Floating point variables
![Page 29: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/29.jpg)
23/4/18 EIE426-AICV 29
Stopping Criteria
The maximum number of generation is exceeded
An acceptable best fit individual has evolved The average and/or maximum fitness value do
not change significantly over the past g generations.
![Page 30: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/30.jpg)
23/4/18 EIE426-AICV 30
Initial Population
The standard way of generating the initial population is to choose gene values randomly from the allowed set of values.
The goal of random selection is to ensure that the initial population is a uniform representation of the entire search space.
A large population covers a larger area of the search space, and may require less generations to converge.
In the case of a small population, the EA can be forced to explore a large search space by increasing the rate of mutation.
![Page 31: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/31.jpg)
23/4/18 EIE426-AICV 31
Selection Mechanisms
Selection operators
(1) Random selection
(2) Proportional selection: roulette wheel selection
(3) Tournament selection
(4) Rank-based selection
![Page 32: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/32.jpg)
23/4/18 EIE426-AICV 32
Random Selection
Individuals are selected randomly with no reference to fitness at all. All the individuals, good or bad, have an equal chance of being selected.
![Page 33: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/33.jpg)
23/4/18 EIE426-AICV 33
Proportional Selection: Roulette Wheel Selection
Individual Chromosome Fitness
fi
Selection probability, Pi
Accumulated probability
1 0001100000 8 0.086 957 0.086 957
2 0101111001 5 0.054 348 0.141 304
3 0000000101 2 0.021 739 0.163 043
4 1001110100 10 0.108 696 0.271 739
5 1010101010 7 0.076 087 0.347 826
6 1110010110 12 0.130 435 0.478 261
7 1001011011 5 0.054 348 0.532 609
8 1100000001 19 0.206 522 0.739 130
9 1001110100 10 0.108 696 0.847 826
10 0001010011 14 0.152 174 1.000 000
0,/10
1
ii
iii fffP
![Page 34: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/34.jpg)
23/4/18 EIE426-AICV 34
Roulette Wheel Selection
It can be visualized as the spinning of the wheel and testing which slide ends up at the top. Fitness values are usually normalized to [0,1].
1
2
3
4
5
6
7
8
9
10
![Page 35: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/35.jpg)
23/4/18 EIE426-AICV 35
Assume that the following random number sequence is generated:0.070 221 0.545 9290.784 567 0.446 9300.507 893 0.291 1980.176 340 0.272 9010.371 435 0.854 641
Compared the random number sequence with the accumulated probabilities, we select the individuals: 1, 8, 9, 6, 7, 5, 8, 4, 6, 10. Individuals 2 and 3 were removed and replaced with individuals 8 and 6. The individuals with high fitness tends to survive but those with low fitness may be removed.
![Page 36: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/36.jpg)
23/4/18 EIE426-AICV 36
The pseudocode:
.individual slected theas chrosomeReturn 5.
sum (b)
1 (a)
, sum While4.
1,0~ number, random uniform aObtain 3.
sum 2.
index chromosome thedenotes where,1 1.
n
P
nn
U
P
nn
n
n
![Page 37: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/37.jpg)
23/4/18 EIE426-AICV 37
Tournament Selection
A group of k individuals is randomly selected. The individual with the best fitness is selected from the group.
The advantage: the worse individuals of the population will not be selected and the best individuals will not dominate in the reproduction process.
For crossover, two tournaments are held to select each of two parents. It is possible that (1) A parent can be selected to reproduce more than once; and(2) One individual can combine with itself to reproduce offspring.
![Page 38: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/38.jpg)
23/4/18 EIE426-AICV 38
Rank-Based Selection
The rank ordering of the fitness values is used to determine the probability of selection and not the fitness values itself.
Non-deterministic linear samplingIndividuals are sorted in decreasing fitness value. (1) Let n = random(random(N))
where N is the total number of individuals and random(N) return a number between 1 and N.(2) Return n as the selected individual
![Page 39: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/39.jpg)
23/4/18 EIE426-AICV 39
Elitism
Elitism involves the selection of a set of individuals from the current generation to survive to the next generation.
The number of individuals to survive to the next generation, without being mutated, is referred to as the generation gap.
Generation gap = k
k best individuals or
k individuals selected using any selection operator
![Page 40: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/40.jpg)
23/4/18 EIE426-AICV 40
Crossover
Crossover
![Page 41: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/41.jpg)
23/4/18 EIE426-AICV 41
Uniform Crossover
A mask (vector) of length I (I-bit binary string) is created at random for each pair of individuals selected for reproduction. A bit with value of 1 indicates that the corresponding allele (bit) has to be swapped.
. fromdifferent isIt
.chromosome in theposition each at y probabilitcrossover theis :Note
.r mask vecto Return the 3.
.1 then , If (b)
.1,0~ valuerandom a Calculate (a)
:,...,2,1each For 2.
.,...,2,1 allfor 0 1.
c
x
ix
i
p
p
mp
U
Ii
Iim
m
![Page 42: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/42.jpg)
23/4/18 EIE426-AICV 42
1 0 1 0 0 1 0 0 0 1
Parent1
Parent 2
Mask
Offspring 1
Offspring 2
![Page 43: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/43.jpg)
23/4/18 EIE426-AICV 43
One-point Crossover
.r mask vecto Return the 4.
.1let ,,...,1each For 3.
.,...,2,1 allfor 0 2.
.1,1~ lueinteger va random a Calculate 1.
m
i
i
mIi
Iim
IU
![Page 44: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/44.jpg)
23/4/18 EIE426-AICV 44
0 0 0 0 0 0 1 1 1 1
Parent1
Parent 2
Mask
Offspring 1
Offspring 2
![Page 45: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/45.jpg)
23/4/18 EIE426-AICV 45
Two-point Crossover
.r mask vecto Return the 4.
.1let ,,...,each For 3.
.,...,2,1 allfor 0 2.
. with ,1~, luesinteger va random twoCompute 1.
21
2121
m
i
i
mi
Iim
IU
![Page 46: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/46.jpg)
23/4/18 EIE426-AICV 46
0 0 1 1 1 1 0 0 0 0
Parent1
Parent 2
Mask
Offspring 1
Offspring 2
![Page 47: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/47.jpg)
23/4/18 EIE426-AICV 47
Arithmetic Crossover
Arithmetic crossover can be used in the case of continuous-valued genes.
.1,02,1with
0.1
0.1
by generated are
and offspring, twoof componentsth The
. and parents woConsider t 1.
,22,12,2
,21,11,1
21
21
Urr
rr
rr
i
ininin
ininin
nn
nn
CCO
CCO
OO
CC
![Page 48: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/48.jpg)
23/4/18 EIE426-AICV 48
Mutation Alter each gene independently with a probability
pm (the mutation rate)
Real-valued representations, mutation occurs by adding a random value (usually sampled from a Gaussian distribution ) to allele. The variance is usually a function of the fitness of the individual. Individuals with a good fitness value will be mutated less, while a bad fitness value will lead to large mutations.
2,0 N
![Page 49: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/49.jpg)
23/4/18 EIE426-AICV 49
Mutation (fox)
0 1 0 10 111
0 1 0 00 111
![Page 50: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/50.jpg)
23/4/18 EIE426-AICV 50
The Evolution Mechanism
Increasing diversity by using genetic operators mutation crossover
Decreasing diversity by selection of parents things to kill
![Page 51: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/51.jpg)
23/4/18 EIE426-AICV 51
Fitness FunctionsCommon fitness functions: Use the objective function f(x) directly
(1) For a maximization problem, Fit(f(x)) = f(x)
e.g.,
(2) For a minimization problem, Fit(f(x)) = -f(x)
e.g., solution for x2 + x = 2, to minimize f(x) = x2 + x - 2
xxxf 10sin
:function following theof maximum theFind
![Page 52: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/52.jpg)
23/4/18 EIE426-AICV 52
Clipping
minimum. theof estimationan is
Otherwise,0
,
problemon maximizati aFor (2)
maximum. theof estimationan is
Otherwise,0
,
problemon minimizati aFor (1)
min
minmin
max
maxmax
c
cxfcxfxfFit
c
cxfxfcxfFit
![Page 53: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/53.jpg)
23/4/18 EIE426-AICV 53
Mapping
function. objective theof range value
theof estimation veconservati a is
0 c 0, c1
1
problemon minimizati aFor (2)
0 -c 0, c1
1
problemon maximizati aFor (1)
c
xfxfc
xfFit
xfxfc
xfFit
![Page 54: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/54.jpg)
23/4/18 EIE426-AICV 54
Linear transformation of fitness functions
avgmultavgavg
avgavg
avg
avg
avg
avg
avg
avgavgmult
avg
avgmult
mult
avgmultavgavg
fcfff
ffffff
ff
ff
ff
f
ff
ffcf
ff
fc
c
fcfff
ff
min
minmax'max
''min
min
min
min
max
max
max
'max
'
'
(3) and , (2) ,0 (1)
at verify theasy to isIt
ft2) Fig. (see and
usecan weation, transformafter the negative is fitness no that sure make To
ft1) Fig. (see and 1
2.0]. [1.0,with
(2) and (1) :conditions Two
![Page 55: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/55.jpg)
23/4/18 EIE426-AICV 55
f
f'
fmaxfavgfmin
cmultfavg
f'avg
f'min
Fig. ft1 Fig. ft2
f
f'
fmaxf avgfmi n
cmul tf avg
f 'avg
![Page 56: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/56.jpg)
23/4/18 EIE426-AICV 56
Genetic algorithms: case study To find the maximum of the “peak” function of two
variables x and y:
-3 ≤ x, y ≤ 3
![Page 57: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/57.jpg)
23/4/18 EIE426-AICV 57
Chromosome representation
![Page 58: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/58.jpg)
23/4/18 EIE426-AICV 58
Initial population
![Page 59: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/59.jpg)
23/4/18 EIE426-AICV 59
The first generation
![Page 60: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/60.jpg)
23/4/18 EIE426-AICV 60
Local maximum
![Page 61: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/61.jpg)
23/4/18 EIE426-AICV 61
Global maximum
![Page 62: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/62.jpg)
23/4/18 EIE557-CI&IA 62
• Robotics• Control• Design• Scheduling/Routing/Resource Allocation• Machine Learning• Pattern Recognition• Market forecasting• Data Mining• Game Playing
- Robocode- Backgammon- Chess
Evolutionary Computation: Applications
![Page 63: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/63.jpg)
Robocode
23/4/18 EIE426-AICV 63
An Open Source educational game started by Mathew Nelson (originally provided by IBM). Currently contributions are being made by various people; officially Flemming N. Larsen is working on Robocode to keep it current and fix the bugs. The game is designed to help people learn to program in Java and enjoy the experience.
Genetic Programming (GP) Robocode
![Page 64: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/64.jpg)
23/4/18 EIE557-CI&IA 64
Application: Routing Optimization The problem: Given a
network of M switches, an origin and a destination switch, the objective is to find the best route to connect a call between the origin and destination switches (Sevenster and Engelbrecht 1996). PSTN: Public Switch Telephone Network
![Page 65: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/65.jpg)
23/4/18 EIE557-CI&IA 65
Chromosome representation: - variable length- each gene representing one switch- integer values for switch numbers- the first gene and last gene representing the origin and last switches, respectivelyExamples: (1 3 6 10)
(1 5 2 5 10) = (1 5 2 10)
Duplicate switches are ignored
![Page 66: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/66.jpg)
23/4/18 EIE557-CI&IA 66
Initialization of population:
- randomly generated with the restriction that the first gene represents the origin switch and the last gene the destination switch
![Page 67: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/67.jpg)
23/4/18 EIE557-CI&IA 67
Fitness function: a multi-criteria objective function was applied.
criteria.each of influence thecontrol and , , , costants The
cost route theminimize to:
links theofn utilizatio themaximize to:
congestion route theminimize to:
length route theminimize to:
switches ofnumber total the:
route in the switches ofnumber total the:,
dcba
F
F
F
F
M
rM
rF
dFcFbFaFF
Costj
Utilj
Blockj
Switchj
j
jSwitchj
Costj
Utilj
Blockj
Switchjj
![Page 68: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/68.jpg)
23/4/18 EIE557-CI&IA 68
Selection: any selection operator Crossover: any crossover operator Mutation: replacing selected genes with a uniformly
random selected switch in the range [1, M].
![Page 69: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/69.jpg)
23/4/18 EIE557-CI&IA 69
Real World EC
Tends include: More complex representations and operators Use of problem specific knowledge for seeding
the initial population and creating heuristic operators
Hybridisation with other methods
![Page 70: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/70.jpg)
23/4/18 EIE557-CI&IA 70
Advantages of EC
Handles huge search spaces Balances exploration and exploitation Easy to try - not knowledge intensive Easy to combine with other methods Provides many alternative solutions Can continually evolve solutions to fit with a
continually changing problem
![Page 71: 2015-5-2 EIE426-AICV 1 Evolutionary Computation (EC) eie426-ec-200809.ppt.](https://reader035.fdocuments.net/reader035/viewer/2022062515/56649cae5503460f949710d3/html5/thumbnails/71.jpg)
23/4/18 EIE557-CI&IA 71
Disadvantages of EC
No guarantee for optimal solution within finite time
Weak theoretical basis May need extensive parameter tuning Often computationally expensive, i.e., slow