When solving a problem, the goal is not only solving it but also optimizing such solution. There might be multiple solutions to a problem and the challenge is to find the best of them. The more metrics defining the solution goodness, the harder finding the best solution. This presentation discusses one of the multi-objective optimization techniques called non-dominated sorting genetic algorithm II (NSGA-II) explaining its steps including non-dominated sorting, crowding distance, tournament selection, and genetic algorithm. The presentation works through a numerical example step-by-step.
꧁❤ 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
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.
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
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