08.08.2013 Views

Mitchell, T. J. (2010) An exploration of evolutionary computation ...

Mitchell, T. J. (2010) An exploration of evolutionary computation ...

Mitchell, T. J. (2010) An exploration of evolutionary computation ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

t = 0;<br />

initialise P(t);<br />

evaluate P(t);<br />

loop begin<br />

loop end;<br />

P'(t) = select(P(t));<br />

P(t+1) = recombine(P'(t));<br />

P(t+1) = mutate(P(t+1));<br />

evaluate(P(t+1));<br />

t = t + 1;<br />

Figure 2.2: Canonical GA pseudocode<br />

Where P and P' denote the population and mating pool respectively at time t. Subsequent<br />

to initialisation (usually random), each individual <strong>of</strong> the population is decoded and applied<br />

to the objective function to retrieve a value <strong>of</strong> fitness. In the canonical GA, selection is<br />

facilitated probabilistically using the so-called roulette wheel selection mechanism. Each<br />

individual is represented by a sector <strong>of</strong> a notional wheel, sized in proportion to its fitness.<br />

A spin <strong>of</strong> the wheel yields a mating candidate, which is copied into a temporary mating<br />

pool (P') in preparation for variation by recombination and mutation.<br />

The recombination operator is termed crossover, and provides the primary source <strong>of</strong><br />

variation within a GA. The most basic GA recombination technique is known as single-<br />

point crossover, which operates by simply concatenating the first part <strong>of</strong> one parent string<br />

with the second part <strong>of</strong> another; where both the crossover point and the participating parent<br />

strings are chosen at random. Crossover is responsible for combining useful segments from<br />

the gene pool to form fitter solutions. This concept is otherwise known as the building<br />

block hypothesis, which states that short combinations <strong>of</strong> highly fit genes (building blocks)<br />

evolve simultaneously throughout the population (implicit parallelism). Well-adapted<br />

building blocks are assembled by recombination to create highly fit descendants<br />

(Goldberg, 1989). This also relates to Holland‘s schema theory, which states that an<br />

exponentially increasing number <strong>of</strong> trials are allocated to useful building blocks (or<br />

schemata) from one generation to the next (Holland, 1975).<br />

In the theory that relates to the canonical GA, it is considered that the genes <strong>of</strong> the optimal<br />

individual are distributed throughout the population from the outset. Optimisation is then<br />

the process <strong>of</strong> correctly assembling those genes, which is achieved principally by the<br />

recombination operator. The mutation operator is widely considered to be the background<br />

source <strong>of</strong> variation (Goldberg, 1989, pp14), as it has the potential to destroy building<br />

blocks through random change. However, it is possible that a 0 or 1 positioned at a certain<br />

15

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!