Genetic Algorithms (GA)

advertisement
Genetic Algorithms for Bin
Packing Problem
Hazem Ali, Borislav Nikolić, Kostiantyn
Berezovskyi, Ricardo Garibay Martinez,
Muhammad Ali Awan
Outline
• Introduction
– Non-Population Metaheuristics
– Population Metaheuristics
• Genetic Algorithims (GA)
• Scientific Paper on GA ”A New Design of Genetic
Algorithm for Bin Packing”
Introduction
• On the last session we discussed:
 Local search (LS) and Heuristics
 Metaheuristics
 Examples of metaheuristics:
• VNS
• GRASP, SA, TS
• Genetic Algorithms (GA)
• What is the difference?
Non-Population Metaheuristics
• Initial phase = single solution
• New solutions -> perturbations
• Less complexity and computational time
Population Metaheuristics
• Initial phase = group of solutions
• New solutions :
– Recombining (Crossover)
– Perturbations (Mutation)
• More complex
• Tradeoff Complexity and performance
Population Vs. Non-population
Metaheuristics
Pobulation Metaheuristics
Non-Pobulation Metaheuristics
Population of size M
Population of size 1
Recombining and Perturbations
Only perturbations
Complex
Less complex
• Examples:
 Particle Swarm Optimization (PSO)
 Ant Colonies (AC)
 Genetic Algorithms (GA)
Genetic Algorithms (GA) - Overview
• Based on biological evolution
• Developed by John Holland, University of
Michigan (1970’s)
– To understand the adaptive processes of natural
systems
– To design artificial systems software that retains
the robustness of natural systems
Genetic Algorithms (GA) - Overview
• “Genetic Algorithms are good at taking large, potentially
huge search spaces and navigating them, looking for
optimal combinations of things, solutions you might not
otherwise find in a lifetime.”
Salvatore Mangano - Computer Design, May 1995
• Efficient, effective techniques :
– Optimization
– Machine learning applications
• Widely-used :
– Business
– Scientific
– Engineering
Genetic Algorithms (GA) – Basic
Components
• Encoding technique
• Initialization procedure
• Evaluation function
• Selection of parents
• Genetic operators
• Parameter settings
Genetic Algorithms (GA) – Basic
Components
• Encoding technique
Genetic Algorithms (GA) – Basic
Components
• Initialization procedure
Genetic Algorithms (GA) – Basic
Components
• Evaluation function
88%
31%
90%
5%
20%
10%
81%
35%
46%
67%
41%
12%
87%
55%
99%
74%
99%
61%
77%
89%
55%
11%
Genetic Algorithms (GA) – Basic
Components
• Selection of parents
88%
31%
90%
5%
20%
10%
81%
35%
46%
67%
41%
12%
87%
55%
99%
74%
99%
61%
77%
89%
55%
11%
Genetic Algorithms (GA) – Basic
Components
• Genetic operators
Genetic Algorithms (GA) – Basic
Components
• Parameter settings
Advantages of GA
•
•
•
•
•
•
•
•
Easy to understand
Modular & Flexible, separate from application
Supports multi-objective optimization
Good for “noisy” environments
Always an answer; gets better with time
Inherently parallel; easily distributed
Many ways to speed up and improve
Easy to exploit previous or alternate solutions
Scientific Paper on GA
A New Design of Genetic Algorithm
for Bin Packing
By
Hitoshi Iima
Tetsuya Yakawa
Kyoto Institute of Technology, Japan,
Published on 2003
Scope
• Presenting a new design of GA for solving 1D BPP
• FF and MBS hueristics are used
• Effective and outperform TABU & VNS
• Next slides explains:
– GA for BPP
– Results
GA for BPP
• Encoding Phase:
– Gene:
10
(1,3,10)
3
1
– Genotype:
10
3
1
2
3
5
6
4
2
g1: (1,3,10) (2,3,5) (2,4,6)
GA for BPP
• Initialization Procedure:
– FF hueristic is used to generate the initial
population (genotypes)
• Selection of Parents:
– Two parents selected randomly
P1: ( 1,3,20 ) (2,9,11) (5,7,13,15) (4,6,14) (8,12)
P2: (3,4,12,15) (6,7,11) (9,20) (1,5,8) (2,13,14)
GA for BPP
• Genetic operators:
• Crossover:
P2: (3,4,12,15) (6,7,11) (9,20) (1,5,8) (2,13,14)
P1: ( 1,3,20 ) (2,9,11) (5,7,13,15) (4,6,14) (8,12)
Replacement:
O1: (2,7,9,13)
(4,6,20)(1,5,8)
(2,9,11) (4,6,14)
(1,5,8)
(7) (20)
(14)(13)
T Ta: (11)
Tb: (3,12,15)
O1
FF & MBS’ applied
O1: (2,7,9,13) (4,6,20)(1,5,8,14) (3,11,12,15)
O2
S1
(2)
(9)
(11)
(2,9)
(2,11)
(9,11)
(2,9,11)
Tc
(7,20)
(7,13)
(20,13)
GA for BPP
• Genetic operators:
• Mutation:
P1: ( 1,3,20 ) (2,9,11) (5,7,13,15) (4,6,14) (8,12)
P2: (3,4,12,15) (6,7,11) (9,20) (1,5,8) (2,13,14)
Replacement:
O3: (2,9,11) (4,6,14)
Tm (1) (3) (5) (7) (8)
(20) (12) (13)
O3
Apply the same replacement procedure
O4
S1
(2)
(9)
(11)
(2,9)
(2,11)
(9,11)
(2,9,11)
Tc
(1,3)
(1,5)
(1,7)
(1,8)
.
.
.
GA for BPP
• GA Outline:
– Generate the initial population
– Pick up two solutions x1and x2
– Generate two solutions x3 and x4 by crossover
– Generate two solutions x5 and x6 by mutation
– Select the best two solutions {x1,...,x6}
– Discard x1, x2 from initial population
– Add the two best solutions to the new generation
– Repeat
Experiment and Results
Data Set
GA
VNS
BISON
1
690
694
697
2
475
474
473
3
3
2
3
No. of optimal solutions
Data Set
GA
VNS
BISON
Data Set
GA
VNS
BISON
1
0.04
0.07
0.04
1
0.04
0.05
0.04
2
0.01
0.14
0.01
2
0.02
0.36
0.02
3
0.70
0.80
0.70
3
1.24
1.44
1.26
Average absolute deviation (ad)
Average relative deviation (rd)
Conclusion
• New GA design that suits well BPP
• Genetic operators designed in such a way that
offsprings inheret parents characteristics
• FF and MBS´used to enhance the obtained results
• Better performance over VNS & TABU
Download