SlideShare una empresa de Scribd logo
1 de 185
Descargar para leer sin conexión
Non-Dominated Sorting Genetic Algorithm
with Numerical Example Step-by-Step
Ahmed Fawzy Gad
ahmed.fawzy@ci.menofia.edu.eg
ahmed.f.gad@gmail.com
MENOUFIA UNIVERSITY
FACULTY OF COMPUTERS AND INFORMATION
‫المنوفية‬ ‫جامعة‬
‫الحاسبات‬ ‫كلية‬‫والمعلومات‬‫المنوفية‬ ‫جامعة‬
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
Ahmed F. Gad 2
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Ahmed F. Gad 3
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y
Ahmed F. Gad 4
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y
Ahmed F. Gad 5
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??
Ahmed F. Gad 6
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??
Ahmed F. Gad 7
Single Objective Optimization Problem
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??X
Ahmed F. Gad 8
Single Objective Optimization Problem
Best Solution
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??X
X
1
2
3
Ahmed F. Gad 9
Single Objective Optimization Problem
Best Solution
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??X
X Y
1 2
2 3
3 2
Ahmed F. Gad 10
Single Objective Optimization Problem
Best Solution
• Assume there is a company wants to maximize its profit according to
the following criterion:
𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2
+ 3
• The first question to ask yourself when optimizing an equation is:
What to change for making results better?
Y ??X
X Y
1 2
2 3
3 2
Ahmed F. Gad 11
Single Objective Optimization Problem
More Input Variables
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
Ahmed F. Gad 12
Single Objective Optimization Problem
More Input Variables
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
Ahmed F. Gad 13
Single Objective Optimization Problem
More Input Variables
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
1:3 1:2
Ahmed F. Gad 14
Single Objective Optimization Problem
Best Solution
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
X Z
1 1
1 2
2 1
2 2
3 1
3 2
1:3 1:2
Ahmed F. Gad 15
Single Objective Optimization Problem
Best Solution
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
X Z Y
1 1 3
1 2 10
2 1 4
2 2 11
3 1 3
3 2 10
1:3 1:2
Ahmed F. Gad 16
Single Objective Optimization Problem
Best Solution
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
X Z Y
1 1 3
1 2 10
2 1 4
2 2 11
3 1 3
3 2 10
1:3 1:2
Ahmed F. Gad 17
Single Objective Optimization Problem
More Challenges
Add another variable Z
𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3
What to change for making results better?
Y ??X Z
X Z Y
1 1 3
1 2 10
2 1 4
2 2 11
3 1 3
3 2 10
1:3 1:2
Unbounded values for input variables.
More objective functions.
More Challenges
Ahmed F. Gad 18
Multi-Objective Optimization Problem (MOOP)
• Previously, there was a single optimization function in the optimization
problem:
𝑴𝒂𝒙 𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
Ahmed F. Gad 19
Multi-Objective Optimization Problem (MOOP)
• Previously, there was a single optimization function in the optimization
problem:
𝑴𝒂𝒙 𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
• Let`s add another objective function to the optimization problem:
𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2 + 1
Ahmed F. Gad 20
Multi-Objective Optimization Problem (MOOP)
• Previously, there was a single optimization function in the optimization
problem:
𝑴𝒂𝒙 𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
• Let`s add another objective function to the optimization problem:
𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2
+ 1
Our optimization problem is as follows:
𝑀𝑎𝑥 𝒀
𝑀𝑖𝑛 𝑲
Where
𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
𝑲 = 𝑿 − 2 2
+ 1
Subject to
1 ≤ 𝑿 ≤ 3 & 1 ≤ 𝒁 ≤ 2 Ahmed F. Gad 21
Multi-Objective Optimization Problem (MOOP)
• Previously, there was a single optimization function in the optimization
problem:
𝑴𝒂𝒙 𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
• Let`s add another objective function to the optimization problem:
𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2
+ 1
Our optimization problem is as follows:
𝑀𝑎𝑥 𝒀
𝑀𝑖𝑛 𝑲
Where
𝒀 = 𝒁3
− 𝑿 − 2 2
+ 3
𝑲 = 𝑿 − 2 2
+ 1
Subject to
1 ≤ 𝑿 ≤ 3 & 1 ≤ 𝒁 ≤ 2
Difficult to solve manually as
number of optimization functions
increases.
Non-Dominated Sorting Genetic
Algorithm (NSGA)
22Ahmed F. Gad
Non-Dominated Sorting Genetic Algorithm
(NSGA) Overview
• NSGA is a multi-objective evolutionary algorithm (MOEA) that can
solve and return more than one solution for MOOPs.
• NSGA has an extension named NSGA-II.
• NSGA-II use genetic algorithm (GA) for searching for the best
solution(s). This is why NSGA-II has the term “genetic algorithm” in its
name.
• As in GA, NSGA-II starts by a set of initial solutions that get evolved
for getting better solution(s).
• Let`s take a quick revision on steps of GA.
Ahmed F. Gad 23
Genetic Algorithm (GA) Steps
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Ahmed F. Gad 24
Genetic Algorithm (GA) Steps
GA vs. NSGA-II
NSGA-II differs from GA in the way of selecting the parents.
Away from that, NSGA-II and GA are almost similar.
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Ahmed F. Gad 25
Genetic Algorithm (GA) Steps
GA vs. NSGA-II
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Function
Solution
Fitness Value
GA
NSGA-II differs from GA in the way of selecting the parents.
Away from that, NSGA-II and GA are almost similar.
Ahmed F. Gad 26
Genetic Algorithm (GA) Steps
GA vs. NSGA-II
Function
Solution
Fitness Value
GA
Function1
Solution
Value1
NSGA
Function2
Value2
FunctionN
ValueN
…
…
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
NSGA-II differs from GA in the way of selecting the parents.
Away from that, NSGA-II and GA are almost similar.
Ahmed F. Gad 27
Genetic Algorithm (GA) Steps
GA vs. NSGA-II
Function
Solution
Fitness Value
GA
Function1
Solution
Value1
NSGA
Function2
Value2
FunctionN
ValueN
…
…
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Non-Dominated Sorting
Crowding Distance
Ahmed F. Gad 28
More About Genetic Algorithm (GA)
• Yu, Xinjie, and Mitsuo Gen. Introduction to evolutionary algorithms. Springer
Science & Business Media, 2010.
• Kalyanmoy, Deb. Multi-objective optimization using evolutionary algorithms.
John Wiley and Sons, 2001.
[Tutorial] Introduction to Optimization with Genetic Algorithm. Ahmed F. Gad
• LinkedIn: https://www.linkedin.com/pulse/introduction-optimization-genetic-
algorithm-ahmed-gad/
• KDnuggets: https://www.kdnuggets.com/2018/03/introduction-optimization-
with-genetic-algorithm.html
• TowardsDataScience: https://towardsdatascience.com/introduction-to-
optimization-with-genetic-algorithm-2f5001d9964b
• SlideShare: https://www.slideshare.net/AhmedGadFCIT/introduction-to-
optimization-with-genetic-algorithm-ga
Ahmed F. Gad 29
Our Example
• The example we are going to use to solve an optimization problem
using NSGA-II is about someone want to buy a shirt.
• There are two objective functions:
1. Low cost (between 0 and 85).
2. Bad feedback from previous buyers (between 0 and 5).
• Where the cost is in USD and feedback is measured as a real number
between 0 and 5 inclusive, where 0 is the best feedback and 5 is the
worst feedback.
• That means both objective functions are minimization.
Ahmed F. Gad 30
Our Example
Data
• The data used has 8 samples as follows:
• Our mission is to find the shirt that meets
both objectives as much as possible.
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 31
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Ahmed F. Gad 32
S1 S2 S3
S4 S5 S6
NSGA-II Steps
Initial Population
Non-Dominated Sorting
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
Ahmed F. Gad 33
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
Ahmed F. Gad 34
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
Just 2 Parents
Ahmed F. Gad 35
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
Just 2 Parents
Ahmed F. Gad 36
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
Ahmed F. Gad 37
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
Ahmed F. Gad 38
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
Ahmed F. Gad 39
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Ahmed F. Gad 40
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Ahmed F. Gad 41
Non-dominated sorting could not compare
the same solutions within the same level.
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Ahmed F. Gad 42
NSGA-II Steps
Initial Population
Non-Dominated Sorting
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Select All
Solutions
in Level?
Ahmed F. Gad 43
Parents
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Select All
Solutions
in Level?
YES
Ahmed F. Gad 44
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Select All
Solutions
in Level?
Crowding
Distance
NOYES
Ahmed F. Gad 45
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Select All
Solutions
in Level?
Crowding
Distance
NOYES
Tournament Selection
46Ahmed F. Gad
NSGA-II Steps
Initial Population
Non-Dominated Sorting
Parents
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Select All
Solutions
in Level?
Crowding
Distance
NOYES
Mating Pool
Offspring
Crossover
Mutation
New Population
Tournament Selection
47Ahmed F. Gad
NSGA-II Steps
S2 S5
S4
S3S1 S6
Level 1
Level 2
Level 3
S1 S2 S3
S4 S5 S6
3 Parents
???
Crowding Distance
Initial Population
Non-Dominated Sorting
Parents
Select All
Solutions
in Level?
Crowding
Distance
NOYES
Mating Pool
Offspring
Crossover
Mutation
New Population
Tournament Selection
48Ahmed F. Gad
GA Vs. NSGA-II
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Initial Population
Non-Dominated Sorting
Parents
Select All
Solutions
in Level?
NOYES
Mating Pool
Offspring
Crossover
Mutation
New Population
Tournament Selection
Crowding
Distance
Ahmed F. Gad 49
GA Vs. NSGA-II
Initial Population
Fitness Value
Mating Pool
Offspring
Parents
Crossover
Mutation
New Population
Initial Population
Non-Dominated Sorting
Parents
Select All
Solutions
in Level?
NOYES
Mating Pool
Offspring
Crossover
Mutation
New Population
Tournament Selection
Crowding
Distance
Ahmed F. Gad 50
NSGA-II
Initial Population
• Suppose that the population size is 8 (i.e.
means 8 solutions will be used in the
population).
• This means all solutions are used in the initial
population.
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 51
NSGA-II
Non-Dominated Sorting
• Domination in NSGA-II helps us to select the best set of solutions as
parents.
• If solution X dominates solution Y, that means solution X is better than
solution Y.
When to say that solution X dominates solution Y?
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions and
2. Solution X is better than solution Y in at least one objective function.
Ahmed F. Gad 52
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
Ahmed F. Gad 53
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
Ahmed F. Gad 54
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
Ahmed F. Gad 55
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
Ahmed F. Gad 56
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
Ahmed F. Gad 57
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
Ahmed F. Gad 58
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
X Y
Max Obj1 5 4
Max Obj2 0.1 0.25
Does solution X dominates solution Y?
Ahmed F. Gad 59
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
X Y
Max Obj1 5 4
Max Obj2 0.1 0.25
Does solution X dominates solution Y?
Ahmed F. Gad 60
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
X Y
Max Obj1 5 4
Max Obj2 0.1 0.25
Does solution X dominates solution Y?
Ahmed F. Gad 61
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
X Y
Max Obj1 5 4
Max Obj2 0.1 0.25
Does solution X dominates solution Y?
NO.
Ahmed F. Gad 62
NSGA-II
Non-Dominated Sorting
• Solution X is said to dominate solution Y if and only if:
1. Solution X is no worse than solution Y in all objectives functions
and
2. Solution X is better than solution Y in at least one objective
function.
X Y
Max Obj1 4 4
Max Obj2 0.3 0.2
Does solution X dominates solution Y?
YES.
X Y
Max Obj1 5 4
Max Obj2 0.1 0.25
Does solution X dominates solution Y?
NO.
Set of solutions not satisfying such two conditions are called non-dominant set. 63
Steps to Find the Non-Dominant Set
1. Select a solution with index i, where i starts from 1 corresponding
to the first solution.
2. Check the dominance of that solution against all other solutions in
the data.
3. If a solution is found to dominate that solution, then stop as it is
impossible to be in the current non-dominated front. Check the
next solution.
4. If no solution dominates that solution, then add it to the current
non-dominated front.
5. Increment i by 1 and repeat steps 2 to 4.
Ahmed F. Gad 64
NSGA-II
Non-Dominated Sorting
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• Let`s find the non-dominated
fronts based on our example.
Ahmed F. Gad 65
NSGA-II
Non-Dominated Sorting – Solution A
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 66
NSGA-II
Non-Dominated Sorting – Solution A
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 67
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than B in the both
objectives as A`s cost is 20 which is
less (i.e. better) than B`s cost of 60. ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 68
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than B in the both
objectives as A`s cost is 20 which is
less (i.e. better) than B`s cost of 60.
• Also A`s feedback is 2.2 which is
less than B`s feedback which is 4.4
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 69
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than B in the both
objectives as A`s cost is 20 which is
less (i.e. better) than B`s cost of 60.
• Also A`s feedback is 2.2 which is
less than B`s feedback which is 4.4
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Solution B does not dominate
solution A.
Ahmed F. Gad 70
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than C across all
objectives. A`s cost (20$) is less
than C`s cost (65$). Also A`s
feedback (2.2) is less than C`s
feedback (3.5).
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 71
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than C across all
objectives. A`s cost (20$) is less
than C`s cost (65$). Also A`s
feedback (2.2) is less than C`s
feedback (3.5).
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Solution C does not dominate
solution A.
Ahmed F. Gad 72
NSGA-II
Non-Dominated Sorting – Solution A
• A is worse than D in the first
objective (cost) because A’s cost is
20$ which is larger than D’s cost of
15$.
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 73
NSGA-II
Non-Dominated Sorting – Solution A
• A is worse than D in the first
objective (cost) because A’s cost is
20$ which is larger (worse) than D’s
cost of 15$.
• A’s feedback is 2.2 is smaller
(better) than D’s feedback of 4.4.
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 74
NSGA-II
Non-Dominated Sorting – Solution A
• A is worse than D in the first
objective (cost) because A’s cost is
20$ which is larger (worse) than D’s
cost of 15$.
• A’s feedback is 2.2 is smaller
(better) than D’s feedback of 4.4.
• Solution D does not dominate
solution A because conditions of
dominance are not met.
ID Cost $ Feedback
A 20 2.2
B 60 4.8
C 45 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 3.5
H 25 2.5
Solution D does not dominate
solution A.
Ahmed F. Gad 75
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than E across all
objectives. A`s cost (20$) is less
than E`s cost (55$) and A`s
feedback (2.2) is less than E`s
feedback (4.5).
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 76
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than E across all
objectives. A`s cost (20$) is less
than E`s cost (55$) and A`s
feedback (2.2) is less than E`s
feedback (4.5).
Solution E does not dominate
solution A.
Ahmed F. Gad 77
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than F in the first
objective (cost) because A`s cost is
20$ which is smaller than F`s cost
of 50$.
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 78
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than F in the first
objective (cost) because A`s cost is
20$ which is smaller than F`s cost
of 50$.
• This is enough to conclude that
solution F does not dominate
solution A.
Solution F does not dominate
solution A.
Ahmed F. Gad 79
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than G across all
objectives. A`s cost (20$) is less
than G`s cost (80$) and A`s
feedback (2.2) is less than G`s
feedback (4.0).
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 80
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than G across all
objectives. A`s cost (20$) is less
than G`s cost (80$) and A`s
feedback (2.2) is less than G`s
feedback (4.0).
Solution G does not dominate
solution A.
Ahmed F. Gad 81
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than H across all
objectives. A`s cost (20$) is less
than H`s cost (25$) and A`s
feedback (2.2) is less than H`s
feedback (4.6).
Ahmed F. Gad 82
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution A
• A is better than H across all
objectives. A`s cost (20$) is less
than H`s cost (25$) and A`s
feedback (2.2) is less than H`s
feedback (4.6).
Solution H does not dominate
solution A.
Ahmed F. Gad 83
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution B
• After making sure that no solution
dominates A, then A is included in
the non-dominant set.
• The current non-dominant set is
P={A}.
• Let us move to the next solution.
Ahmed F. Gad 84
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution B
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 85
NSGA-II
Non-Dominated Sorting – Solution B
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• A is better than B across all
objectives because A`s cost (20$) is
better than B`s cost (60$) and also
A’s feedback (2.2) is better than B’s
feedback (4.4).
Ahmed F. Gad 86
NSGA-II
Non-Dominated Sorting – Solution B
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• A is better than B across all
objectives because A`s cost (20$) is
better than B`s cost (60$) and also
A’s feedback (2.2) is better than B’s
feedback (4.4).
• B is not a member of the non-
dominated set.
Solution A dominates solution
B.
Ahmed F. Gad 87
NSGA-II
Non-Dominated Sorting – Solution C
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 88
NSGA-II
Non-Dominated Sorting – Solution C
• A is better than C across all
objectives because A`s cost (20$) is
better than C`s cost (65$) and also
A`s feedback (2.2) is better than C`s
feedback (3.5).
Ahmed F. Gad 89
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution C
• A is better than C across all
objectives because A`s cost (20$) is
better than C`s cost (65$) and also
A`s feedback (2.2) is better than C`s
feedback (3.5).
• B is not a member of the non-
dominated set.
Solution A dominates solution
C.
Ahmed F. Gad 90
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution D
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 91
NSGA-II
Non-Dominated Sorting – Solution D
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• Working with D and comparing it
by all solutions, we found that
there is no solution dominating D.
As a result, we can stop and
conclude that D is a member of the
non-dominant set. The current
non-dominant set is P={A, D}. Let
us move to the next solution.
Ahmed F. Gad 92
NSGA-II
Non-Dominated Sorting – Solution E
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 93
NSGA-II
Non-Dominated Sorting – Solution E
• Comparing E by A, it is clear that A
is better than E across all
objectives. A`s cost (20$) is better
than E’s (55$) and A’s feedback
(2.2) is better than E’s feedback
(4.5). As a result, we can stop and
conclude that A dominates E and E
could not be a member of the
non-dominant set. Let us move to
the next solution.
Ahmed F. Gad 94
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution F
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 95
NSGA-II
Non-Dominated Sorting – Solution F
• Working with F and comparing it
by all solutions, we found that
there no solution dominates F. As a
result, we can stop and conclude
that F is a member of the non-
dominant set. The current non-
dominant set is P={A, D, F}. Let us
move to the next solution.
Ahmed F. Gad 96
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution G
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 97
NSGA-II
Non-Dominated Sorting – Solution G
• Comparing G by all solutions, it is
clear that solutions A, C, and F
dominate solution G. As a result,
we conclude that G is not be a
member of the non-dominant set.
Let us move to the final solution.
Ahmed F. Gad 98
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting – Solution H
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 99
NSGA-II
Non-Dominated Sorting – Solution H
• Comparing G by all solutions, it is
clear that solutions A and D
dominate solution G. As a result,
we conclude that H is not be a
member of the non-dominant set.
Ahmed F. Gad 100
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
NSGA-II
Non-Dominated Sorting
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• The final non-dominant set is:
P={A, D, F}
• This is the level 1 non-dominated
front.
• Such 3 solutions are better than the
other 5 solutions {B, C, E, G, H}.
What about the solutions not selected
in the current non-dominant set?
Apply non-dominant sorting over such
remaining solutions.
Ahmed F. Gad 101
NSGA-II
Non-Dominated Sorting
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• The final non-dominant set is:
P={A, D, F}
• This is the level 1 non-dominated
front.
• Such 3 solutions are better than the
other 5 solutions {B, C, E, G, H}.
What about the solutions not selected
in the current non-dominant set?
Apply non-dominant sorting over such
remaining solutions.
Ahmed F. Gad 102
NSGA-II
Non-Dominated Sorting – Level 2 Non-Dominated Front
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• The final non-dominant set is:
P={A, D, F}
• This is the level 1 non-dominated
front.
• Such 3 solutions are better than the
other 5 solutions {B, C, E, G, H}.
What about the solutions not selected
in the current non-dominant set?
Apply non-dominant sorting over such
remaining solutions.
Ahmed F. Gad 103
NSGA-II
Non-Dominated Sorting – Solution B
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• By checking the dominance of B
against all solutions and finding
that no solution dominates it, we
can conclude that B is included in
the non-dominated front at level 2.
The level 2 set is now P`={B}.
Ahmed F. Gad 104
NSGA-II
Non-Dominated Sorting – Solution C
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• After comparing C to all solutions
and finding that no solution
dominates it, we can conclude that
C is included in the non-dominated
front at level 2. The level 2 set is
now P`={B, C}.
Ahmed F. Gad 105
NSGA-II
Non-Dominated Sorting – Solution E
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• Because no solution dominates
solution E, E is included in the non-
dominated front at level 2. The
level 2 set is now P`={B, C, E}.
Ahmed F. Gad 106
NSGA-II
Non-Dominated Sorting – Solution G
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• By comparing G to all solutions,
solution C dominates it and thus G
can`t be included in the non-
dominated front at level 2.
Ahmed F. Gad 107
NSGA-II
Non-Dominated Sorting – Solution H
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• Because no solution dominates
solution H, it is included in the
non-dominated front at level 2.
The level 2 set is now P`={B, C, E,
H}.
Ahmed F. Gad 108
NSGA-II
Non-Dominated Sorting – Solution H
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
G 80 4.0
H 25 4.6
• Because no solution dominates
solution H, it is included in the
non-dominated front at level 2.
The level 2 set is now P`={B, C, E,
H}.
• This is the end of the non-
dominated front at level 2.
Ahmed F. Gad 109
NSGA-II
Non-Dominated Sorting – Second Domination Level.
• The final non-dominated front in
the 2nd level is:
P`={B, C, E, H}
• There is just one remaining
solution which is G.
• Working on the non-dominated
front at the 3rd level, G will be the
only solution inside it. Such level is
P``={G}.
ID Cost $ Feedback
A 60 4.4
C 65 3.5
F 55 4.5
G 80 4.0
H 25 4.6
Ahmed F. Gad 110
NSGA-II
Non-Dominated Sorting – All Levels.
Level Solutions
1 {A, D, F}
2 {B, C, E, H}
3 {G}
Ahmed F. Gad 111
• The used population size is 8. Half of the population is the parents.
• As a result, we have to select 4 parents.
• Selection starts from the level 1.
NSGA-II
Parents Selection
Ahmed F. Gad 112
• The used population size is 8. Half of the population is the parents.
• As a result, we have to select 4 parents.
• Selection starts from the level 1.
NSGA-II
Parents Selection
Level Solutions
1 {A, D, F}
2 {B, C, E, H}
3 {G}
Ahmed F. Gad 113
• The used population size is 8. Half of the population is the parents.
• As a result, we have to select 4 parents.
• Selection starts from the level 1.
• The three solutions in level 1 are selected {A, D, F}.
• Because 4 parents needed, 4th is selected from level 2.
• Level 2 have 4 solutions. Which one to select?
• Non-dominated sorting could not compare the same solutions within
the same level.
• Use crowding distance.
NSGA-II
Parents Selection
Level Solutions
1 {A, D, F}
2 {B, C, E, H}
3 {G}
Ahmed F. Gad 114
• Crowding distance is the metric used to prioritize solutions within the
same non-dominated front.
• It is used whenever we want to select subset of solutions within the
same level. There is no need for the crowding distance if all solutions
within the same level are selected.
• Before selecting a solution from the 2nd level, we have to calculate the
crowding distance for all solutions within such 2nd level.
NSGA-II
Crowding Distance
Ahmed F. Gad 115
Level Solutions
1 {A, D, F}
2 {B, C, E, H}
3 {G}
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
2nd level has solutions B, C, E, and H.
NSGA-II
Crowding Distance – Step 1
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
Ahmed F. Gad 116
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
2nd level has solutions A, C, F, and H.
We can just keep such solutions and remove others.
NSGA-II
Crowding Distance – Step 1
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
H 25 4.6
Ahmed F. Gad 117
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
2nd level has solutions A, C, F, and H.
We can just keep such solutions and remove others.
Then sort solutions in ascending order.
NSGA-II
Crowding Distance – Step 1
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
H 25 4.6
ID Cost $
A 20
H 25
C 45
F 50 Ahmed F. Gad 118
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
2nd level has solutions A, C, F, and H.
We can just keep such solutions and remove others.
Then sort solutions in ascending order.
NSGA-II
Crowding Distance – Step 1
ID Cost $ Feedback
B 60 4.4
C 65 3.5
E 55 4.5
H 25 4.6
ID Cost $
H 25
E 55
B 60
C 65
ID Feedback
C 3.5
B 4.4
E 4.5
H 4.6 119Ahmed F. Gad
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
For better handled, we can represent the solutions in a line.
NSGA-II
Crowding Distance – Step 1
Ahmed F. Gad 120
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
For better handled, we can represent the solutions in a line.
NSGA-II
Crowding Distance – Step 1
ID Cost $
H 25
E 55
B 60
C 65
H E B C
Cost $ 25 55 60 65
Ahmed F. Gad 121
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
For better handled, we can represent the solutions in a line.
NSGA-II
Crowding Distance – Step 1
C B E H
Feedback 3.5 4.4 4.5 4.6
ID Feedback
C 3.5
B 4.4
E 4.5
H 4.6
Ahmed F. Gad 122
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
Here are the 2nd level solutions sorted in a line.
NSGA-II
Crowding Distance – Step 1
C B E H
Feedback 3.5 4.4 4.5 4.6
H E B C
Cost $ 25 55 60 65
123Ahmed F. Gad
Step 1: Sort all solutions within the 2nd level in ascending order for each
objective function.
Here are the 2nd level solutions sorted in a line. Next is to calculate the
crowding distance for each solution according to each objective.
NSGA-II
Crowding Distance – Step 1
124Ahmed F. GadC B E H
Feedback 3.5 4.4 4.5 4.6
H E B C
Cost $ 25 55 60 65
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
NSGA-II
Crowding Distance – Step 2
125Ahmed F. GadC B E H
Feedback 3.5 4.4 4.5 4.6
H E B C
Cost $ 25 55 60 65
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
Let`s start by the cost objective.
NSGA-II
Crowding Distance – Step 2
126Ahmed F. GadC B E H
Feedback 3.5 4.4 4.5 4.6
H E B C
Cost $ 25 55 60 65
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
For the cost objective.
NSGA-II
Crowding Distance – Step 2
H E B C
C. Distance
Cost $ 25 55 60 65
127Ahmed F. GadC B E H
Feedback 3.5 4.4 4.5 4.6
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
For the cost objective.
NSGA-II
Crowding Distance – Step 2
128Ahmed F. Gad
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
C B E H
Feedback 3.5 4.4 4.5 4.6
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
For the feedback objective.
NSGA-II
Crowding Distance – Step 2
C B E H
C. Distance
Feedback 3.5 4.4 4.5 4.6
129Ahmed F. Gad
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
For the feedback objective.
NSGA-II
Crowding Distance – Step 2
130Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
Step 2: For the two solutions at outliers (i.e. right-most and left-most
solutions), set their crowding distance to infinity (∞).
Next is to calculate the crowding distance for the in-between
solutions.
NSGA-II
Crowding Distance – Step 2
131Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 3
132Ahmed F. Gad
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 2
133Ahmed F. Gad
𝒅 𝒎
𝒏
refers to crowding distance of solution n according to objective m.
𝑺 𝒎
𝒏
refers to the value of the objective m for solution n.
𝑶 𝒎
𝒎𝒂𝒙
refers to the maximum value for objective m.
𝑶 𝒎
𝒎𝒂𝒙 refers to the minimum value for objective m.
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 2
134Ahmed F. Gad
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
H E B C
n 1 2 3 4
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 2
135Ahmed F. Gad
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
H E B C
n 1 2 3 4
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 2
136Ahmed F. Gad
𝒅 𝒎
𝒏
refers to crowding distance of solution n according to objective m.
𝑺 𝒎
𝒏
refers to the value of the objective m for solution n.
𝑶 𝒎
𝒎𝒂𝒙
refers to the maximum value for objective m.
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Max
Cost 80
Feedback 5
Step 3: For the in-between solutions, the crowding distance is
calculated according to:
NSGA-II
Crowding Distance – Step 2
137Ahmed F. Gad
𝒅 𝒎
𝒏
refers to crowding distance of solution n according to objective m.
𝑺 𝒎
𝒏
refers to the value of the objective m for solution n.
𝑶 𝒎
𝒎𝒂𝒙
refers to the maximum value for objective m.
𝑶 𝒎
𝒎𝒂𝒙 refers to the minimum value for objective m.
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Max
Cost 80
Feedback 5
Min
Cost 0
Feedback 0
Step 3: Let`s calculate the crowding distance for solution E according to
the cost objective.
NSGA-II
Crowding Distance – Step 3
138Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
139Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
140Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
141Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
142Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
143Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
144Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
145Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
146Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
147Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
148Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
149Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏 25
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
150Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏 25
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
85
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏 0
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
151Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ ∞
Cost $ 25 55 60 65
𝒅 𝟏
𝟐
=
𝟔𝟎 − 𝟐𝟓
𝟖𝟓 − 𝟎
=
𝟑𝟓
𝟖𝟓
= 𝟎. 𝟒
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏 25
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
85
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏 0
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution E (n=2)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
152Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 ∞
Cost $ 25 55 60 65
𝒅 𝟏
𝟐
=
𝟔𝟎 − 𝟐𝟓
𝟖𝟓 − 𝟎
=
𝟑𝟓
𝟖𝟓
= 𝟎. 𝟒
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟑 60
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟏 25
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
85
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏 0
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution B (n=3)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
153Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Let`s calculate the crowding distance for solution B (n=3)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
154Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟒 65
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟐 55
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
85
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏 0
Step 3: Let`s calculate the crowding distance for solution B (n=3)
according to the cost objective (m=1).
NSGA-II
Crowding Distance – Step 3
155Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
𝑺 𝒎
𝒏+𝟏
𝑺 𝟏
𝟒 65
𝑺 𝒎
𝒏−𝟏
𝑺 𝟏
𝟐 55
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟏
𝒎𝒂𝒙
85
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟏
𝒎𝒊𝒏 0
𝒅 𝟏
𝟑
=
𝟔𝟓 − 𝟓𝟓
𝟖𝟓 − 𝟎
=
𝟏𝟎
𝟖𝟓
= 𝟎. 𝟏
Step 3: Crowding distance for solution B (n=2) according to the
feedback objective (m=2).
NSGA-II
Crowding Distance – Step 3
156Ahmed F. GadC B E H
C. Distance ∞ ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
Step 3: Crowding distance for solution B (n=2) according to the
feedback objective (m=2).
NSGA-II
Crowding Distance – Step 3
157Ahmed F. GadC B E H
C. Distance ∞ 0.2 ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
𝑺 𝒎
𝒏+𝟏
𝑺 𝟐
𝟑 4.5
𝑺 𝒎
𝒏−𝟏
𝑺 𝟐
𝟏 3.5
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟐
𝒎𝒂𝒙
5
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟐
𝒎𝒊𝒏 0
𝒅 𝟐
𝟐
=
𝟒. 𝟓 − 𝟑. 𝟓
𝟓 − 𝟎
=
𝟏. 𝟎
𝟓
= 𝟎. 𝟐
Step 3: Crowding distance for solution E (n=3) according to the
feedback objective (m=2).
NSGA-II
Crowding Distance – Step 3
158Ahmed F. GadC B E H
C. Distance ∞ 0.2 0.04 ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
𝒅 𝒎
𝒏 =
𝑺 𝒎
𝒏+𝟏
− 𝑺 𝒎
𝒏−𝟏
𝑶 𝒎
𝒎𝒂𝒙
− 𝑶 𝒎
𝒎𝒊𝒏
𝑺 𝒎
𝒏+𝟏
𝑺 𝟐
𝟒 4.6
𝑺 𝒎
𝒏−𝟏
𝑺 𝟐
𝟐 4.4
𝑶 𝒎
𝒎𝒂𝒙 𝑶 𝟐
𝒎𝒂𝒙
5
𝑶 𝒎
𝒎𝒊𝒏
𝑶 𝟐
𝒎𝒊𝒏 0
𝒅 𝟐
𝟑
=
𝟒. 𝟔 − 𝟒. 𝟒
𝟓 − 𝟎
=
𝟎. 𝟐
𝟓
= 𝟎. 𝟎𝟒
Step 3: For the in-between solutions, their crowding distance is the
difference between the objective values of the two solutions to its right
and left.
NSGA-II
Crowding Distance – Step 3
159Ahmed F. GadC B E H
C. Distance ∞ 0.2 0.04 ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
We could get them back to the tabular form again.
NSGA-II
Crowding Distance – Step 3
ID
C. Distance
Cost $
C. Distance
Feedback
B 0.1 0.2
C ∞ ∞
E 0.4 0.04
H ∞ ∞
160Ahmed F. GadC B E H
C. Distance ∞ 0.2 0.04 ∞
Feedback 3.5 4.4 4.5 4.6
H E B C
C. Distance ∞ 0.4 0.1 ∞
Cost $ 25 55 60 65
Step 4: Take the summation of the calculated crowding distances for all
objectives.
NSGA-II
Crowding Distance – Step 4
ID
C. Distance
Cost $
C. Distance
Feedback
B 0.1 0.2
C ∞ ∞
E 0.4 0.04
H ∞ ∞
Ahmed F. Gad 161
Step 4: Take the summation of the calculated crowding distances for all
objectives.
NSGA-II
Crowding Distance – Step 4
ID
C. Distance
Cost $
C. Distance
Feedback
Summation
B 0.1 0.2 0.1+0.2
C ∞ ∞ ∞+∞
E 0.4 0.04 0.4+0.04
H ∞ ∞ ∞+∞
Ahmed F. Gad 162
Step 4: Take the summation of the calculated crowding distances for all
objectives.
NSGA-II
Crowding Distance – Step 4
ID
C. Distance
Cost $
C. Distance
Feedback
Summation
B 0.1 0.2 0.3
C ∞ ∞ ∞
E 0.4 0.04 0.44
H ∞ ∞ ∞
Ahmed F. Gad 163
Step 5: Sort them in descending order according to summation of
crowding distance and select the solutions from highest to lowest
crowding distance.
NSGA-II
Crowding Distance – Step 5
ID Summation
B 0.3
C ∞
E 0.44
H ∞
Ahmed F. Gad 164
ID Summation
C ∞
H ∞
E 0.44
B 0.3
Sort
Step 5: Sort them in descending order according to summation of
crowding distance and select the solutions from highest to lowest
crowding distance.
The selected solution from 2nd level as parent is solution C.
NSGA-II
Crowding Distance – Step 5
ID Summation
C ∞
H ∞
E 0.44
B 0.3
Ahmed F. Gad 165
Step 5: Sort them in descending order according to summation of
crowding distance and select the solutions from highest to lowest
crowding distance.
The selected solution from 2nd level as parent is solution C.
The set of selected parents is {A, D, F, C}.
NSGA-II
Crowding Distance – Step 5
ID Summation
C ∞
H ∞
E 0.44
B 0.3
Ahmed F. Gad 166
• The set of selected parents using non-dominated sorting and
crowding distance are applied to tournament selection.
• Tournament takes place between each pair of solutions and the
winner is selected for producing the offspring.
• Based on the set of solutions {A, D, F, C}, the possible pairs of
solutions are (A, D), (A, F), (A, C), (D, C), and (F, C).
• Tournament selection takes place between such pairs.
NSGA-II
Tournament Selection
Ahmed F. Gad 167
• Here are the steps of the tournament selection:
1. If the two solutions are from different non-domination levels, then
the solution coming from the high-priority level will be the winner.
2. If the two solutions are from the same non-domination level, then
the winner will be the one corresponding to higher crowding
distance.
NSGA-II
Tournament Selection – Steps
Ahmed F. Gad 168
• Here are the steps of the tournament selection:
1. If the two solutions are from different non-domination levels, then
the solution coming from the high-priority level will be the winner.
2. If the two solutions are from the same non-domination level, then
the winner will be the one corresponding to higher crowding
distance.
• Let`s apply tournament selection on each pair.
NSGA-II
Tournament Selection – Steps
Ahmed F. Gad 169
• For the first pair (A, D), because both A and D come from the same 1st
level, then crowding distance for solutions within the 1st level will be
calculated to compare the solutions A and D.
NSGA-II
Tournament Selection – (B, D)
Ahmed F. Gad 170
• For the first pair (A, D), because both A and D come from the same 1st
level, then crowding distance for solutions within the 1st level will be
calculated to compare the solutions A and D.
NSGA-II
Tournament Selection – (A, D)
D A F
C. Distance ∞ 0.4 ∞
Cost $ 15 20 50
F A F
C. Distance ∞ 0.52 ∞
Feedback 1.8 2.2 4.4
171Ahmed F. Gad
ID Cost $ Feedback
A 20 2.2
B 60 4.4
C 65 3.5
D 15 4.4
E 55 4.5
F 50 1.8
G 80 4.0
H 25 4.6
• For the first pair (A, D), because both A and D come from the same 1st
level, then crowding distance for solutions within the 1st level will be
calculated to compare the solutions A and D.
NSGA-II
Tournament Selection – (A, D)
ID
C. Distance
Cost $
C. Distance
Feedback
Summation
A 0.4 0.52 0.92
D ∞ ∞ ∞
F ∞ ∞ ∞
172Ahmed F. Gad
D A F
C. Distance ∞ 0.4 ∞
Cost $ 15 20 50
F A D
C. Distance ∞ 0.52 ∞
Feedback 1.8 2.2 4.4
• For the first pair (A, D), because both A and D come from the same 1st
level, then crowding distance for solutions within the 1st level will be
calculated to compare the solutions A and D.
NSGA-II
Tournament Selection – (A, D)
ID Summation
D ∞
F ∞
A 0.92
Ahmed F. Gad 173
• For the first pair (A, D), because both A and D come from the same 1st
level, then crowding distance for solutions within the 1st level will be
calculated to compare the solutions A and D.
• Crowding distance of D is higher than A. Thus D is the winner.
NSGA-II
Tournament Selection – (A, D)
ID Summation
D ∞
F ∞
A 0.92
Ahmed F. Gad 174
• For (A, F), based on the previously calculated crowding distance for
the 1st level, F is the winner.
• For (A, C), because A comes from a high priority level than C, then A
is the winner.
• For (D, C), because D comes from a high priority level than C, then D
is the winner.
• For (F, C), because F comes from a high priority level than C, then F is
the winner.
NSGA-II
Tournament Selection – All Other Pairs
Ahmed F. Gad 175
• For (A, F), based on the previously calculated crowding distance for
the 1st level, F is the winner.
• For (A, C), because A comes from a high priority level than C, then A
is the winner.
• For (D, C), because D comes from a high priority level than C, then D
is the winner.
• For (F, C), because F comes from a high priority level than C, then F is
the winner.
Unique winners (A, D, F) will be subject to crossover and mutation for
producing the offspring.
NSGA-II
Tournament Selection – All Other Pairs
Ahmed F. Gad 176
• The offspring will be produced by mating the following pairs (A, D),
(A, F), (D, F) and (F, A) where the first gene will be taken from the first
parent in the pair and the second gene will be taken from the second
parent in the pair.
NSGA-II
Crossover
Ahmed F. Gad 177
• The offspring will be produced by mating the following pairs (A, D),
(A, F), (D, F) and (F, A) where the first gene will be taken from the first
parent in the pair and the second gene will be taken from the second
parent in the pair.
NSGA-II
Crossover
ID Cost $ Feedback
A 20 2.2
D 15 4.4
F 50 1.8
Selected Solutions
Ahmed F. Gad 178
• The offspring will be produced by mating the following pairs (A, D),
(A, F), (D, F) and (F, A) where the first gene will be taken from the first
parent in the pair and the second gene will be taken from the second
parent in the pair.
NSGA-II
Crossover
ID Cost $ Feedback
A 20 2.2
D 15 4.4
F 50 1.8
Offspring Cost $ Feedback
(A, D) 20 4.4
(A, F) 20 1.8
(D, F) 15 1.8
(F, A) 50 2.2
Selected Solutions
Crossover Output
Ahmed F. Gad 179
• Finally, mutation is applied to the results of crossover.
NSGA-II
Mutation
Offspring Cost $ Feedback
(A, D) 20 4.4
(A, F) 20 1.8
(D, F) 15 1.8
(F, A) 50 2.2
Crossover Output
Ahmed F. Gad 180
• Finally, mutation is applied to the results of crossover.
• Assume we applied mutation by randomly adding a number between
-10 and 10 to the first half of each solution.
NSGA-II
Mutation
Offspring Cost $ Feedback
(B, D) 20 4.4
(B, E) 20 1.8
(D, E) 15 1.8
(E, D) 50 2.2
Offspring Cost $ Feedback
(B, D) 27 4.4
(B, E) 25 1.8
(D, E) 10 1.8
(E, D) 45 2.2
Crossover Output Mutation Output
Ahmed F. Gad 181
• Finally, mutation is applied to the results of crossover.
• Assume we applied mutation by randomly adding a number between
-10 and 10 to the first half of each solution.
• The new solutions are given IDs {K, L, M, N}.
NSGA-II
Mutation
Offspring Cost $ Feedback
(B, D) 20 4.4
(B, E) 20 1.8
(D, E) 15 1.8
(E, D) 50 2.2
ID Offspring Cost $ Feedback
K (B, D) 27 4.4
L (B, E) 25 1.8
M (D, E) 10 1.8
N (E, D) 45 2.2
Crossover Output Mutation Output
Ahmed F. Gad 182
• The first half of solutions of the new population comes from the
selected parents after applying non-dominated sorting and crowding
distance. They are solutions {A, D, F, C}.
• The second half is the offspring {K, L, M, N}.
NSGA-II
New Population
ID Cost $ Feedback
A 20 2.2
D 15 4.4
F 50 1.8
C 65 3.5
K 27 4.4
L 25 1.8
M 10 1.8
N 45 2.2
Ahmed F. Gad 183
• The first half of solutions of the new population comes from the
selected parents after applying non-dominated sorting and crowding
distance. They are solutions {A, D, F, C}.
• The second half is the offspring {K, L, M, N}.
NSGA-II
New Population
ID Cost $ Feedback
A 20 2.2
D 15 4.4
F 50 1.8
C 65 3.5
K 27 4.4
L 25 1.8
M 10 1.8
N 45 2.2
Ahmed F. Gad 184
Repeat the steps again
for the new
population.
For More Info.
Kalyanmoy, Deb. Multi-objective optimization using
evolutionary algorithms. John Wiley and Sons, 2001.
Ahmed F. Gad 185

