Genetic Algorithms for Bin Packing Problem Hazem Ali, Borislav Nikolić, Kostiantyn Berezovskyi, Ricardo Garibay Martinez, Muhammad Ali Awan
Dec 19, 2015
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 Non-Population
• Genetic Algorithms (GA)
• What is the difference?
Population
Non-Population Metaheuristics
• Initial phase = single solution population of size 1
• New solutions -> perturbations
• Less complexity and computational time
Population Metaheuristics
• Initial phase = group of solutions population of size M
• 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(Survival for the FITTEST)
• 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
Gene
Genotype
Genetic Algorithms (GA) – Basic Components
• Initialization procedure
Creation of Initial Population
Genetic Algorithms (GA) – Basic Components
• Evaluation function
Environment
90%
61%
77%
81%
20% 10%
87%
35%
74%
55%
5%46%
67% 41%31% 88%
11%99%
55%
12%
99%
89%
Genetic Algorithms (GA) – Basic Components
• Selection of parents
Reproduction
90%
61%
77%
81%
20% 10%
87%
35%
74%
55%
5%46%
67% 41%31% 88%
11%99%
55%
12%
99%
89%
Genetic Algorithms (GA) – Basic Components
• Genetic operators
CrossoverMutation
Genetic Algorithms (GA) – Basic Components
• Parameter settings
Practice and Art
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
ByHitoshi 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
Previous Presentation
GA for BPP
• Encoding Phase:
13
10 (1,3,10)
24
6
5
32
13
10
g1: (1,3,10) (2,3,5) (2,4,6)
– Gene:
– Genotype:
GA for BPP
• Initialization Procedure:– FF hueristic is used to generate the initial
population (genotypes)
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)
• Selection of Parents: – Two parents selected randomly
GA for BPP
• Genetic operators:• Crossover:
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)
O1 O2
O1: (2,9,11) (4,6,14) (1,5,8)
Ta: (7) (20) (13)Tb: (3,12,15)
(7,20) (7,13)
(20,13)
Tc(2) (9)
(11)(2,9)
(2,11)(9,11)
(2,9,11)
S1O1: (2,7,9,13) (4,6,20)(1,5,8)
Ta: (11) (14)Tb: (3,12,15)
T
O1: (2,7,9,13) (4,6,20)(1,5,8,14) (3,11,12,15)
FF & MBS’ applied
Replacement:
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)
O3 O4
O3: (2,9,11) (4,6,14)
(1) (3) (5) (7) (8) (20) (12) (13)
(1,3) (1,5)(1,7)(1,8)
.
.
.
Tc(2) (9)
(11)(2,9)
(2,11)(9,11)
(2,9,11)
S1
Tm
Apply the same replacement procedure
Replacement:
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 ResultsData 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
1 0.04 0.07 0.04
2 0.01 0.14 0.01
3 0.70 0.80 0.70
Average absolute deviation (ad)
Data Set GA VNS BISON
1 0.04 0.05 0.04
2 0.02 0.36 0.02
3 1.24 1.44 1.26
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