Genetic Algorithms: Sharda - Cs - Softcomputing@yahoogroups - Co.in
Genetic Algorithms: Sharda - Cs - Softcomputing@yahoogroups - Co.in
Genetic Algorithms: Sharda - Cs - Softcomputing@yahoogroups - Co.in
sharda_cs_softcomputing@yahoogroups.co.in
START
1 FITNESS : Evaluate fitness f(x) of each chromosome in the population 2 NEW POPULATION 0 SELECTION : Based on f(x)
1 RECOMBINATION : Cross-over chromosomes 2 MUTATION 3 ACCEPTATION 3 : Mutate chromosomes : Reject or accept new one
generation
4 5 TEST LOOP : Test problem criterium : Continue step 1 4 until criterium is satisfied
Initialization
Start with a population of randomly generated individuals, or use - A previously saved population - A set of solutions provided by a human expert - A set of solutions provided by another heuristic algorithm
Selection
The selection operation copies a single individual, probabilistically selected based on fitness, into the next generation of the population. There are few possible ways to implement selection: Only the strongest survive
Choose the individuals with the highest fitness for next generation
Fitness Selection
Each successive generation the selected population goes for new population generation. Selection is based on the fitness function
Roulette wheel selection Rank based selection Tournament selection Steady-state selection Truncation selection
Crossover
Crossover is concept from genetics. Crossover is reproduction. Crossover combines genetic material from two parents, in order to produce superior offspring. Few types of crossover:
One-point Multiple point Uniform
One-point Crossover
0 1 2 3 4 5 6 7 Parent #1 7 6 5 4 3 2 1 0 Parent #2
One-point Crossover
0 1 5 3 4 5 6 7 Parent #1 7 6 2 4 3 2 1 0 Parent #2
One-point crossover 1
Randomly one position in the chromosomes is chosen Child 1 is head of chromosome of parent 1 with tail of chromosome of parent 2 Child 2 is head of 2 with tail of 1
Randomly chosen position
Parents: 1010001110
0011010010
Offspring: 0101010010
0011001110
Two-point crossover
Randomly two positions in the chromosomes are chosen Avoids that genes at the head and genes at the tail of a chromosome are always split when recombined
Randomly chosen positions
Uniform crossover
A random mask is generated The mask determines which bits are copied from one parent and which from the other parent Bit density in mask determines how much material is taken from the other parent (takeover parameter)
Mask: 0110011000 (Randomly generated) 0011010010
Parents: 1010001110
Offspring: 0011001010
1010010110
Mutation
Mutation introduces randomness into the population. The idea of mutation is to reintroduce divergence into a converging population. Mutation is performed on small part of population, in order to avoid entering unstable state.
Mutation
Purpose: to simulate the effect of errors that happen with low probability during duplication
Results: - Movement in the search space - Restoration of lost information to the population
Mutation...
Parent 1 1 0 1 0 0 0 1
Child
Advantages of GAs
Concept is easy to understand. Minimum human involvement. Computer is not learned how to use existing solution, but to find new solution! Modular, separate from application Supports multi-objective optimization Always an answer; answer gets better with time !!! Inherently parallel; easily distributed Many ways to speed up and improve a GA-based application as knowledge about problem domain is gained Easy to exploit previous or alternate solutions