Chapter 5: Implementing a GA
Section 5.4: Selection Methods
For all of the techniques below, what are the advantages?
What are the disadvantages?
- Roulette Wheel.
- Stochastic Universal Sampling (SUS). Spin a wheel once and make
the selection with n evenly spaced pointers.
- Sigma Scaling. The expected value of individual i at time t,
Exp(i,t) = 1 + [ (f(i) - favg(t)) / 2 σ(t) ]
- Elitism.
- Boltzman. Exp(i,t) = ef(i)/T / efavg(t)/T.
Decrease T over time.
- Rank. One linear technique is to order the population
from 1 to N based on increasing fitness.
Exp(i,t) = Min + (Max - Min)[(rank(i,t) - 1)/(N-1)] where
1 ≤ Max ≤ 2 and Min = 2 - Max.
Exponential techniques can also be used.
- Tournament. Generate a random number, r, where 0 ≤ r ≤ 1.
Choose two chromosomes randomly and if r > k (a constant)
select the fitter parent, otherwise select the less fit parent.
- Steady State. The generations overlap. Define the generation gap to
be the fraction of new individuals in a generation.
Section 5.5: Genetic Operators
For the operators discussed below, when will they work well?
When will they not work so well?
Crossover
- Single point
- Two point (Multipoint)
- Uniform - can be parameterized with p, often 0.5 ≤ p ≤ 0.8
- Many more...
Mutation
Others
- Inversion
- Crowding - the new individual replaces the most similar individual
- Fitness Sharing
- Mating Restrictions - spatial, similarity, non-similarity, tags, etc.
Section 5.6: Parameters for GAs
- pm
- pc
- N, the population size
- and many more ...
Dejong did a very elaborate experiment that showed that across many
problems, good settings are pm - 0.001, pc = 0.6
and 50 ≤ N ≤ 100.
Some researchers have investigated how to use a GA to evolve these
parameters. This is called a meta-GA.
Some researchers suggest that the parameters should adapt during
the run. This is called self-adaptation.