lecture 3: genetic algorithms 1 evolutionary computational intelligence lecture 3: genetic...

23
Lecture 3: Genetic Algori thms 1 Evolutionary Computational Intelligence Lecture 3: Genetic Algorithms Ferrante Neri University of Jyväskylä

Post on 20-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Lecture 3: Genetic Algorithms1

Evolutionary Computational Intelligence

Lecture 3:

Genetic Algorithms

Ferrante Neri

University of Jyväskylä

Lecture 3: Genetic Algorithms2

GA Quick Overview

Developed: USA in the 1970’s Early names: J. Holland, K. DeJong, D. Goldberg Typically applied to:

– discrete optimization Attributed features:

– not too fast– good heuristic for combinatorial problems

Special Features:– Traditionally emphasizes combining information from good

parents (crossover)– many variants, e.g., reproduction models, operators

Lecture 3: Genetic Algorithms3

Genetic algorithms

Holland’s original GA is now known as the simple genetic algorithm (SGA)

Other GAs use different:– Representations– Mutations– Crossovers– Selection mechanisms

Lecture 3: Genetic Algorithms4

GAs in EAs

Representation Binary strings

Recombination N-point or uniform

Mutation Bitwise bit-flipping with fixed probability

Parent selection Fitness-Proportionate

Survivor selection All children replace parents

Speciality Emphasis on crossover

Lecture 3: Genetic Algorithms5

Representation

A chromosome is encoded as a binary number Due to the inner discretization of the binary

encoding GA can turn out more efficient in discrete optimization

Lecture 3: Genetic Algorithms6

Representation in the population

Thus a population of couple (L,b) can be seen as a matrix of binary numbers

Each line is a chromosome

1 0 1 0 0 1 1 0

1 1 0 1 0 1 1 1

0 1 1 0 1 1 0 0

1 0 0 1 1 0 0 0

0 0 1 1 1 0 0 1

Lecture 3: Genetic Algorithms7

Parent Selection Mechanisms

The individuals that are undergoing recombination are selected by means of a Selection Mechanism

Classical selection mechanisms are– Fitness Proportionate– Ranking– Tournament

Lecture 3: Genetic Algorithms8

Fitness Proportionate Selection

It is the first one used in SGA It is given a probability to be chosen to each solution Such probability is proportionate to the fitness value taken by each

single solution The sum of the probabilities is clearly one A random number between 0 and 1 is sampled and in a “roulette

stile” the individual is selected

Lecture 3: Genetic Algorithms9

Ranking Selection 1/2

Individuals are sorted accoding to their fitness value and a probability is assigned according to their position in the list (rank)

Then, the a probability is assigned to each solution by means of:– Linear Ranking– Exponential Ranking

Lecture 3: Genetic Algorithms10

Ranking Selection 2/2

Linear: if 1.0 < s 2.0 and μ is the total number of ranks, the probability for the individual ranked i is

Exponential: if c is a normalize constant factor which allows the sum of all the probabilities being equal to 1, the probability of the individual ranked i is

Lecture 3: Genetic Algorithms11

Tournament Selection

Pick up a couple of solutions (at random) and compare their fitness, the better individual is in the mating pool

It can work also with groups of individuals picking up a subset of them

It does not require a sorting or a knowledge of the fitness distribution over the individuals of the population

Lecture 3: Genetic Algorithms12

Selection Pressure

It’s the property of the selection component in following the promising search directions

In other words, a parent selection mechanism which selects the best individuals many times has a high selection pressure

In linear ranking ruled by s

Lecture 3: Genetic Algorithms13

Crossover

The selected parents undergo recombination In a SGA, the recombination is the crossover Crossover is an operator which combines

two parents in order to produce one, two or more offspring

The analogy of biological crossover in binary encoding is very straightforward

Lecture 3: Genetic Algorithms14

1-point crossover

It’s the original crossover employed by Holland

It selects a random “cut-point” and switch head and tail of two chromosomes

Lecture 3: Genetic Algorithms15

n-point crossover

Choose n random crossover points Split along those points Glue parts, alternating between parents Generalisation of 1 point (still some positional bias)

Lecture 3: Genetic Algorithms16

Uniform crossover

Usually it is performed by means of a randomly generated mask This mask says which genes must be flipped for generating the

first child Make an inverse copy of the gene for the second child

Lecture 3: Genetic Algorithms17

Mutation

It is usually applied to the newly generated offspring before calculating its fitness value Alter each gene independently with a probability pm

pm is called the mutation rate– Typically between 1/pop_size and 1/ chromosome_length

Lecture 3: Genetic Algorithms19

Survivor Selection

In this course the main feature of a GA is that the algorithm must be generational (also called age-based)

In other words, the parents must be replaced by the newly generated offspring

Some implementation employ elitism: a restricted number of parents, the best, are copied for the subsequent generation

Lecture 3: Genetic Algorithms20

Generation

The loop made up of parent selection, recombination (crossover) mutation, survivor selection is called generation

Lecture 3: Genetic Algorithms22

Integer representations

Some problems naturally have integer variables, e.g. TSP, scheduling problems

Crossover and mutation are similar as in the case of binary encoding

N-point crossover can be applied

1 2 3 4 5

5 4 3 2 1

1 2 3 2 1

5 4 3 4 5

Lecture 3: Genetic Algorithms23

Perturbating mutation

It picks up a small subset of genes Adds (subtracts) a small quantity to the

selected genes It must be assured that this operation does

not generate a perturbed individual outside the decision space

Lecture 3: Genetic Algorithms28

Crossovers for integer representation

It exists a plenty of crossovers designed for several applications

Order 1 crossover Partially mapped crossover Cycle crossover Edge crossover

Lecture 3: Genetic Algorithms29

Real Encoded Representation

The original EA with real encoding was Evolution Strategies

Nevertheless in 80’s several real encoded GAs were designed

Details will be shown at the next lecture…..