From 4fb99b5b0174f671bdf5ded386da6724d0749523 Mon Sep 17 00:00:00 2001 From: Emmanuel Ferdman Date: Sun, 22 Dec 2024 02:09:05 -0800 Subject: [PATCH] Update `constrained.py` reference Signed-off-by: Emmanuel Ferdman --- notebooks/SolvingConstrainedProblems.ipynb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/notebooks/SolvingConstrainedProblems.ipynb b/notebooks/SolvingConstrainedProblems.ipynb index b8a863b9..ecfae512 100644 --- a/notebooks/SolvingConstrainedProblems.ipynb +++ b/notebooks/SolvingConstrainedProblems.ipynb @@ -46,7 +46,7 @@ "id": "adef8444", "metadata": {}, "source": [ - "The constraint hanlding mechanism included in jMetalPy is the one used by NSGA-II (see again [DPA02](https://doi.org/10.1109/4235.996017)), which is based on computing the overall constraint violation degree of a given solution. This degree is calculated by summing the degrees of violation of all constraints when their value is less than zero, so we have to re-formulate the constraints:\n", + "The constraint handling mechanism included in jMetalPy is the one used by NSGA-II (see again [DPA02](https://doi.org/10.1109/4235.996017)), which is based on computing the overall constraint violation degree of a given solution. This degree is calculated by summing the degrees of violation of all constraints when their value is less than zero, so we have to re-formulate the constraints:\n", "\n", "$$\n", "g_1(\\vec{x}) = 1.0 - (x_1 * x_1 + x_2 * x_2) / 225.0\n", @@ -61,7 +61,7 @@ "id": "6b331892", "metadata": {}, "source": [ - "We can implement problem Srinivas in two ways. The first one is by extending the ``FloatProblem`` abstract class (see [Srinivas](https://github.com/jMetal/jMetalPy/blob/main/jmetal/problem/multiobjective/constrained.py)) and the second one is by using the ``OnTheFlyFloatProblem()``class. We use the second approach:" + "We can implement problem Srinivas in two ways. The first one is by extending the ``FloatProblem`` abstract class (see [Srinivas](https://github.com/jMetal/jMetalPy/blob/main/src/jmetal/problem/multiobjective/constrained.py)) and the second one is by using the ``OnTheFlyFloatProblem()``class. We use the second approach:" ] }, { @@ -124,7 +124,7 @@ "metadata": {}, "source": [ "## Configuring NSGA-II \n", - "The constraing handling mechanism of NSGA-II consists of first checking the overall constraint violation degree of the solutions to be compared; if both are feasible or have the same degree of violation, a dominance test is applied. These steps are carried out by the ``DominanceWithConstraintsComparator`` class. \n", + "The constraint handling mechanism of NSGA-II consists of first checking the overall constraint violation degree of the solutions to be compared; if both are feasible or have the same degree of violation, a dominance test is applied. These steps are carried out by the ``DominanceWithConstraintsComparator`` class. \n", "\n", "An example of NSGA-II configuration to solve the Srinivas problem is the following:" ]