Más contenido relacionado

La actualidad más candente

Ant colony optimization
Ant colony optimizationAnt colony optimization
Ant colony optimizationJoy Dutta
 
Artificial Bee Colony algorithm
Artificial Bee Colony algorithmArtificial Bee Colony algorithm
Artificial Bee Colony algorithmAhmed Fouad Ali
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated AnnealingJoy Dutta
 
Global optimization
Global optimizationGlobal optimization
Global optimizationbpenalver
 
Multiobjective presentation
Multiobjective presentationMultiobjective presentation
Multiobjective presentationMohammed Kamil
 
Expectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture ModelsExpectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture Modelspetitegeek
 
Knapsack problem using dynamic programming
Knapsack problem using dynamic programmingKnapsack problem using dynamic programming
Knapsack problem using dynamic programmingkhush_boo31
 
An overview of gradient descent optimization algorithms
An overview of gradient descent optimization algorithms An overview of gradient descent optimization algorithms
An overview of gradient descent optimization algorithms Hakky St
 
Lecture 18: Gaussian Mixture Models and Expectation Maximization
Lecture 18: Gaussian Mixture Models and Expectation MaximizationLecture 18: Gaussian Mixture Models and Expectation Maximization
Lecture 18: Gaussian Mixture Models and Expectation Maximizationbutest
 
