hypervolume {moocore} | R Documentation |
Hypervolume metric
Description
Compute the hypervolume metric with respect to a given reference point
assuming minimization of all objectives. For 2D and 3D, the algorithm used
(Fonseca et al. 2006; Beume et al. 2009) has O(n \log n)
complexity. For 4D or higher, the algorithm (Fonseca et al. 2006)
has O(n^{d-2} \log n)
time and linear space complexity in the
worst-case, but experimental results show that the pruning techniques used
may reduce the time complexity even further.
Usage
hypervolume(x, reference, maximise = FALSE)
Arguments
x |
|
reference |
|
maximise |
|
Value
numeric(1)
A single numerical value.
Author(s)
Manuel López-Ibáñez
References
Nicola Beume, Carlos
M. Fonseca, Manuel López-Ibáñez, Luís Paquete, Jan Vahrenhold (2009).
“On the complexity of computing the hypervolume indicator.”
IEEE Transactions on Evolutionary Computation, 13(5), 1075–1082.
doi: 10.1109/TEVC.2009.2015575.
Carlos
M. Fonseca, Luís Paquete, Manuel López-Ibáñez (2006).
“An improved dimension-sweep algorithm for the hypervolume indicator.”
In Proceedings of the 2006 Congress on Evolutionary Computation (CEC 2006), 1157–1163.
IEEE Press, Piscataway, NJ.
doi: 10.1109/CEC.2006.1688440.
Examples
data(SPEA2minstoptimeRichmond)
# The second objective must be maximized
# We calculate the hypervolume of the union of all sets.
hypervolume(SPEA2minstoptimeRichmond[, 1:2], reference = c(250, 0),
maximise = c(FALSE, TRUE))