From 4a64df5320b72aecd824eb0130d38a3d15e379b0 Mon Sep 17 00:00:00 2001
From: Markus Klinik
Date: Fri, 24 May 2019 15:33:43 +0200
Subject: [PATCH] scalarization
---
implementation.tex | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/implementation.tex b/implementation.tex
index 66943fd..f93873e 100644
--- a/implementation.tex
+++ b/implementation.tex
@@ -114,7 +114,29 @@ In this way, the algorithm can explore invalid regions of the search space, whil
\paragraph{Scalarization}
-Fitness function: compare two individuals by using the smart weighted product.
+The algorithm compares two valid individuals by comparing the weighted product of their qualities.
+Calculating the product of a list of numbers can result in very high numbers, which might result in overflow or loss of precision, due to the limitations of calculations on a computer.
+
+We mitigate this problem by utilizing an equivalent formula of the weighted product, that directly calculates the ratio of the weighted product of two given assignments.
+
+To understand the problem, let $x = \tuple{p_1, p_2, p_3, q_1}$ and $y = \tuple{P_1, P_2, P_3, Q_1}$ be the qualities of two assignments, where $p$ and $P$ are more-is-better criteria, and $q$ and $Q$ are less-is-better.
+For this example, we take all weights to be 1.
+We could calculate their scores individually and then take the ratio of the scores, as follows.
+\begin{IEEEeqnarray*}{c'c'c}
+s_x = \frac{p_1 p_2 p_3}{q_1} & s_y = \frac{P_1 P_2 P_3}{Q_1} & r = \frac{s_x}{s_y}
+\end{IEEEeqnarray*}
+The result $r$ is the factor by how much better $x$ is than $y$.
+If $r$ is greater than 1, then the score of $x$ is $r$ times better than the score of $y$.
+If $r$ is less than 1, then $y$ is $r$ times better than $x$.
+
+This calculation has the subexpressions $p_1 p_2 p_3$ and $P_1 P_2 P_3$, which can result in an intermediate result large enough to cause information loss.
+
+By using elementary laws of multiplication and division, we can alternatively calculate $r$ as follows.
+\begin{IEEEeqnarray*}{c}
+r = \frac{p_1}{P_1} \times \frac{p_2}{P_2} \times \frac{p_3}{P_3} \times \frac{Q_1}{q_1}
+\end{IEEEeqnarray*}
+We know that the $p_i$ and $P_i$ are objectives of the same capability requirement, so they are most likely in the same order of magnitude.
+This results in smaller intermediate numbers, which decreases the chance for information loss.
--
GitLab