10 - Evolutionary Computation Review Flashcards
Evolutionary Algorithms
A subset of evolutionary computation.
In this module, assume that the difference between Evolutionary Algos and Evo Computation is..
the difference between algorithm and computation
Main idea of evo algos (steps)
Start with random initial population
- test individuals
- assign fitness
- terminate?
- select
- reproduce and mutate, repeat.
global function optimisation purpose
Find the global max or min of the function
Selection via truncation
In N individuals, select K best
Roulette Wheel Selection
Draw a random number and see whether that drops onto a particular individual
Normalise fitness
Tournament Selection
Select K random individuals, see which performs best and select that
Selection Pressure
Balance between exploitation and exploration. Chance of being selected as parent
Eg in a pop of 100.
- selecting 50 parents would be low selection pressure
- selecting 5 parents = high selection pressure
High selection pressure good or bad?
Bad, get stuck in narrow solution which doesn’t generalise well.
Good balance needed for diversity.
4 Termination Criteria
- Stop with max num of generations
- Stop with max computation time
- Stop with desired fitness value
- Stop when fitness does not improve any more
Not required
Genetic Algorithms
Encode a solution (Evo Algo) into bits.
Eg genotype [010001100] can be used to encode a 3x3 matrix which is a representation of the phenotype (solution)
n 1 2 3
1 0 1 0
2 0 0 1
3 1 0 0
Genotype vs Phenotype representation
Genotype as a matrix
Phenotype as a directed graph
9bits encode the presence of a link. 36 bits represent the value of each link
For 010 001 100
This means trhe first part is 1 to, second is 2 to and third is 3 to.
Which bits are active?
(from left) 2nd, 6th and 7th
9bits encode the presence of a link. 36 bits represent the value of each link
For 010 001 100
and 0000 1100 0000 1000 0000 0011 0100 0000 0000
What is the value on a graph between each part of the genotype? (1,2,3)
1 -> 2 = 12
2-> 3 = 3
3 -> 1 =
Why do some mutations have a larger effect than others?
Take 0000 for example
If a mutation occurs to make 0001 then that is a change of 1
If a mutation occurs to make 1000 then that is a change of 8