Lecture 13 Criptarithmetic problem
Lecture 13 Criptarithmetic problemLecture 13 Criptarithmetic problem
Lecture 13 Criptarithmetic problemHema Kashyap
 
Neural Networks
Neural NetworksNeural Networks
Neural NetworksAdri Jovin
 
Optimization/Gradient Descent
Optimization/Gradient DescentOptimization/Gradient Descent
Optimization/Gradient Descentkandelin
 
Genetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial IntelligenceGenetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial IntelligenceSahil Kumar
 
Particle Swarm Optimization - PSO
Particle Swarm Optimization - PSOParticle Swarm Optimization - PSO
Particle Swarm Optimization - PSOMohamed Talaat
 

La actualidad más candente (20)

Ant colony optimization
Ant colony optimizationAnt colony optimization
Ant colony optimization
 
Dynamic programming
Dynamic programmingDynamic programming
Dynamic programming
 
Artificial Bee Colony algorithm
Artificial Bee Colony algorithmArtificial Bee Colony algorithm
Artificial Bee Colony algorithm
 
Simulated Annealing
Simulated AnnealingSimulated Annealing
Simulated Annealing
 
Global optimization
Global optimizationGlobal optimization
Global optimization
 
Multiobjective presentation
Multiobjective presentationMultiobjective presentation
Multiobjective presentation
 
