GAs traditionally use bit-strings to represent individuals.
This method provides a more domain-independent approach.
GAs are often used as optimizers, but their capabilities are more general.
Figure 1.3 shows the algorithm for a typical GA.
t = 0;
initialize population P(t)
evaluate P(t)
until (done) {
t = t + 1;
parent_selection P(t);
recombine P(t);
mutate P(t);
evaluate P(t);
survive P(t);
}
fig. 1.3: genetic algorithm
Parent selection is done using a probabilistic function
based on fitness (the better the fitness, the more likely for an individual
to be selected as a parent). N children are created by recombining the
N parents. They are mutated and survive, replacing their parents in the
population.
In GAs recombination is the most important reproduction operator. Mutation
is more of a background operation, and simply flips bits in the individuals
with a low (fixed) probability. (Some researchers even argue that mutation
is not necessary in GAs as recombination can produce the same results).