16.01.2013 Views

An Introduction to Genetic Algorithms - Boente

An Introduction to Genetic Algorithms - Boente

An Introduction to Genetic Algorithms - Boente

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Chapter 2: <strong>Genetic</strong> <strong>Algorithms</strong> in Problem Solving<br />

(Rumelhart et al. 1986), where n is a constant representing the learning rate. One goal of Chalmers's work was<br />

<strong>to</strong> see if the GA could evolve a rule that performs as well as the delta rule.<br />

The task of the GA was <strong>to</strong> evolve values for the km's. The chromosome encoding for the set of km's is<br />

illustrated in figure 2.25. The scale parameter k 0 is encoded as five bits, with the zeroth bit encoding the sign<br />

(1 encoding + and 0 encoding ) and the first through fourth bits encoding an integer n: k 0 = 0 if n = 0;<br />

otherwise |k 0 |=2 n–9 . Thus k0 can take on the values 0, ±1/256, ±1/128,…, ±32, ±64. The other coefficients km<br />

are encoded by three bits each, with the zeroth bit encoding the sign and the<br />

Figure 2.25: Illustration of the method for encoding the kms in Chalmers's system.<br />

first and second bits encoding an integer n. For i = 1…10, km = 0 if n = 0; otherwise |km | = 2 n–1 .<br />

It is known that single−layer networks can learn only those classes of input−output mappings that are "linearly<br />

separable" (Rumelhart et al. 1986). As an "environment" for the evolving learning rules, Chalmers used 30<br />

different linearly separable mappings <strong>to</strong> be learned via the learning rules. The mappings always had a single<br />

output unit and between two and seven input units.<br />

The fitness of each chromosome (learning rule) was determined as follows. A subset of 20 mappings was<br />

selected from the full set of 30 mappings. For each mapping, 12 training examples were selected. For each of<br />

these mappings, a network was created with the appropriate number of input units for the given mapping<br />

(each network had one output unit). The network's weights were initialized randomly. The network was run<br />

on the training set for some number of epochs (typically 10), using the learning rule specified by the<br />

chromosome. The performance of the learning rule on a given mapping was a function of the network's error<br />

on the training set, with low error meaning high performance. The overall fitness of the learning rule was a<br />

59

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

Saved successfully!

Ooh no, something went wrong!