These functions expect as mandatory arguments a point set \(X = \{x_1, \ldots, x_{|X|}\}\)
(parameter x
) and and a set of reference points
\(Y = \{y_1, \ldots, y_{|Y|}\}\) (parameter y
). For details on the
optional argument p
and modified
see the section on details.
gd
calculates the Generational Distance (GD).
igd
calculates the Inverse Generational Distance (IGD).
gdp/igdp
compute the (I)GD+ indicator [3].
ahd
calculates the Average Hausdorff Distance.
gd(x, y, p = 2, modified = TRUE, ...) igd(x, y, p = 2, modified = TRUE, ...) gdp(x, y, p = 2, modified = TRUE, ...) igdp(x, y, p = 2, modified = TRUE, ...) ahd(x, y, p = 2, modified = TRUE, ...)
x | [ |
---|---|
y | [ |
p | [ |
modified | [ |
... | [any] |
Single numeric indicator value.
The Generational Distance (GD) measures the distance of a point set
\(X = \{r_1, \ldots, r_{|X|}\}\), e.g., a Pareto-front approximation, to
a reference set \(R = \{r_1, \ldots, r_{|R|}\}\). Then GD is defined as
$$
GD_p(A, R) = \frac{1}{|X|} \left(\sum_{i=1}^{|X|} d_i^p\right)^{1/p}
$$
where \(d_i\) is the Euclidean distance of point \(x_i \in X\) to
its nearest neigbor point in \(R\). The Inverted Generational Distance works
the other way around, i.e.,
$$
IGD_p(A, R) = \frac{1}{|R|} \left(\sum_{i=1}^{|R|} \hat{d}_i^p\right)^{1/p}
$$
where \(\hat{d}_i\) is the respective nearest neighbor distance of \(r_i\)
to any point in \(X\). Put differently, \(IGD_p(A, R) = GD_p(R, A)\).
Functions gd
and igd
calcute these versions.
Schütze et al. [2] proposed a slight modification:
$$
GD_p(A, R) = \left(\frac{1}{|X|} \sum_{i=1}^{|X|} d_i^p\right)^{1/p}
$$
where the average is taken before the power operation. \(IGD_p\) is apdated
analogeously. This versions are calclated by gd
and igd
if the argument
modified
is set to TRUE
.
Ishibushi et al. [3] proposed another modification which works on the
formulation by Schütze et al. (see above). They modified the distance
calculation:
$$
GD_p^{+}(A, R) = \left(\frac{1}{|X|} \sum_{i=1}^{|X|} d^{+^p}_i\right)^{1/p}
$$
where \(d_i^{+} = \max\{x_i, z_i\}\). This version can be calculated
with the function gdp
(the trailing p stands for “plus”).
Eventuelly, the function ahd
calculates the Average Hausdorff Distance [2]
which combines GD and IGD and is defined as
$$
\Delta_p(A, R) = \max\{GD_p(A, R), IGD_p(A, R)\}.
$$
By default, ahd
uses the modified versions of \(GD\) and \(IGD\)
respectively (see argument modified
).
IGDX [4] is a meaasure for decision space diversity. This is simply IGD; however, the input consists of the non-dominated solutions in decision space rather in objective space. Naturally, all implemented functions can be used as an “*X” version.
[1] David A. Van Veldhuizen and David A. Van Veldhuizen. Multiobjective evolutionary algorithms: classifications, analyses, and new innovations. Technical Report, Evolutionary Computation, 1999.
[2] Schütze, O., Esquivel, X.,Lara,A. ,Coello, C.A.C.: Using the averaged Hausdorff distance as a performance measure in evolutionary multiobjective optimization. IEEE Transactions on Evolutionary Computation 16, 504–522 (2012).
[3] Hisao Ishibuchi, Hiroyuki Masuda, Yuki Tanigaki, and Yusuke Nojima. Modified distance calculation in generational distance and inverted generational distance. In António Gaspar-Cunha, Carlos Henggeler Antunes, and Carlos Coello Coello, editors, Evolutionary Multi-Criterion Optimization, 110–125. Cham, 2015. Springer International Publishing.
[4] O. Schütze, M. Vasile, and C. A. C. Coello, Computing the Set of Epsilon-Efficient Solutions in Multiobjective Space Mission Design,