Xgboost
XgboostXgboost
Xgboost
 
Genetic algorithm
Genetic algorithmGenetic algorithm
Genetic algorithm
 
Introduction to optimization Problems
Introduction to optimization ProblemsIntroduction to optimization Problems
Introduction to optimization Problems
 
PSO
PSOPSO
PSO
 
Expectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture ModelsExpectation Maximization and Gaussian Mixture Models
Expectation Maximization and Gaussian Mixture Models
 
Knapsack problem using dynamic programming
Knapsack problem using dynamic programmingKnapsack problem using dynamic programming
Knapsack problem using dynamic programming
 
An overview of gradient descent optimization algorithms
An overview of gradient descent optimization algorithms An overview of gradient descent optimization algorithms
An overview of gradient descent optimization algorithms
 
Lecture 18: Gaussian Mixture Models and Expectation Maximization
Lecture 18: Gaussian Mixture Models and Expectation MaximizationLecture 18: Gaussian Mixture Models and Expectation Maximization
Lecture 18: Gaussian Mixture Models and Expectation Maximization
 
Lecture 13 Criptarithmetic problem
Lecture 13 Criptarithmetic problemLecture 13 Criptarithmetic problem
Lecture 13 Criptarithmetic problem
 
Neural Networks
Neural NetworksNeural Networks
Neural Networks
 
Support Vector Machine
Support Vector MachineSupport Vector Machine
Support Vector Machine
 
Optimization/Gradient Descent
Optimization/Gradient DescentOptimization/Gradient Descent
Optimization/Gradient Descent
 
Genetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial IntelligenceGenetic Algorithms - Artificial Intelligence
Genetic Algorithms - Artificial Intelligence
 
Particle Swarm Optimization - PSO
Particle Swarm Optimization - PSOParticle Swarm Optimization - PSO
Particle Swarm Optimization - PSO
 

Similar a Multi-Objective Optimization using Non-Dominated Sorting Genetic Algorithm with Numerical Example Step-by-Step

PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...
PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...
PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...Clean Digital
 
OR-I_Lecture_Note_01.pptx
OR-I_Lecture_Note_01.pptxOR-I_Lecture_Note_01.pptx
OR-I_Lecture_Note_01.pptxssuserf19f3e
 
Webinar: Prioritising with cost of delay
Webinar: Prioritising with cost of delayWebinar: Prioritising with cost of delay
Webinar: Prioritising with cost of delayNiels Verdonk
 
QT Slides Class One
QT Slides Class OneQT Slides Class One
QT Slides Class Onevinay1878
 
FIN 515 NERD Education Planning--fin515nerd.com
FIN 515 NERD Education Planning--fin515nerd.comFIN 515 NERD Education Planning--fin515nerd.com
FIN 515 NERD Education Planning--fin515nerd.comcampfort18
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanRoberto Bettazzoni
 
IBM - Decision Optimization
IBM - Decision OptimizationIBM - Decision Optimization
IBM - Decision OptimizationGerhard Wenzel
 
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...Mike Caspar
 
Module 12: Job Classification & Merit Increase System
Module 12: Job Classification & Merit Increase SystemModule 12: Job Classification & Merit Increase System
Module 12: Job Classification & Merit Increase SystemSam Pratt
 
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samiti
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samitiBst ppt akhil bhartiya vidya sansthan samarth shiksha samiti
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samitisonia Sharma
 
Decision optimization how to carry projects
Decision optimization how to carry projectsDecision optimization how to carry projects
Decision optimization how to carry projectsssuser0bebd2
 
Ar1 twf030 lecture3.1: Design Optimization
Ar1 twf030 lecture3.1: Design OptimizationAr1 twf030 lecture3.1: Design Optimization
Ar1 twf030 lecture3.1: Design OptimizationPirouz Nourian
 
The Disciplined Approach to Change
The Disciplined Approach to ChangeThe Disciplined Approach to Change
The Disciplined Approach to ChangeFelice Pescatore
 
Supercharge Your Testing Program
Supercharge Your Testing ProgramSupercharge Your Testing Program
Supercharge Your Testing ProgramOptimizely
 
eBay Partner Network & Optimizely: Optimization Best Practices
eBay Partner Network & Optimizely: Optimization Best PracticeseBay Partner Network & Optimizely: Optimization Best Practices
eBay Partner Network & Optimizely: Optimization Best PracticesSejal Patel
 
Linear programming
Linear programmingLinear programming
Linear programmingpolast
 
Practical Guidelines for Solving Difficult Mixed Integer Programs
Practical Guidelines for Solving Difficult  Mixed Integer ProgramsPractical Guidelines for Solving Difficult  Mixed Integer Programs
Practical Guidelines for Solving Difficult Mixed Integer ProgramsIBM Decision Optimization
 
Lpp through graphical analysis
Lpp through graphical analysis Lpp through graphical analysis
Lpp through graphical analysis YuktaBansal1
 

Similar a Multi-Objective Optimization using Non-Dominated Sorting Genetic Algorithm with Numerical Example Step-by-Step (20)

PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...
PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...
PPC Masters 2016 - Query Power - Breaking Down Search Queries to Improve our ...
 
OR-I_Lecture_Note_01.pptx
OR-I_Lecture_Note_01.pptxOR-I_Lecture_Note_01.pptx
OR-I_Lecture_Note_01.pptx
 
Webinar: Prioritising with cost of delay
Webinar: Prioritising with cost of delayWebinar: Prioritising with cost of delay
Webinar: Prioritising with cost of delay
 
Lessonslearnedeuro
LessonslearnedeuroLessonslearnedeuro
Lessonslearnedeuro
 
QT Slides Class One
QT Slides Class OneQT Slides Class One
QT Slides Class One
 
FIN 515 NERD Education Planning--fin515nerd.com
FIN 515 NERD Education Planning--fin515nerd.comFIN 515 NERD Education Planning--fin515nerd.com
FIN 515 NERD Education Planning--fin515nerd.com
 
Useful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and KanbanUseful Lean Tools: Value Stream Mapping and Kanban
Useful Lean Tools: Value Stream Mapping and Kanban
 
IBM - Decision Optimization
IBM - Decision OptimizationIBM - Decision Optimization
IBM - Decision Optimization
 
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...
Portfolio prioritization with lean canvas and value game for PMI Buffalo NY C...
 
Module 12: Job Classification & Merit Increase System
Module 12: Job Classification & Merit Increase SystemModule 12: Job Classification & Merit Increase System
Module 12: Job Classification & Merit Increase System
 
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samiti
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samitiBst ppt akhil bhartiya vidya sansthan samarth shiksha samiti
Bst ppt akhil bhartiya vidya sansthan samarth shiksha samiti
 
Decision optimization how to carry projects
Decision optimization how to carry projectsDecision optimization how to carry projects
Decision optimization how to carry projects
 
Ar1 twf030 lecture3.1: Design Optimization
Ar1 twf030 lecture3.1: Design OptimizationAr1 twf030 lecture3.1: Design Optimization
Ar1 twf030 lecture3.1: Design Optimization
 
The Disciplined Approach to Change
The Disciplined Approach to ChangeThe Disciplined Approach to Change
The Disciplined Approach to Change
 
Introduction To Six Sigma
Introduction To  Six  SigmaIntroduction To  Six  Sigma
Introduction To Six Sigma
 
Supercharge Your Testing Program
Supercharge Your Testing ProgramSupercharge Your Testing Program
Supercharge Your Testing Program
 
eBay Partner Network & Optimizely: Optimization Best Practices
eBay Partner Network & Optimizely: Optimization Best PracticeseBay Partner Network & Optimizely: Optimization Best Practices
eBay Partner Network & Optimizely: Optimization Best Practices
 
Linear programming
Linear programmingLinear programming
Linear programming
 
Practical Guidelines for Solving Difficult Mixed Integer Programs
Practical Guidelines for Solving Difficult  Mixed Integer ProgramsPractical Guidelines for Solving Difficult  Mixed Integer Programs
Practical Guidelines for Solving Difficult Mixed Integer Programs
 
Lpp through graphical analysis
Lpp through graphical analysis Lpp through graphical analysis
Lpp through graphical analysis
 

Más de Ahmed Gad

ICEIT'20 Cython for Speeding-up Genetic Algorithm
ICEIT'20 Cython for Speeding-up Genetic AlgorithmICEIT'20 Cython for Speeding-up Genetic Algorithm
ICEIT'20 Cython for Speeding-up Genetic AlgorithmAhmed Gad
 
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...Ahmed Gad
 
Python for Computer Vision - Revision 2nd Edition
Python for Computer Vision - Revision 2nd EditionPython for Computer Vision - Revision 2nd Edition
Python for Computer Vision - Revision 2nd EditionAhmed Gad
 
M.Sc. Thesis - Automatic People Counting in Crowded Scenes
M.Sc. Thesis - Automatic People Counting in Crowded ScenesM.Sc. Thesis - Automatic People Counting in Crowded Scenes
M.Sc. Thesis - Automatic People Counting in Crowded ScenesAhmed Gad
 
Derivation of Convolutional Neural Network from Fully Connected Network Step-...
Derivation of Convolutional Neural Network from Fully Connected Network Step-...Derivation of Convolutional Neural Network from Fully Connected Network Step-...
Derivation of Convolutional Neural Network from Fully Connected Network Step-...Ahmed Gad
 
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...Ahmed Gad
 
