Skip to content

Commit 3b34451

Browse files
committed
Updated mutliobjective
1 parent 639a0bd commit 3b34451

File tree

4 files changed

+158
-130
lines changed

4 files changed

+158
-130
lines changed

books/multi_objective/.ipynb_checkpoints/multi_objective_optimization-checkpoint.ipynb

Lines changed: 16 additions & 26 deletions
Large diffs are not rendered by default.

books/multi_objective/intro_moo.ipynb

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@
104104
"id": "f7890d7e-2d81-4536-be16-774fa44874f9",
105105
"metadata": {},
106106
"source": [
107-
"The next few code blocks will locate the Pareto front for the problem and plot the Pareto front in the objective space. The code block uses the non-dominated sorting algorithm of `pymoo` to find the non-dominated points in the objective space. The non-dominated points represent the Pareto front of the problem. The non-dominated sorting algorithm may not always perfectly provide all of the non-dominated points of the problem and it is a good idea to make sure that all the points provided are actually non-dominated solutions. It is also sometimes necessary to adjust the parameter `n_stop_if_ranked` which indicates approximately how many points should survive in the initial population of points at the end of the sorting algorithm. Raising or lowering this value can improve the representation of the Pareto front."
107+
"The next few code blocks will locate the Pareto front for the problem and plot the Pareto front in the objective space. This is done by generating a mesh of points within the bounds of the problem and sorting the points to locate the non-dominated points. The code block uses the non-dominated sorting algorithm of `pymoo` to find the non-dominated points in the objective space. The non-dominated points represent the Pareto front of the problem. The non-dominated sorting algorithm may not always perfectly provide all of the non-dominated points of the problem and it is a good idea to make sure that all the points provided are actually non-dominated solutions. It is also sometimes necessary to adjust the parameter `n_stop_if_ranked` which indicates approximately how many points should survive in the initial population of points at the end of the sorting algorithm. Raising or lowering this value can improve the representation of the Pareto front."
108108
]
109109
},
110110
{
@@ -175,7 +175,7 @@
175175
"id": "62eaee41-0d58-439f-8bdd-07a64176abed",
176176
"metadata": {},
177177
"source": [
178-
"The above plot shows the non-dominated solutions of the problem in the objective space. The curve passing through these points is the Pareto front of the problem. The Pareto front is convex in shape for this problem."
178+
"The above plot shows the non-dominated solutions of the problem in the objective space. The curve passing through these points is the Pareto front of the problem. The Pareto front is convex in shape for this problem. This plot gives good insight into the Pareto front of the problem, however, simply sorting the points from the mesh will not reveal the true front and directly solving the optimization problem will be a better method for a complex problem such as this."
179179
]
180180
},
181181
{
@@ -253,7 +253,7 @@
253253
"id": "0d8e44a5-2374-47b0-8ab4-c3b684829913",
254254
"metadata": {},
255255
"source": [
256-
"The code block below uses the non-dominated sorting algorithm of `pymoo` to find the non-dominated points in the objective space. The non-dominated points represent the Pareto front of the problem."
256+
"The code block below uses the non-dominated sorting algorithm of `pymoo` to find the non-dominated points in the objective space. The non-dominated points represent the Pareto front of the problem. The obtained Pareto front is then plotted in the objective space of the problem."
257257
]
258258
},
259259
{
@@ -323,10 +323,18 @@
323323
"ax.legend(loc=\"upper right\", fontsize = 14)"
324324
]
325325
},
326+
{
327+
"cell_type": "markdown",
328+
"id": "eea62a0a-49ec-461b-becf-51ce7b3ef7f9",
329+
"metadata": {},
330+
"source": [
331+
"The Pareto front of the problem is shown in the plot above. Since the functions involved in the problem are simple, it is likely that the sorted non-dominated points represent a fairly accurate Pareto front for the problem. The Pareto front is continuous and convex for this problem. "
332+
]
333+
},
326334
{
327335
"cell_type": "code",
328336
"execution_count": null,
329-
"id": "2c583424-2b6d-4a75-a7e2-6045311d805d",
337+
"id": "4c0e243a-54ce-4006-99f9-de4f51514030",
330338
"metadata": {},
331339
"outputs": [],
332340
"source": []
@@ -348,7 +356,7 @@
348356
"name": "python",
349357
"nbconvert_exporter": "python",
350358
"pygments_lexer": "ipython3",
351-
"version": "3.9.19"
359+
"version": "3.9.18"
352360
}
353361
},
354362
"nbformat": 4,

books/multi_objective/krg_multi_objective.ipynb

Lines changed: 77 additions & 37 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)