STK_DOMINATEHV computes the hypervolume dominated by a set of points
CALL: HV = stk_dominatedhv (Y, Y_REF)
CALL: HV = stk_dominatedhv (Y, Y_REF, 0)
computes the hypervolume dominated by the rows of Y, with respect to the
reference point Y_REF (a row vector with the same number of columns as Y).
It is expected that all the rows of Y are smaller than Y_REF
(multi-objective minimization framework).
CALL: HV = stk_dominatedhv (Y)
CALL: HV = stk_dominatedhv (Y, [], 0)
uses [0 0 ... 0] as a reference point.
CALL: DECOMP = stk_dominatedhv (Y, Y_REF, 1)
computes a signed decomposition of the dominated hyper-region delimited by
the reference point Y_REF into overlapping rectangles. Assuming that Y is
of size N x D, the result DECOMP is a structure with field .sign (N x 1),
.xmin (N x D) and .xmax (N x D). The hypervolume can be recovered from this
decomposition using
HV = sum (DECOMP.sign .* prod (DECOMP.xmax - DECOMP.xmin, 2))
provided that the resulting decomposition is not empty.
CALL: HV = stk_dominatedhv (Y, [], 1)
computed a signed decomposition using [0 0 ... 0] as a reference point.
NOTE:
This function relies internally on the WFG algorithm [1, 2].
REFERENCES:
[1] Lyndon While, Lucas Bradstreet and Luigi Barone, "A Fast Way of
Calculating Exact Hypervolumes", IEEE Transactions on Evolutionary
Computation, 16(1):86-95, 2012
http://dx.doi.org/10.1109/TEVC.2010.2077298
[2] WFG 1.10, released under the GPLv2 licence, available online from:
http://www.wfg.csse.uwa.edu.au/hypervolume/
See also: sortrows, stk_isdominated, stk_paretofind