Avoid Overfitting with Regularization
Avoid Overfitting with RegularizationAvoid Overfitting with Regularization
Avoid Overfitting with RegularizationAhmed Gad
 
Genetic Algorithm (GA) Optimization - Step-by-Step Example
Genetic Algorithm (GA) Optimization - Step-by-Step ExampleGenetic Algorithm (GA) Optimization - Step-by-Step Example
Genetic Algorithm (GA) Optimization - Step-by-Step ExampleAhmed Gad
 
ICCES 2017 - Crowd Density Estimation Method using Regression Analysis
ICCES 2017 - Crowd Density Estimation Method using Regression AnalysisICCES 2017 - Crowd Density Estimation Method using Regression Analysis
ICCES 2017 - Crowd Density Estimation Method using Regression AnalysisAhmed Gad
 
Backpropagation: Understanding How to Update ANNs Weights Step-by-Step
Backpropagation: Understanding How to Update ANNs Weights Step-by-StepBackpropagation: Understanding How to Update ANNs Weights Step-by-Step
Backpropagation: Understanding How to Update ANNs Weights Step-by-StepAhmed Gad
 
Computer Vision: Correlation, Convolution, and Gradient
Computer Vision: Correlation, Convolution, and GradientComputer Vision: Correlation, Convolution, and Gradient
Computer Vision: Correlation, Convolution, and GradientAhmed Gad
 
Python for Computer Vision - Revision
Python for Computer Vision - RevisionPython for Computer Vision - Revision
Python for Computer Vision - RevisionAhmed Gad
 
Anime Studio Pro 10 Tutorial as Part of Multimedia Course
Anime Studio Pro 10 Tutorial as Part of Multimedia CourseAnime Studio Pro 10 Tutorial as Part of Multimedia Course
Anime Studio Pro 10 Tutorial as Part of Multimedia CourseAhmed Gad
 
Brief Introduction to Deep Learning + Solving XOR using ANNs
Brief Introduction to Deep Learning + Solving XOR using ANNsBrief Introduction to Deep Learning + Solving XOR using ANNs
Brief Introduction to Deep Learning + Solving XOR using ANNsAhmed Gad
 
Operations in Digital Image Processing + Convolution by Example
Operations in Digital Image Processing + Convolution by ExampleOperations in Digital Image Processing + Convolution by Example
Operations in Digital Image Processing + Convolution by ExampleAhmed Gad
 
MATLAB Code + Description : Real-Time Object Motion Detection and Tracking
MATLAB Code + Description : Real-Time Object Motion Detection and TrackingMATLAB Code + Description : Real-Time Object Motion Detection and Tracking
MATLAB Code + Description : Real-Time Object Motion Detection and TrackingAhmed Gad
 
MATLAB Code + Description : Very Simple Automatic English Optical Character R...
MATLAB Code + Description : Very Simple Automatic English Optical Character R...MATLAB Code + Description : Very Simple Automatic English Optical Character R...
MATLAB Code + Description : Very Simple Automatic English Optical Character R...Ahmed Gad
 
Graduation Project - Face Login : A Robust Face Identification System for Sec...
Graduation Project - Face Login : A Robust Face Identification System for Sec...Graduation Project - Face Login : A Robust Face Identification System for Sec...
Graduation Project - Face Login : A Robust Face Identification System for Sec...Ahmed Gad
 
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...Ahmed Gad
 
Introduction to Digital Signal Processing (DSP) - Course Notes
Introduction to Digital Signal Processing (DSP) - Course NotesIntroduction to Digital Signal Processing (DSP) - Course Notes
Introduction to Digital Signal Processing (DSP) - Course NotesAhmed Gad
 

Más de Ahmed Gad (20)

ICEIT'20 Cython for Speeding-up Genetic Algorithm
ICEIT'20 Cython for Speeding-up Genetic AlgorithmICEIT'20 Cython for Speeding-up Genetic Algorithm
ICEIT'20 Cython for Speeding-up Genetic Algorithm
 
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...
NumPyCNNAndroid: A Library for Straightforward Implementation of Convolutiona...
 
Python for Computer Vision - Revision 2nd Edition
Python for Computer Vision - Revision 2nd EditionPython for Computer Vision - Revision 2nd Edition
Python for Computer Vision - Revision 2nd Edition
 
M.Sc. Thesis - Automatic People Counting in Crowded Scenes
M.Sc. Thesis - Automatic People Counting in Crowded ScenesM.Sc. Thesis - Automatic People Counting in Crowded Scenes
M.Sc. Thesis - Automatic People Counting in Crowded Scenes
 
Derivation of Convolutional Neural Network from Fully Connected Network Step-...
Derivation of Convolutional Neural Network from Fully Connected Network Step-...Derivation of Convolutional Neural Network from Fully Connected Network Step-...
Derivation of Convolutional Neural Network from Fully Connected Network Step-...
 
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...
Derivation of Convolutional Neural Network (ConvNet) from Fully Connected Net...
 
Avoid Overfitting with Regularization
Avoid Overfitting with RegularizationAvoid Overfitting with Regularization
Avoid Overfitting with Regularization
 
Genetic Algorithm (GA) Optimization - Step-by-Step Example
Genetic Algorithm (GA) Optimization - Step-by-Step ExampleGenetic Algorithm (GA) Optimization - Step-by-Step Example
Genetic Algorithm (GA) Optimization - Step-by-Step Example
 
ICCES 2017 - Crowd Density Estimation Method using Regression Analysis
ICCES 2017 - Crowd Density Estimation Method using Regression AnalysisICCES 2017 - Crowd Density Estimation Method using Regression Analysis
ICCES 2017 - Crowd Density Estimation Method using Regression Analysis
 
Backpropagation: Understanding How to Update ANNs Weights Step-by-Step
Backpropagation: Understanding How to Update ANNs Weights Step-by-StepBackpropagation: Understanding How to Update ANNs Weights Step-by-Step
Backpropagation: Understanding How to Update ANNs Weights Step-by-Step
 
Computer Vision: Correlation, Convolution, and Gradient
Computer Vision: Correlation, Convolution, and GradientComputer Vision: Correlation, Convolution, and Gradient
Computer Vision: Correlation, Convolution, and Gradient
 
Python for Computer Vision - Revision
Python for Computer Vision - RevisionPython for Computer Vision - Revision
Python for Computer Vision - Revision
 
Anime Studio Pro 10 Tutorial as Part of Multimedia Course
Anime Studio Pro 10 Tutorial as Part of Multimedia CourseAnime Studio Pro 10 Tutorial as Part of Multimedia Course
Anime Studio Pro 10 Tutorial as Part of Multimedia Course
 
Brief Introduction to Deep Learning + Solving XOR using ANNs
Brief Introduction to Deep Learning + Solving XOR using ANNsBrief Introduction to Deep Learning + Solving XOR using ANNs
Brief Introduction to Deep Learning + Solving XOR using ANNs
 
Operations in Digital Image Processing + Convolution by Example
Operations in Digital Image Processing + Convolution by ExampleOperations in Digital Image Processing + Convolution by Example
Operations in Digital Image Processing + Convolution by Example
 
MATLAB Code + Description : Real-Time Object Motion Detection and Tracking
MATLAB Code + Description : Real-Time Object Motion Detection and TrackingMATLAB Code + Description : Real-Time Object Motion Detection and Tracking
MATLAB Code + Description : Real-Time Object Motion Detection and Tracking
 
MATLAB Code + Description : Very Simple Automatic English Optical Character R...
MATLAB Code + Description : Very Simple Automatic English Optical Character R...MATLAB Code + Description : Very Simple Automatic English Optical Character R...
MATLAB Code + Description : Very Simple Automatic English Optical Character R...
 
Graduation Project - Face Login : A Robust Face Identification System for Sec...
Graduation Project - Face Login : A Robust Face Identification System for Sec...Graduation Project - Face Login : A Robust Face Identification System for Sec...
Graduation Project - Face Login : A Robust Face Identification System for Sec...
 
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...
Introduction to MATrices LABoratory (MATLAB) as Part of Digital Signal Proces...
 
Introduction to Digital Signal Processing (DSP) - Course Notes
Introduction to Digital Signal Processing (DSP) - Course NotesIntroduction to Digital Signal Processing (DSP) - Course Notes
Introduction to Digital Signal Processing (DSP) - Course Notes
 

Último

04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationshipsccctableauusergroup
 
Ukraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSUkraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSAishani27
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxolyaivanovalion
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptxthyngster
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxolyaivanovalion
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusTimothy Spann
 
Call Girls In Mahipalpur O9654467111 Escorts Service
Call Girls In Mahipalpur O9654467111  Escorts ServiceCall Girls In Mahipalpur O9654467111  Escorts Service
Call Girls In Mahipalpur O9654467111 Escorts ServiceSapana Sha
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystSamantha Rae Coolbeth
 
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfLars Albertsson
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Ravak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptxRavak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptxolyaivanovalion
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998YohFuh
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfLars Albertsson
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxolyaivanovalion
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubaihf8803863
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Callshivangimorya083
 

Último (20)

04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships04242024_CCC TUG_Joins and Relationships
04242024_CCC TUG_Joins and Relationships
 
Ukraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSUkraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICS
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFx
 
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
꧁❤ Aerocity Call Girls Service Aerocity Delhi ❤꧂ 9999965857 ☎️ Hard And Sexy ...
 
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptxEMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM  TRACKING WITH GOOGLE ANALYTICS.pptx
EMERCE - 2024 - AMSTERDAM - CROSS-PLATFORM TRACKING WITH GOOGLE ANALYTICS.pptx
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptx
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
 
Call Girls In Mahipalpur O9654467111 Escorts Service
Call Girls In Mahipalpur O9654467111  Escorts ServiceCall Girls In Mahipalpur O9654467111  Escorts Service
Call Girls In Mahipalpur O9654467111 Escorts Service
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data Analyst
 
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
(PARI) Call Girls Wanowrie ( 7001035870 ) HI-Fi Pune Escorts Service
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdf
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Ravak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptxRavak dropshipping via API with DroFx.pptx
Ravak dropshipping via API with DroFx.pptx
 
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
VIP Call Girls Service Charbagh { Lucknow Call Girls Service 9548273370 } Boo...
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998
 
Schema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdfSchema on read is obsolete. Welcome metaprogramming..pdf
Schema on read is obsolete. Welcome metaprogramming..pdf
 
CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls DubaiDubai Call Girls Wifey O52&786472 Call Girls Dubai
Dubai Call Girls Wifey O52&786472 Call Girls Dubai
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
 

