Transportation and Logistics Optimization
Transportation and Logistics Optimization
Transportation and Logistics Optimization
Optimization
Genetic Algorithm (GA)
Directed search algorithms based on the mechanics of
biological evolution
Population-based approach
Demo
Terminology
Chromosome
Gene
Parents
Children
Siblings
Generation
Components
Encoding Scheme
Fitness Function
Genetic Operators
Parameter Setting
Encoding Scheme
Bit strings (Binary encoding)
e.g.) 1 1 0 0 1 1 1 1
Real numbers
e.g.) 1.2 5.3 0.4 2.3 5 3.1 06 7.2
A B D J E D I B
Permutations of element
e.g.) 1 5 3 2 6 8 4 7
Program elements
... any data structure ...
Fitness Function
Evaluate how good is each candidate
chromosome.
Find the fitness value
ex) Obj. function value in Max problems
Fitness
Chromosome
Value
0 1 1 0 1 64
1 1 0 0 0 361
0 1 0 0 0 169
1 0 0 1 1 576
Genetic Operators
Selection
Crossover
Mutation
Substitution
Selection
Roulette Wheel Selection
Chromosome Fitness % of total
A 01000 64 5.5
B 10011 361 30.9
C 01101 169 14.4
D 11000 576 49.2
Tournament Selection
Expected-value selection
Ranking Selection
Elite Preserving Method
Crossover
Single Point Crossover
1 1 0 0 1 0 1 1 1 1 0 0 1 1 1 1
1 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1
1 1 0 1 1 1 1 1 1 1 0 0 1 0 1 1
Uniform Crossover
Calculate crossover rate for every bit
Arithmetic Crossover
Use average value
Mutation
Change a bit
1 1 0 0 1 0 1 1 1 0 0 0 1 0 1 1
Steady-state GA:
A few members replaced each generation
Elitism
Parameter Setting
Population size
How many chromosomes are in population
Too few chromosome small part of search space
Too many chromosome GA slow down
Recommendation : 20-30, 50-100
Probability of Crossover
How often will be crossover performed
Recommendation : 60% -90%
Probability of Mutation
How often will be parts of chromosome mutated
Recommendation : 0.5% - 1%
Hybrid Genetic Algorithm
What is Hybrid GA?
GA+ Local Search
Find local optimal solution from a given chromosome
Replace that chromosome with the local optimal solutions
Key : How to find a local optimum?
GA Chromosomes
CityList1 (3 5 7 2 1 6 4 8)
CityList2 (2 5 7 6 8 1 3 4)
Crossover
Order1 Crossover
* *
Parent1 (3 5 7 2 1 6 4 8)
Parent2 (2 5 7 6 8 1 3 4)
Child (5 8 7 2 1 6 3 4)
Mutation
Mutation involves reordering of the list:
* *
Before: (5 8 7 2 1 6 3 4)
After: (5 8 6 2 1 7 3 4)