Takes a matrix of fitness values and calculates the hypervolume contributions of individuals in that matrix.
Hypervolume contribution of an individual I is the difference between the dominated hypervolume of a set of
individuals including I, where the fitness of I is increased by epsilon, and the dominated hypervolume of
the same set but excluding I.
Individuals that are less than another individual more than epsilon in any dimension have hypervolume contribution
of 0.
Usage
domhv_contribution(fitnesses, nadir = 0, epsilon = 0)
Value
numeric: The vector of dominated hypervolume contributions for each individual in fitnesses.
Arguments
fitnesses
(numeric matrix)
fitness matrix, with one row per individual and one column per objective
nadir
(numeric)
Lowest fitness point up to which to calculate dominated hypervolume. May be a scalar, in which case
it is used for all dimensions, or a vector, in which case its length must match the number of dimensions.
Default 0.
epsilon
(numeric)
Added to each individual before calculating its particular hypervolume contribution. epsilon may
be a scalar, in which case it is used for all dimensions, or a vector, in which case its length must match
the number of dimensions. Default 0.