Introduction to Evolutionary Computation and Evolutionary Computation  Module  Tutorial 1
13 Pages
English
Downloading requires you to have access to the YouScribe library
Learn all about the services we offer

Introduction to Evolutionary Computation and Evolutionary Computation Module Tutorial 1

-

Downloading requires you to have access to the YouScribe library
Learn all about the services we offer
13 Pages
English

Description

Introduction to Evolutionary Computation and EvolutionaryComputation ModuleTutorial 1V. Landassuri Morenov.landassuri moreno@cs.bham.ac.ukSchool of Computer ScienceUniversity of BirminghamOctober 12, 20091/1Outline2/1Tutorials / ExercisersWhy tutorials and exercisers?I They are intended to help you to understand in a better way the EvolutionaryAlgorithms (EAs).Objective:I It is expected that the student programme the EAs presented in the lectures andcompare them, well, that will depending of the student’s level.I Note that is not compulsory that students programme an EA, but programme itwill give you a better understanding in the filed.Organization:I During the term, there is going to be 6 tutorials and 10 exercisers. For the duedates of Tutorials you can check the web page of the module:http://www.cs.bham.ac.uk/~pkl/teaching/2009/ec/Tutorials / Exercisers 3/1I The exercises are intended to be weekly, with the exception of the first one. Soevery Monday it is going to be delivery one exercise and the due date its going tobe the next Monday before the lecture/tutorial (i.e. before 11am), e.g. Exercise 2is given they 12/10/09, due date Monday 19/10/09 before 11am.I The marked exercisers are going to be returned by email and at the end of theterm its going to send you a final mark. Note that the marked exercisers will nothave any effect in you final evaluation.I Even if the exercise are not going to count in your final mark, they will give you ...

Subjects

Informations

Published by
Reads 18
Language English

Exrait

Introduction
to
Evolutionary Computation Computation Module Tutorial 1
V. Landassuri-Moreno v.landassuri-moreno@cs.bham.ac.uk
School of Computer Science University of Birmingham
October 12, 2009
and
Evolutionary
1/1
Outline
2/1
T
Tutorials / Exercisers
u
Why tutorials and exercisers? I They are intended to help you to understand in a better way the Evolutionary Algorithms (EAs). Objective:
I It is expected that the student programme the EAs presented in the lectures and compare them, well, that will depending of the student’s level. I Note that is not compulsory that students programme an EA, but programme it will give you a better understanding in the filed.
Organization: I During the term, there is going to be 6 tutorials and 10 exercisers. For the due dates of Tutorials you can check the web page of the module: http://www.cs.bham.ac.uk/~pkl/teaching/2009/ec/
torials/xEercisers3/1
Tu
I The exercises are intended to be weekly, with the exception of the first one. So every Monday it is going to be delivery one exercise and the due date its going to be the next Monday before the lecture/tutorial (i.e. before 11am), e.g. Exercise 2 is given the Monday 12/10/09, due date Monday 19/10/09 before 11am. I The marked exercisers are going to be returned by email and at the end of the term its going to send you a final mark. Note that the marked exercisers will not have any effect in you final evaluation. I Even if the exercise are not going to count in your final mark, they will give you an idea and feedback of you performance !!! I Please, submit your exercises on time, there is not going to be late submissions.
Activities: I Read and analyse papers I Think to solve problems I Create pseudo code and code I You can use your preferred language (C, C++, Java, ...)
toraisl/Exercisers/41
E
Q1. Concept explanation
excri
I What is a population? I Set of individuals I Potential solutions I What happen if the population is small or BIG? I Representation of Individual and Populations I It will depend of the problem at hand and the way you want to represent the information. I e.g. If you are using bits, you can use a vector to put each bit. For the population you can use a matrix. I The same apply for real numbers. I Difference between phenotype and genotype? I Genotype -> internal representation -> 0001001 I Phenotype -> physical representation -> 9 I Explain why the population needs to be initialized in a random way? And what could happen in the algorithm if we do not perform that? I Random -> diversity I Imagine that you know where is the Global optima, do you set up your population by hand? I Previous domain knowledge of the problem at hand? I From this question, can you explain what is a local/global minima?
es1/51
E
Q1. Concept explanation
xecri
I Evaluation of individuals I To know how good or bad the solution is I To know how close we are form the optimal I To be able to perform the Selection I The role of selection, crossover and mutation I Selection: choose the parents I Crossover: combine them to create an offspring I Mutation: modify (perturb) a parent to create an offspring I There are different parameters to adjust here, do you know how to choose them? I If crossover and mutation are not used, we could use Direct search or random search I What is a Generation? I It is an iteration in the EA (main loop). I When the actual population is modified to create the new one I Steps involved I Rank I Selection I Crossover I Mutation I Migration I Elite I . . .
se16/1
E
Q2. Difference between GA’s, EP, ES and GP
xecri
I Genetic Algorithm (GA). Binary strings, search operators on genotype, Crossover and Mutation I Evolutionary Programming (EP). Close to Lamarkian evolution, mutation only in the phenotype, no recombination. I Evolutionary Strategies (ES). Real-valued vectors, recombination and self-adaptive mutations. I Genetic Programming (GP). Trees to represent individuals, crossover for recombination and mutation. GPs are used for evolution of artificial neural networks and computer programs.
se1/71
E
Q3. EA implementation
x
Implement and EA that minimize the function f ( x 1 , x 2 ) = x 12 + x 2 , given the next information:
ecri
I Use a binary representation of integers. I Use one-point crossover, bit-mutation and roulette-wheel selection (the student need to choose the crossover and mutation rates) I Minimize f ( x ) in the range of 1024 < = x i < = 1023
es1/81
tt:ph1.wbo//wwc.motiokoria/tutenetls/grogla-cixe/smhti3de-plamioctun-f.nhpEpexcrsi1e/91
Q3. EA implementation
I How many bits do you need? I Which is the criteria to stop the algorithm? I If you rank the fitness in each generation, how could be modified the evolution of your individuals?
Figure: Function f ( x 1 , x 2 ) = x 12 + x 2 1
E
Q3. Pseudo code
x
Set initial values: generation = 10, noGen =0, noInd = 10, sizeInd = 11, Create Population: for this case a matrix of 10x11 (noInd x sizeInd) Initialize population (at random)
mainLoop (until some stopping criteria is satisfied) Evaluate fitness (given a fitness function) Find the best individual Selection: Use roulette-wheel selection Select n parents Crossover: Use m selected individuals, m < noInd
ecrsie1
...
11/1
E
Q3. Pseudo code
x
loop Use 1 point crossover and generate 2 offspring using two consecutive selected individual end loop Introduce the best offspring (n-m) in the new generation Mutation: Use l selected individual, l < m < noInd, m+l = noInd loop Use 1 bit mutation for each selected individuals to create the new l individuals end loop Introduce the new offspring (l) in the next generation end mainLoop
ercise113/1