Multi-Objective Optimization using Non-Dominated Sorting Genetic Algorithm with Numerical Example Step-by-Step

  • 1. Non-Dominated Sorting Genetic Algorithm with Numerical Example Step-by-Step Ahmed Fawzy Gad ahmed.fawzy@ci.menofia.edu.eg ahmed.f.gad@gmail.com MENOUFIA UNIVERSITY FACULTY OF COMPUTERS AND INFORMATION ‫المنوفية‬ ‫جامعة‬ ‫الحاسبات‬ ‫كلية‬‫والمعلومات‬‫المنوفية‬ ‫جامعة‬
  • 2. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 Ahmed F. Gad 2
  • 3. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Ahmed F. Gad 3
  • 4. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y Ahmed F. Gad 4
  • 5. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y Ahmed F. Gad 5
  • 6. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ?? Ahmed F. Gad 6
  • 7. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ?? Ahmed F. Gad 7
  • 8. Single Objective Optimization Problem • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ??X Ahmed F. Gad 8
  • 9. Single Objective Optimization Problem Best Solution • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ??X X 1 2 3 Ahmed F. Gad 9
  • 10. Single Objective Optimization Problem Best Solution • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ??X X Y 1 2 2 3 3 2 Ahmed F. Gad 10
  • 11. Single Objective Optimization Problem Best Solution • Assume there is a company wants to maximize its profit according to the following criterion: 𝑴𝒂𝒙 𝒀 = − 𝑿 − 2 2 + 3 • The first question to ask yourself when optimizing an equation is: What to change for making results better? Y ??X X Y 1 2 2 3 3 2 Ahmed F. Gad 11
  • 12. Single Objective Optimization Problem More Input Variables Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 Ahmed F. Gad 12
  • 13. Single Objective Optimization Problem More Input Variables Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z Ahmed F. Gad 13
  • 14. Single Objective Optimization Problem More Input Variables Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z 1:3 1:2 Ahmed F. Gad 14
  • 15. Single Objective Optimization Problem Best Solution Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z X Z 1 1 1 2 2 1 2 2 3 1 3 2 1:3 1:2 Ahmed F. Gad 15
  • 16. Single Objective Optimization Problem Best Solution Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z X Z Y 1 1 3 1 2 10 2 1 4 2 2 11 3 1 3 3 2 10 1:3 1:2 Ahmed F. Gad 16
  • 17. Single Objective Optimization Problem Best Solution Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z X Z Y 1 1 3 1 2 10 2 1 4 2 2 11 3 1 3 3 2 10 1:3 1:2 Ahmed F. Gad 17
  • 18. Single Objective Optimization Problem More Challenges Add another variable Z 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 What to change for making results better? Y ??X Z X Z Y 1 1 3 1 2 10 2 1 4 2 2 11 3 1 3 3 2 10 1:3 1:2 Unbounded values for input variables. More objective functions. More Challenges Ahmed F. Gad 18
  • 19. Multi-Objective Optimization Problem (MOOP) • Previously, there was a single optimization function in the optimization problem: 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 Ahmed F. Gad 19
  • 20. Multi-Objective Optimization Problem (MOOP) • Previously, there was a single optimization function in the optimization problem: 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 • Let`s add another objective function to the optimization problem: 𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2 + 1 Ahmed F. Gad 20
  • 21. Multi-Objective Optimization Problem (MOOP) • Previously, there was a single optimization function in the optimization problem: 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 • Let`s add another objective function to the optimization problem: 𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2 + 1 Our optimization problem is as follows: 𝑀𝑎𝑥 𝒀 𝑀𝑖𝑛 𝑲 Where 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 𝑲 = 𝑿 − 2 2 + 1 Subject to 1 ≤ 𝑿 ≤ 3 & 1 ≤ 𝒁 ≤ 2 Ahmed F. Gad 21
  • 22. Multi-Objective Optimization Problem (MOOP) • Previously, there was a single optimization function in the optimization problem: 𝑴𝒂𝒙 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 • Let`s add another objective function to the optimization problem: 𝑴𝒊𝒏 𝑲 = 𝑿 − 2 2 + 1 Our optimization problem is as follows: 𝑀𝑎𝑥 𝒀 𝑀𝑖𝑛 𝑲 Where 𝒀 = 𝒁3 − 𝑿 − 2 2 + 3 𝑲 = 𝑿 − 2 2 + 1 Subject to 1 ≤ 𝑿 ≤ 3 & 1 ≤ 𝒁 ≤ 2 Difficult to solve manually as number of optimization functions increases. Non-Dominated Sorting Genetic Algorithm (NSGA) 22Ahmed F. Gad
  • 23. Non-Dominated Sorting Genetic Algorithm (NSGA) Overview • NSGA is a multi-objective evolutionary algorithm (MOEA) that can solve and return more than one solution for MOOPs. • NSGA has an extension named NSGA-II. • NSGA-II use genetic algorithm (GA) for searching for the best solution(s). This is why NSGA-II has the term “genetic algorithm” in its name. • As in GA, NSGA-II starts by a set of initial solutions that get evolved for getting better solution(s). • Let`s take a quick revision on steps of GA. Ahmed F. Gad 23
  • 24. Genetic Algorithm (GA) Steps Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Ahmed F. Gad 24
  • 25. Genetic Algorithm (GA) Steps GA vs. NSGA-II NSGA-II differs from GA in the way of selecting the parents. Away from that, NSGA-II and GA are almost similar. Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Ahmed F. Gad 25
  • 26. Genetic Algorithm (GA) Steps GA vs. NSGA-II Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Function Solution Fitness Value GA NSGA-II differs from GA in the way of selecting the parents. Away from that, NSGA-II and GA are almost similar. Ahmed F. Gad 26
  • 27. Genetic Algorithm (GA) Steps GA vs. NSGA-II Function Solution Fitness Value GA Function1 Solution Value1 NSGA Function2 Value2 FunctionN ValueN … … Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population NSGA-II differs from GA in the way of selecting the parents. Away from that, NSGA-II and GA are almost similar. Ahmed F. Gad 27
  • 28. Genetic Algorithm (GA) Steps GA vs. NSGA-II Function Solution Fitness Value GA Function1 Solution Value1 NSGA Function2 Value2 FunctionN ValueN … … Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Non-Dominated Sorting Crowding Distance Ahmed F. Gad 28
  • 29. More About Genetic Algorithm (GA) • Yu, Xinjie, and Mitsuo Gen. Introduction to evolutionary algorithms. Springer Science & Business Media, 2010. • Kalyanmoy, Deb. Multi-objective optimization using evolutionary algorithms. John Wiley and Sons, 2001. [Tutorial] Introduction to Optimization with Genetic Algorithm. Ahmed F. Gad • LinkedIn: https://www.linkedin.com/pulse/introduction-optimization-genetic- algorithm-ahmed-gad/ • KDnuggets: https://www.kdnuggets.com/2018/03/introduction-optimization- with-genetic-algorithm.html • TowardsDataScience: https://towardsdatascience.com/introduction-to- optimization-with-genetic-algorithm-2f5001d9964b • SlideShare: https://www.slideshare.net/AhmedGadFCIT/introduction-to- optimization-with-genetic-algorithm-ga Ahmed F. Gad 29
  • 30. Our Example • The example we are going to use to solve an optimization problem using NSGA-II is about someone want to buy a shirt. • There are two objective functions: 1. Low cost (between 0 and 85). 2. Bad feedback from previous buyers (between 0 and 5). • Where the cost is in USD and feedback is measured as a real number between 0 and 5 inclusive, where 0 is the best feedback and 5 is the worst feedback. • That means both objective functions are minimization. Ahmed F. Gad 30
  • 31. Our Example Data • The data used has 8 samples as follows: • Our mission is to find the shirt that meets both objectives as much as possible. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 31
  • 32. NSGA-II Steps Initial Population Non-Dominated Sorting Ahmed F. Gad 32 S1 S2 S3 S4 S5 S6
  • 33. NSGA-II Steps Initial Population Non-Dominated Sorting S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 Ahmed F. Gad 33
  • 34. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 Ahmed F. Gad 34
  • 35. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 Just 2 Parents Ahmed F. Gad 35
  • 36. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 Just 2 Parents Ahmed F. Gad 36
  • 37. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents Ahmed F. Gad 37
  • 38. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents Ahmed F. Gad 38
  • 39. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents Ahmed F. Gad 39
  • 40. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Ahmed F. Gad 40
  • 41. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Ahmed F. Gad 41 Non-dominated sorting could not compare the same solutions within the same level.
  • 42. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Ahmed F. Gad 42
  • 43. NSGA-II Steps Initial Population Non-Dominated Sorting S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Select All Solutions in Level? Ahmed F. Gad 43 Parents
  • 44. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Select All Solutions in Level? YES Ahmed F. Gad 44
  • 45. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Select All Solutions in Level? Crowding Distance NOYES Ahmed F. Gad 45
  • 46. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Select All Solutions in Level? Crowding Distance NOYES Tournament Selection 46Ahmed F. Gad
  • 47. NSGA-II Steps Initial Population Non-Dominated Sorting Parents S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Select All Solutions in Level? Crowding Distance NOYES Mating Pool Offspring Crossover Mutation New Population Tournament Selection 47Ahmed F. Gad
  • 48. NSGA-II Steps S2 S5 S4 S3S1 S6 Level 1 Level 2 Level 3 S1 S2 S3 S4 S5 S6 3 Parents ??? Crowding Distance Initial Population Non-Dominated Sorting Parents Select All Solutions in Level? Crowding Distance NOYES Mating Pool Offspring Crossover Mutation New Population Tournament Selection 48Ahmed F. Gad
  • 49. GA Vs. NSGA-II Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Initial Population Non-Dominated Sorting Parents Select All Solutions in Level? NOYES Mating Pool Offspring Crossover Mutation New Population Tournament Selection Crowding Distance Ahmed F. Gad 49
  • 50. GA Vs. NSGA-II Initial Population Fitness Value Mating Pool Offspring Parents Crossover Mutation New Population Initial Population Non-Dominated Sorting Parents Select All Solutions in Level? NOYES Mating Pool Offspring Crossover Mutation New Population Tournament Selection Crowding Distance Ahmed F. Gad 50
  • 51. NSGA-II Initial Population • Suppose that the population size is 8 (i.e. means 8 solutions will be used in the population). • This means all solutions are used in the initial population. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 51
  • 52. NSGA-II Non-Dominated Sorting • Domination in NSGA-II helps us to select the best set of solutions as parents. • If solution X dominates solution Y, that means solution X is better than solution Y. When to say that solution X dominates solution Y? • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. Ahmed F. Gad 52
  • 53. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? Ahmed F. Gad 53
  • 54. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? Ahmed F. Gad 54
  • 55. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? Ahmed F. Gad 55
  • 56. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? Ahmed F. Gad 56
  • 57. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? Ahmed F. Gad 57
  • 58. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. Ahmed F. Gad 58
  • 59. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. X Y Max Obj1 5 4 Max Obj2 0.1 0.25 Does solution X dominates solution Y? Ahmed F. Gad 59
  • 60. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. X Y Max Obj1 5 4 Max Obj2 0.1 0.25 Does solution X dominates solution Y? Ahmed F. Gad 60
  • 61. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. X Y Max Obj1 5 4 Max Obj2 0.1 0.25 Does solution X dominates solution Y? Ahmed F. Gad 61
  • 62. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. X Y Max Obj1 5 4 Max Obj2 0.1 0.25 Does solution X dominates solution Y? NO. Ahmed F. Gad 62
  • 63. NSGA-II Non-Dominated Sorting • Solution X is said to dominate solution Y if and only if: 1. Solution X is no worse than solution Y in all objectives functions and 2. Solution X is better than solution Y in at least one objective function. X Y Max Obj1 4 4 Max Obj2 0.3 0.2 Does solution X dominates solution Y? YES. X Y Max Obj1 5 4 Max Obj2 0.1 0.25 Does solution X dominates solution Y? NO. Set of solutions not satisfying such two conditions are called non-dominant set. 63
  • 64. Steps to Find the Non-Dominant Set 1. Select a solution with index i, where i starts from 1 corresponding to the first solution. 2. Check the dominance of that solution against all other solutions in the data. 3. If a solution is found to dominate that solution, then stop as it is impossible to be in the current non-dominated front. Check the next solution. 4. If no solution dominates that solution, then add it to the current non-dominated front. 5. Increment i by 1 and repeat steps 2 to 4. Ahmed F. Gad 64
  • 65. NSGA-II Non-Dominated Sorting ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • Let`s find the non-dominated fronts based on our example. Ahmed F. Gad 65
  • 66. NSGA-II Non-Dominated Sorting – Solution A ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 66
  • 67. NSGA-II Non-Dominated Sorting – Solution A ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 67
  • 68. NSGA-II Non-Dominated Sorting – Solution A • A is better than B in the both objectives as A`s cost is 20 which is less (i.e. better) than B`s cost of 60. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 68
  • 69. NSGA-II Non-Dominated Sorting – Solution A • A is better than B in the both objectives as A`s cost is 20 which is less (i.e. better) than B`s cost of 60. • Also A`s feedback is 2.2 which is less than B`s feedback which is 4.4 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 69
  • 70. NSGA-II Non-Dominated Sorting – Solution A • A is better than B in the both objectives as A`s cost is 20 which is less (i.e. better) than B`s cost of 60. • Also A`s feedback is 2.2 which is less than B`s feedback which is 4.4 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Solution B does not dominate solution A. Ahmed F. Gad 70
  • 71. NSGA-II Non-Dominated Sorting – Solution A • A is better than C across all objectives. A`s cost (20$) is less than C`s cost (65$). Also A`s feedback (2.2) is less than C`s feedback (3.5). ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 71
  • 72. NSGA-II Non-Dominated Sorting – Solution A • A is better than C across all objectives. A`s cost (20$) is less than C`s cost (65$). Also A`s feedback (2.2) is less than C`s feedback (3.5). ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Solution C does not dominate solution A. Ahmed F. Gad 72
  • 73. NSGA-II Non-Dominated Sorting – Solution A • A is worse than D in the first objective (cost) because A’s cost is 20$ which is larger than D’s cost of 15$. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 73
  • 74. NSGA-II Non-Dominated Sorting – Solution A • A is worse than D in the first objective (cost) because A’s cost is 20$ which is larger (worse) than D’s cost of 15$. • A’s feedback is 2.2 is smaller (better) than D’s feedback of 4.4. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 74
  • 75. NSGA-II Non-Dominated Sorting – Solution A • A is worse than D in the first objective (cost) because A’s cost is 20$ which is larger (worse) than D’s cost of 15$. • A’s feedback is 2.2 is smaller (better) than D’s feedback of 4.4. • Solution D does not dominate solution A because conditions of dominance are not met. ID Cost $ Feedback A 20 2.2 B 60 4.8 C 45 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 3.5 H 25 2.5 Solution D does not dominate solution A. Ahmed F. Gad 75
  • 76. NSGA-II Non-Dominated Sorting – Solution A • A is better than E across all objectives. A`s cost (20$) is less than E`s cost (55$) and A`s feedback (2.2) is less than E`s feedback (4.5). ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 76
  • 77. NSGA-II Non-Dominated Sorting – Solution A • A is better than E across all objectives. A`s cost (20$) is less than E`s cost (55$) and A`s feedback (2.2) is less than E`s feedback (4.5). Solution E does not dominate solution A. Ahmed F. Gad 77 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 78. NSGA-II Non-Dominated Sorting – Solution A • A is better than F in the first objective (cost) because A`s cost is 20$ which is smaller than F`s cost of 50$. ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 78
  • 79. NSGA-II Non-Dominated Sorting – Solution A • A is better than F in the first objective (cost) because A`s cost is 20$ which is smaller than F`s cost of 50$. • This is enough to conclude that solution F does not dominate solution A. Solution F does not dominate solution A. Ahmed F. Gad 79 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 80. NSGA-II Non-Dominated Sorting – Solution A • A is better than G across all objectives. A`s cost (20$) is less than G`s cost (80$) and A`s feedback (2.2) is less than G`s feedback (4.0). ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 80
  • 81. NSGA-II Non-Dominated Sorting – Solution A • A is better than G across all objectives. A`s cost (20$) is less than G`s cost (80$) and A`s feedback (2.2) is less than G`s feedback (4.0). Solution G does not dominate solution A. Ahmed F. Gad 81 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 82. NSGA-II Non-Dominated Sorting – Solution A • A is better than H across all objectives. A`s cost (20$) is less than H`s cost (25$) and A`s feedback (2.2) is less than H`s feedback (4.6). Ahmed F. Gad 82 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 83. NSGA-II Non-Dominated Sorting – Solution A • A is better than H across all objectives. A`s cost (20$) is less than H`s cost (25$) and A`s feedback (2.2) is less than H`s feedback (4.6). Solution H does not dominate solution A. Ahmed F. Gad 83 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 84. NSGA-II Non-Dominated Sorting – Solution B • After making sure that no solution dominates A, then A is included in the non-dominant set. • The current non-dominant set is P={A}. • Let us move to the next solution. Ahmed F. Gad 84 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 85. NSGA-II Non-Dominated Sorting – Solution B ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 85
  • 86. NSGA-II Non-Dominated Sorting – Solution B ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • A is better than B across all objectives because A`s cost (20$) is better than B`s cost (60$) and also A’s feedback (2.2) is better than B’s feedback (4.4). Ahmed F. Gad 86
  • 87. NSGA-II Non-Dominated Sorting – Solution B ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • A is better than B across all objectives because A`s cost (20$) is better than B`s cost (60$) and also A’s feedback (2.2) is better than B’s feedback (4.4). • B is not a member of the non- dominated set. Solution A dominates solution B. Ahmed F. Gad 87
  • 88. NSGA-II Non-Dominated Sorting – Solution C ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 88
  • 89. NSGA-II Non-Dominated Sorting – Solution C • A is better than C across all objectives because A`s cost (20$) is better than C`s cost (65$) and also A`s feedback (2.2) is better than C`s feedback (3.5). Ahmed F. Gad 89 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 90. NSGA-II Non-Dominated Sorting – Solution C • A is better than C across all objectives because A`s cost (20$) is better than C`s cost (65$) and also A`s feedback (2.2) is better than C`s feedback (3.5). • B is not a member of the non- dominated set. Solution A dominates solution C. Ahmed F. Gad 90 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 91. NSGA-II Non-Dominated Sorting – Solution D ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 91
  • 92. NSGA-II Non-Dominated Sorting – Solution D ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • Working with D and comparing it by all solutions, we found that there is no solution dominating D. As a result, we can stop and conclude that D is a member of the non-dominant set. The current non-dominant set is P={A, D}. Let us move to the next solution. Ahmed F. Gad 92
  • 93. NSGA-II Non-Dominated Sorting – Solution E ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 93
  • 94. NSGA-II Non-Dominated Sorting – Solution E • Comparing E by A, it is clear that A is better than E across all objectives. A`s cost (20$) is better than E’s (55$) and A’s feedback (2.2) is better than E’s feedback (4.5). As a result, we can stop and conclude that A dominates E and E could not be a member of the non-dominant set. Let us move to the next solution. Ahmed F. Gad 94 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 95. NSGA-II Non-Dominated Sorting – Solution F ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 95
  • 96. NSGA-II Non-Dominated Sorting – Solution F • Working with F and comparing it by all solutions, we found that there no solution dominates F. As a result, we can stop and conclude that F is a member of the non- dominant set. The current non- dominant set is P={A, D, F}. Let us move to the next solution. Ahmed F. Gad 96 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 97. NSGA-II Non-Dominated Sorting – Solution G ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 97
  • 98. NSGA-II Non-Dominated Sorting – Solution G • Comparing G by all solutions, it is clear that solutions A, C, and F dominate solution G. As a result, we conclude that G is not be a member of the non-dominant set. Let us move to the final solution. Ahmed F. Gad 98 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 99. NSGA-II Non-Dominated Sorting – Solution H ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 99
  • 100. NSGA-II Non-Dominated Sorting – Solution H • Comparing G by all solutions, it is clear that solutions A and D dominate solution G. As a result, we conclude that H is not be a member of the non-dominant set. Ahmed F. Gad 100 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 101. NSGA-II Non-Dominated Sorting ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • The final non-dominant set is: P={A, D, F} • This is the level 1 non-dominated front. • Such 3 solutions are better than the other 5 solutions {B, C, E, G, H}. What about the solutions not selected in the current non-dominant set? Apply non-dominant sorting over such remaining solutions. Ahmed F. Gad 101
  • 102. NSGA-II Non-Dominated Sorting ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 • The final non-dominant set is: P={A, D, F} • This is the level 1 non-dominated front. • Such 3 solutions are better than the other 5 solutions {B, C, E, G, H}. What about the solutions not selected in the current non-dominant set? Apply non-dominant sorting over such remaining solutions. Ahmed F. Gad 102
  • 103. NSGA-II Non-Dominated Sorting – Level 2 Non-Dominated Front ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • The final non-dominant set is: P={A, D, F} • This is the level 1 non-dominated front. • Such 3 solutions are better than the other 5 solutions {B, C, E, G, H}. What about the solutions not selected in the current non-dominant set? Apply non-dominant sorting over such remaining solutions. Ahmed F. Gad 103
  • 104. NSGA-II Non-Dominated Sorting – Solution B ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • By checking the dominance of B against all solutions and finding that no solution dominates it, we can conclude that B is included in the non-dominated front at level 2. The level 2 set is now P`={B}. Ahmed F. Gad 104
  • 105. NSGA-II Non-Dominated Sorting – Solution C ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • After comparing C to all solutions and finding that no solution dominates it, we can conclude that C is included in the non-dominated front at level 2. The level 2 set is now P`={B, C}. Ahmed F. Gad 105
  • 106. NSGA-II Non-Dominated Sorting – Solution E ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • Because no solution dominates solution E, E is included in the non- dominated front at level 2. The level 2 set is now P`={B, C, E}. Ahmed F. Gad 106
  • 107. NSGA-II Non-Dominated Sorting – Solution G ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • By comparing G to all solutions, solution C dominates it and thus G can`t be included in the non- dominated front at level 2. Ahmed F. Gad 107
  • 108. NSGA-II Non-Dominated Sorting – Solution H ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • Because no solution dominates solution H, it is included in the non-dominated front at level 2. The level 2 set is now P`={B, C, E, H}. Ahmed F. Gad 108
  • 109. NSGA-II Non-Dominated Sorting – Solution H ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 G 80 4.0 H 25 4.6 • Because no solution dominates solution H, it is included in the non-dominated front at level 2. The level 2 set is now P`={B, C, E, H}. • This is the end of the non- dominated front at level 2. Ahmed F. Gad 109
  • 110. NSGA-II Non-Dominated Sorting – Second Domination Level. • The final non-dominated front in the 2nd level is: P`={B, C, E, H} • There is just one remaining solution which is G. • Working on the non-dominated front at the 3rd level, G will be the only solution inside it. Such level is P``={G}. ID Cost $ Feedback A 60 4.4 C 65 3.5 F 55 4.5 G 80 4.0 H 25 4.6 Ahmed F. Gad 110
  • 111. NSGA-II Non-Dominated Sorting – All Levels. Level Solutions 1 {A, D, F} 2 {B, C, E, H} 3 {G} Ahmed F. Gad 111
  • 112. • The used population size is 8. Half of the population is the parents. • As a result, we have to select 4 parents. • Selection starts from the level 1. NSGA-II Parents Selection Ahmed F. Gad 112
  • 113. • The used population size is 8. Half of the population is the parents. • As a result, we have to select 4 parents. • Selection starts from the level 1. NSGA-II Parents Selection Level Solutions 1 {A, D, F} 2 {B, C, E, H} 3 {G} Ahmed F. Gad 113
  • 114. • The used population size is 8. Half of the population is the parents. • As a result, we have to select 4 parents. • Selection starts from the level 1. • The three solutions in level 1 are selected {A, D, F}. • Because 4 parents needed, 4th is selected from level 2. • Level 2 have 4 solutions. Which one to select? • Non-dominated sorting could not compare the same solutions within the same level. • Use crowding distance. NSGA-II Parents Selection Level Solutions 1 {A, D, F} 2 {B, C, E, H} 3 {G} Ahmed F. Gad 114
  • 115. • Crowding distance is the metric used to prioritize solutions within the same non-dominated front. • It is used whenever we want to select subset of solutions within the same level. There is no need for the crowding distance if all solutions within the same level are selected. • Before selecting a solution from the 2nd level, we have to calculate the crowding distance for all solutions within such 2nd level. NSGA-II Crowding Distance Ahmed F. Gad 115 Level Solutions 1 {A, D, F} 2 {B, C, E, H} 3 {G}
  • 116. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. 2nd level has solutions B, C, E, and H. NSGA-II Crowding Distance – Step 1 ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6 Ahmed F. Gad 116
  • 117. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. 2nd level has solutions A, C, F, and H. We can just keep such solutions and remove others. NSGA-II Crowding Distance – Step 1 ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 H 25 4.6 Ahmed F. Gad 117
  • 118. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. 2nd level has solutions A, C, F, and H. We can just keep such solutions and remove others. Then sort solutions in ascending order. NSGA-II Crowding Distance – Step 1 ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 H 25 4.6 ID Cost $ A 20 H 25 C 45 F 50 Ahmed F. Gad 118
  • 119. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. 2nd level has solutions A, C, F, and H. We can just keep such solutions and remove others. Then sort solutions in ascending order. NSGA-II Crowding Distance – Step 1 ID Cost $ Feedback B 60 4.4 C 65 3.5 E 55 4.5 H 25 4.6 ID Cost $ H 25 E 55 B 60 C 65 ID Feedback C 3.5 B 4.4 E 4.5 H 4.6 119Ahmed F. Gad
  • 120. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. For better handled, we can represent the solutions in a line. NSGA-II Crowding Distance – Step 1 Ahmed F. Gad 120
  • 121. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. For better handled, we can represent the solutions in a line. NSGA-II Crowding Distance – Step 1 ID Cost $ H 25 E 55 B 60 C 65 H E B C Cost $ 25 55 60 65 Ahmed F. Gad 121
  • 122. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. For better handled, we can represent the solutions in a line. NSGA-II Crowding Distance – Step 1 C B E H Feedback 3.5 4.4 4.5 4.6 ID Feedback C 3.5 B 4.4 E 4.5 H 4.6 Ahmed F. Gad 122
  • 123. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. Here are the 2nd level solutions sorted in a line. NSGA-II Crowding Distance – Step 1 C B E H Feedback 3.5 4.4 4.5 4.6 H E B C Cost $ 25 55 60 65 123Ahmed F. Gad
  • 124. Step 1: Sort all solutions within the 2nd level in ascending order for each objective function. Here are the 2nd level solutions sorted in a line. Next is to calculate the crowding distance for each solution according to each objective. NSGA-II Crowding Distance – Step 1 124Ahmed F. GadC B E H Feedback 3.5 4.4 4.5 4.6 H E B C Cost $ 25 55 60 65
  • 125. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). NSGA-II Crowding Distance – Step 2 125Ahmed F. GadC B E H Feedback 3.5 4.4 4.5 4.6 H E B C Cost $ 25 55 60 65
  • 126. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). Let`s start by the cost objective. NSGA-II Crowding Distance – Step 2 126Ahmed F. GadC B E H Feedback 3.5 4.4 4.5 4.6 H E B C Cost $ 25 55 60 65
  • 127. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). For the cost objective. NSGA-II Crowding Distance – Step 2 H E B C C. Distance Cost $ 25 55 60 65 127Ahmed F. GadC B E H Feedback 3.5 4.4 4.5 4.6
  • 128. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). For the cost objective. NSGA-II Crowding Distance – Step 2 128Ahmed F. Gad H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 C B E H Feedback 3.5 4.4 4.5 4.6
  • 129. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). For the feedback objective. NSGA-II Crowding Distance – Step 2 C B E H C. Distance Feedback 3.5 4.4 4.5 4.6 129Ahmed F. Gad H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65
  • 130. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). For the feedback objective. NSGA-II Crowding Distance – Step 2 130Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65
  • 131. Step 2: For the two solutions at outliers (i.e. right-most and left-most solutions), set their crowding distance to infinity (∞). Next is to calculate the crowding distance for the in-between solutions. NSGA-II Crowding Distance – Step 2 131Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65
  • 132. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 3 132Ahmed F. Gad 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 133. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 2 133Ahmed F. Gad 𝒅 𝒎 𝒏 refers to crowding distance of solution n according to objective m. 𝑺 𝒎 𝒏 refers to the value of the objective m for solution n. 𝑶 𝒎 𝒎𝒂𝒙 refers to the maximum value for objective m. 𝑶 𝒎 𝒎𝒂𝒙 refers to the minimum value for objective m. 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 134. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 2 134Ahmed F. Gad 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 H E B C n 1 2 3 4
  • 135. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 2 135Ahmed F. Gad 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 H E B C n 1 2 3 4
  • 136. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 2 136Ahmed F. Gad 𝒅 𝒎 𝒏 refers to crowding distance of solution n according to objective m. 𝑺 𝒎 𝒏 refers to the value of the objective m for solution n. 𝑶 𝒎 𝒎𝒂𝒙 refers to the maximum value for objective m. 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 Max Cost 80 Feedback 5
  • 137. Step 3: For the in-between solutions, the crowding distance is calculated according to: NSGA-II Crowding Distance – Step 2 137Ahmed F. Gad 𝒅 𝒎 𝒏 refers to crowding distance of solution n according to objective m. 𝑺 𝒎 𝒏 refers to the value of the objective m for solution n. 𝑶 𝒎 𝒎𝒂𝒙 refers to the maximum value for objective m. 𝑶 𝒎 𝒎𝒂𝒙 refers to the minimum value for objective m. 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 Max Cost 80 Feedback 5 Min Cost 0 Feedback 0
  • 138. Step 3: Let`s calculate the crowding distance for solution E according to the cost objective. NSGA-II Crowding Distance – Step 3 138Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65
  • 139. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 139Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65
  • 140. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 140Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 141. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 141Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 142. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 142Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 143. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 143Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 144. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 144Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 145. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 145Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 146. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 146Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 147. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 147Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 148. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 148Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 149. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 149Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 25 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 150. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 150Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 25 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 85 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 0 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 151. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 151Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ ∞ Cost $ 25 55 60 65 𝒅 𝟏 𝟐 = 𝟔𝟎 − 𝟐𝟓 𝟖𝟓 − 𝟎 = 𝟑𝟓 𝟖𝟓 = 𝟎. 𝟒 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 25 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 85 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 0 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 152. Step 3: Let`s calculate the crowding distance for solution E (n=2) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 152Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 ∞ Cost $ 25 55 60 65 𝒅 𝟏 𝟐 = 𝟔𝟎 − 𝟐𝟓 𝟖𝟓 − 𝟎 = 𝟑𝟓 𝟖𝟓 = 𝟎. 𝟒 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟑 60 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟏 25 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 85 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 0 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 153. Step 3: Let`s calculate the crowding distance for solution B (n=3) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 153Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 154. Step 3: Let`s calculate the crowding distance for solution B (n=3) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 154Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟒 65 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟐 55 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 85 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 0
  • 155. Step 3: Let`s calculate the crowding distance for solution B (n=3) according to the cost objective (m=1). NSGA-II Crowding Distance – Step 3 155Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 𝑺 𝒎 𝒏+𝟏 𝑺 𝟏 𝟒 65 𝑺 𝒎 𝒏−𝟏 𝑺 𝟏 𝟐 55 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟏 𝒎𝒂𝒙 85 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟏 𝒎𝒊𝒏 0 𝒅 𝟏 𝟑 = 𝟔𝟓 − 𝟓𝟓 𝟖𝟓 − 𝟎 = 𝟏𝟎 𝟖𝟓 = 𝟎. 𝟏
  • 156. Step 3: Crowding distance for solution B (n=2) according to the feedback objective (m=2). NSGA-II Crowding Distance – Step 3 156Ahmed F. GadC B E H C. Distance ∞ ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏
  • 157. Step 3: Crowding distance for solution B (n=2) according to the feedback objective (m=2). NSGA-II Crowding Distance – Step 3 157Ahmed F. GadC B E H C. Distance ∞ 0.2 ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 𝑺 𝒎 𝒏+𝟏 𝑺 𝟐 𝟑 4.5 𝑺 𝒎 𝒏−𝟏 𝑺 𝟐 𝟏 3.5 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟐 𝒎𝒂𝒙 5 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟐 𝒎𝒊𝒏 0 𝒅 𝟐 𝟐 = 𝟒. 𝟓 − 𝟑. 𝟓 𝟓 − 𝟎 = 𝟏. 𝟎 𝟓 = 𝟎. 𝟐
  • 158. Step 3: Crowding distance for solution E (n=3) according to the feedback objective (m=2). NSGA-II Crowding Distance – Step 3 158Ahmed F. GadC B E H C. Distance ∞ 0.2 0.04 ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65 𝒅 𝒎 𝒏 = 𝑺 𝒎 𝒏+𝟏 − 𝑺 𝒎 𝒏−𝟏 𝑶 𝒎 𝒎𝒂𝒙 − 𝑶 𝒎 𝒎𝒊𝒏 𝑺 𝒎 𝒏+𝟏 𝑺 𝟐 𝟒 4.6 𝑺 𝒎 𝒏−𝟏 𝑺 𝟐 𝟐 4.4 𝑶 𝒎 𝒎𝒂𝒙 𝑶 𝟐 𝒎𝒂𝒙 5 𝑶 𝒎 𝒎𝒊𝒏 𝑶 𝟐 𝒎𝒊𝒏 0 𝒅 𝟐 𝟑 = 𝟒. 𝟔 − 𝟒. 𝟒 𝟓 − 𝟎 = 𝟎. 𝟐 𝟓 = 𝟎. 𝟎𝟒
  • 159. Step 3: For the in-between solutions, their crowding distance is the difference between the objective values of the two solutions to its right and left. NSGA-II Crowding Distance – Step 3 159Ahmed F. GadC B E H C. Distance ∞ 0.2 0.04 ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65
  • 160. We could get them back to the tabular form again. NSGA-II Crowding Distance – Step 3 ID C. Distance Cost $ C. Distance Feedback B 0.1 0.2 C ∞ ∞ E 0.4 0.04 H ∞ ∞ 160Ahmed F. GadC B E H C. Distance ∞ 0.2 0.04 ∞ Feedback 3.5 4.4 4.5 4.6 H E B C C. Distance ∞ 0.4 0.1 ∞ Cost $ 25 55 60 65
  • 161. Step 4: Take the summation of the calculated crowding distances for all objectives. NSGA-II Crowding Distance – Step 4 ID C. Distance Cost $ C. Distance Feedback B 0.1 0.2 C ∞ ∞ E 0.4 0.04 H ∞ ∞ Ahmed F. Gad 161
  • 162. Step 4: Take the summation of the calculated crowding distances for all objectives. NSGA-II Crowding Distance – Step 4 ID C. Distance Cost $ C. Distance Feedback Summation B 0.1 0.2 0.1+0.2 C ∞ ∞ ∞+∞ E 0.4 0.04 0.4+0.04 H ∞ ∞ ∞+∞ Ahmed F. Gad 162
  • 163. Step 4: Take the summation of the calculated crowding distances for all objectives. NSGA-II Crowding Distance – Step 4 ID C. Distance Cost $ C. Distance Feedback Summation B 0.1 0.2 0.3 C ∞ ∞ ∞ E 0.4 0.04 0.44 H ∞ ∞ ∞ Ahmed F. Gad 163
  • 164. Step 5: Sort them in descending order according to summation of crowding distance and select the solutions from highest to lowest crowding distance. NSGA-II Crowding Distance – Step 5 ID Summation B 0.3 C ∞ E 0.44 H ∞ Ahmed F. Gad 164 ID Summation C ∞ H ∞ E 0.44 B 0.3 Sort
  • 165. Step 5: Sort them in descending order according to summation of crowding distance and select the solutions from highest to lowest crowding distance. The selected solution from 2nd level as parent is solution C. NSGA-II Crowding Distance – Step 5 ID Summation C ∞ H ∞ E 0.44 B 0.3 Ahmed F. Gad 165
  • 166. Step 5: Sort them in descending order according to summation of crowding distance and select the solutions from highest to lowest crowding distance. The selected solution from 2nd level as parent is solution C. The set of selected parents is {A, D, F, C}. NSGA-II Crowding Distance – Step 5 ID Summation C ∞ H ∞ E 0.44 B 0.3 Ahmed F. Gad 166
  • 167. • The set of selected parents using non-dominated sorting and crowding distance are applied to tournament selection. • Tournament takes place between each pair of solutions and the winner is selected for producing the offspring. • Based on the set of solutions {A, D, F, C}, the possible pairs of solutions are (A, D), (A, F), (A, C), (D, C), and (F, C). • Tournament selection takes place between such pairs. NSGA-II Tournament Selection Ahmed F. Gad 167
  • 168. • Here are the steps of the tournament selection: 1. If the two solutions are from different non-domination levels, then the solution coming from the high-priority level will be the winner. 2. If the two solutions are from the same non-domination level, then the winner will be the one corresponding to higher crowding distance. NSGA-II Tournament Selection – Steps Ahmed F. Gad 168
  • 169. • Here are the steps of the tournament selection: 1. If the two solutions are from different non-domination levels, then the solution coming from the high-priority level will be the winner. 2. If the two solutions are from the same non-domination level, then the winner will be the one corresponding to higher crowding distance. • Let`s apply tournament selection on each pair. NSGA-II Tournament Selection – Steps Ahmed F. Gad 169
  • 170. • For the first pair (A, D), because both A and D come from the same 1st level, then crowding distance for solutions within the 1st level will be calculated to compare the solutions A and D. NSGA-II Tournament Selection – (B, D) Ahmed F. Gad 170
  • 171. • For the first pair (A, D), because both A and D come from the same 1st level, then crowding distance for solutions within the 1st level will be calculated to compare the solutions A and D. NSGA-II Tournament Selection – (A, D) D A F C. Distance ∞ 0.4 ∞ Cost $ 15 20 50 F A F C. Distance ∞ 0.52 ∞ Feedback 1.8 2.2 4.4 171Ahmed F. Gad ID Cost $ Feedback A 20 2.2 B 60 4.4 C 65 3.5 D 15 4.4 E 55 4.5 F 50 1.8 G 80 4.0 H 25 4.6
  • 172. • For the first pair (A, D), because both A and D come from the same 1st level, then crowding distance for solutions within the 1st level will be calculated to compare the solutions A and D. NSGA-II Tournament Selection – (A, D) ID C. Distance Cost $ C. Distance Feedback Summation A 0.4 0.52 0.92 D ∞ ∞ ∞ F ∞ ∞ ∞ 172Ahmed F. Gad D A F C. Distance ∞ 0.4 ∞ Cost $ 15 20 50 F A D C. Distance ∞ 0.52 ∞ Feedback 1.8 2.2 4.4
  • 173. • For the first pair (A, D), because both A and D come from the same 1st level, then crowding distance for solutions within the 1st level will be calculated to compare the solutions A and D. NSGA-II Tournament Selection – (A, D) ID Summation D ∞ F ∞ A 0.92 Ahmed F. Gad 173
  • 174. • For the first pair (A, D), because both A and D come from the same 1st level, then crowding distance for solutions within the 1st level will be calculated to compare the solutions A and D. • Crowding distance of D is higher than A. Thus D is the winner. NSGA-II Tournament Selection – (A, D) ID Summation D ∞ F ∞ A 0.92 Ahmed F. Gad 174
  • 175. • For (A, F), based on the previously calculated crowding distance for the 1st level, F is the winner. • For (A, C), because A comes from a high priority level than C, then A is the winner. • For (D, C), because D comes from a high priority level than C, then D is the winner. • For (F, C), because F comes from a high priority level than C, then F is the winner. NSGA-II Tournament Selection – All Other Pairs Ahmed F. Gad 175
  • 176. • For (A, F), based on the previously calculated crowding distance for the 1st level, F is the winner. • For (A, C), because A comes from a high priority level than C, then A is the winner. • For (D, C), because D comes from a high priority level than C, then D is the winner. • For (F, C), because F comes from a high priority level than C, then F is the winner. Unique winners (A, D, F) will be subject to crossover and mutation for producing the offspring. NSGA-II Tournament Selection – All Other Pairs Ahmed F. Gad 176
  • 177. • The offspring will be produced by mating the following pairs (A, D), (A, F), (D, F) and (F, A) where the first gene will be taken from the first parent in the pair and the second gene will be taken from the second parent in the pair. NSGA-II Crossover Ahmed F. Gad 177
  • 178. • The offspring will be produced by mating the following pairs (A, D), (A, F), (D, F) and (F, A) where the first gene will be taken from the first parent in the pair and the second gene will be taken from the second parent in the pair. NSGA-II Crossover ID Cost $ Feedback A 20 2.2 D 15 4.4 F 50 1.8 Selected Solutions Ahmed F. Gad 178
  • 179. • The offspring will be produced by mating the following pairs (A, D), (A, F), (D, F) and (F, A) where the first gene will be taken from the first parent in the pair and the second gene will be taken from the second parent in the pair. NSGA-II Crossover ID Cost $ Feedback A 20 2.2 D 15 4.4 F 50 1.8 Offspring Cost $ Feedback (A, D) 20 4.4 (A, F) 20 1.8 (D, F) 15 1.8 (F, A) 50 2.2 Selected Solutions Crossover Output Ahmed F. Gad 179
  • 180. • Finally, mutation is applied to the results of crossover. NSGA-II Mutation Offspring Cost $ Feedback (A, D) 20 4.4 (A, F) 20 1.8 (D, F) 15 1.8 (F, A) 50 2.2 Crossover Output Ahmed F. Gad 180
  • 181. • Finally, mutation is applied to the results of crossover. • Assume we applied mutation by randomly adding a number between -10 and 10 to the first half of each solution. NSGA-II Mutation Offspring Cost $ Feedback (B, D) 20 4.4 (B, E) 20 1.8 (D, E) 15 1.8 (E, D) 50 2.2 Offspring Cost $ Feedback (B, D) 27 4.4 (B, E) 25 1.8 (D, E) 10 1.8 (E, D) 45 2.2 Crossover Output Mutation Output Ahmed F. Gad 181
  • 182. • Finally, mutation is applied to the results of crossover. • Assume we applied mutation by randomly adding a number between -10 and 10 to the first half of each solution. • The new solutions are given IDs {K, L, M, N}. NSGA-II Mutation Offspring Cost $ Feedback (B, D) 20 4.4 (B, E) 20 1.8 (D, E) 15 1.8 (E, D) 50 2.2 ID Offspring Cost $ Feedback K (B, D) 27 4.4 L (B, E) 25 1.8 M (D, E) 10 1.8 N (E, D) 45 2.2 Crossover Output Mutation Output Ahmed F. Gad 182
  • 183. • The first half of solutions of the new population comes from the selected parents after applying non-dominated sorting and crowding distance. They are solutions {A, D, F, C}. • The second half is the offspring {K, L, M, N}. NSGA-II New Population ID Cost $ Feedback A 20 2.2 D 15 4.4 F 50 1.8 C 65 3.5 K 27 4.4 L 25 1.8 M 10 1.8 N 45 2.2 Ahmed F. Gad 183
  • 184. • The first half of solutions of the new population comes from the selected parents after applying non-dominated sorting and crowding distance. They are solutions {A, D, F, C}. • The second half is the offspring {K, L, M, N}. NSGA-II New Population ID Cost $ Feedback A 20 2.2 D 15 4.4 F 50 1.8 C 65 3.5 K 27 4.4 L 25 1.8 M 10 1.8 N 45 2.2 Ahmed F. Gad 184 Repeat the steps again for the new population.
  • 185. For More Info. Kalyanmoy, Deb. Multi-objective optimization using evolutionary algorithms. John Wiley and Sons, 2001. Ahmed F. Gad 185