Introduction - Evolutionary Algorithms
Introduction - Evolutionary Algorithms
Introduction - Evolutionary Algorithms
A presentation by:
Prof. M K Tiwari
IIT Kharagpur
Challenging Optimization Problems
Introduction
References
Introduction
Nature is full of complex systems studied from different angles with different
objectives.
Complex Systems
Optimization Algorithms
Goals:
These are also termed as intelligent search techniques and simulate the
natural processes to solve Hard Optimization problems.
• Simulated Annealing
• Tabu Search
Basic Terminologies
A Chromosome
A Gene
A Population set
Genetic Algorithm
Basic Terminologies
A Chromosome
Population
1 0 0 1 1 1 0
0 0 1 1 1 0 0
A Gene
Genetic Algorithm
Basic Terms:
• An Individual is characterized by set of parameter called
as “genes”
• The combination of gene forms a string called as
“Chromosome”
• Chromosome forms the “genotype”
Genotype contains all information to construct an organism: A
Phenotype
• Reproduction is a process on chromosome of genotype
• Fitness in real world equivalent to the phenotype’s
struggle for life.
Genetic Algorithm
EVOLUTIONARY
STEPS
Selection Modification Evaluation
3 5 1 2 4 8 7 6
Integer coding
– For combinatorial optimization problems
– Ex. Quadratic Assignment Problems
Step 1: Encoding Problem (Cont.)
Decoding
Coding Space
Genetic Operations Solution Space
Evaluation and Selection
Encoding
Step 1: Encoding Problem (Cont.)
•
Critical issues with encoding
• Feasibility of a chromosome
solution decoded from a chromosome lies in a feasible region of
the problem
• Legality of a chromosome
chromosomes represents a solution to a problem
l one
a
illeg
Coding Space
Solution Space
infeasible one
Feasible space
feasible o
ne
Coding Space
1 -n mapping
Solution Space
g
n -1 mappin
1 -1 mapping
Step 2: Initialization
1 0 1 1 0 0 1 1 1 0 0 1
x1 x2 x3
Step 2: Initialization (Cont.)
• Population of solutions
• Fitness of solutions are evaluated (= objective
function) Solution No. Fitness values
1 0 1 0 0 1 0 1 1 0 1 0 1 13.2783
0 1 1 0 1 0 1 0 0 1 0 1 2 20.3749
0 0 1 0 1 0 1 1 1 1 0 0 3 19.8302
Chromosomes
0 1 0 1 0 0 1 0 0 0 1 1 4 52.9405
1 0 0 0 1 0 1 0 1 0 0 1 5 25.8202
1 0 1 1 1 1 0 0 0 0 1 1 6 36.0282
0 0 1 0 1 0 1 1 0 1 1 0 7 70.9202
0 1 1 1 1 0 0 1 1 1 0 1 8 38.9022
0 1 0 1 0 1 0 1 1 0 0 1 9 29.0292
1 0 0 0 1 1 1 1 1 1 0 0 10 21.9292
Step 3: Reproduction
Solution
Parents Selected Offspring
Selected
2 0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0 1
3 0 0 1 0 1 0 1 1 1 1 0 0 0 0 1 0 1 0 1 0 1 1 0 0
4 0 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1 1
7 0 0 1 0 1 0 1 1 0 1 1 0 0 0 1 0 1 0 1 0 0 0 1 0
Crossover Points
8 0 1 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 1 1 1 0 1
10 1 0 0 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 1 0 0
Step 3: Reproduction (Cont.)
Crossover operation
Population
(pop_size) Mutation operation
Offspring produced
Step 4: Selection (“Survival of the fittest”) (Cont.)
Deterministic Samplings:
• select best pop_size individuals from the parents and offspring
• No duplication of the individuals
Mixed Samplings:
• both random and deterministic samplings are done
Step 5: Termination Criteria
Repeating the above steps until the termination criteria is not
satisfied
Termination criteria
maximum number of generations
no improvement in fitness values for fixed generation
Summary of Genetic Algorithms
Begin
{
initialize population;
evaluate population;
while (TerminationCriteriaNotSatisfied)
{
select parents for reproduction;
perform Crossover and mutation;
evaluate population;
}
}
Issues for GA Practitioners
Combinatorial set covering, travelling salesman, routing, bin packing, graph colouring
and partitioning
Optimization