01.11.2014 Views

MACHINE LEARNING TECHNIQUES - LASA

MACHINE LEARNING TECHNIQUES - LASA

MACHINE LEARNING TECHNIQUES - LASA

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

178<br />

• Biological Sciences: Dynamics of groups<br />

In Robotics, GA have been used successfully to optimize parameters of controllers in order to<br />

evolve the Artificial Neural Networks Controllers. The GA is used to determine the weights or the<br />

topology of the network.<br />

8.1 Principle<br />

Genetic Algorithms provide a form of simulated evolution. The basic idea goes along the following<br />

steps:<br />

• Start from a basic random population of parents<br />

• Apply a process of selection<br />

• Breed pairs of parents<br />

• Produce pairs of children with only the good properties of the parents<br />

• Reject bad children<br />

The process leads to the evolution of a population of children that are better than the parents.<br />

8.2 Encoding<br />

To use a genetic algorithm, you must encode solutions to your problem in a structure that can be<br />

stored in the computer. This object is a genome (or chromosome). Thus, the first step before<br />

using a GA consists in a) defining a representation of the problem (this is often the most difficult<br />

step, as it requires some a priori knowledge on where the important features of the problem lie);<br />

b) defining the parameters to optimize (e.g. the weights in a neural networks); c) encoding the<br />

parameters into a chromosome; and d) creating a whole population, i.e. generate several random<br />

chromosomes.<br />

You can use any representation for the individual genomes in the genetic algorithm. Holland<br />

worked primarily with strings of bits, but you can use arrays, trees, lists, or any other object.<br />

© A.G.Billard 2004 – Last Update March 2011

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

Saved successfully!

Ooh no, something went wrong!