230 likes | 251 Views
Dive into this lecture on Genetic Algorithms (GAs) to understand their history, applications, features, and various mechanisms like selection, recombination, and mutation.
E N D
Evolutionary Computational Intelligence Lecture 3: Genetic Algorithms Ferrante Neri University of Jyväskylä Lecture 3: Genetic Algorithms
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 Algorithms
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 Algorithms
GAs in EAs Lecture 3: Genetic Algorithms
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 Algorithms
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 Lecture 3: Genetic Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
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 Algorithms
Generation • The loop made up of parent selection, recombination (crossover) mutation, survivor selection is called generation Lecture 3: Genetic Algorithms
1 2 3 4 5 1 2 3 2 1 5 4 3 2 1 5 4 3 4 5 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 Lecture 3: Genetic Algorithms
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 Algorithms
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 Algorithms
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….. Lecture 3: Genetic Algorithms