Functions for the computation of unary and binary measures which are useful for the evaluation of the performace of EMOAs. See the references section for literature on these indicators.
Given a set of points points
, emoaIndEps
computes the
unary epsilon-indicator provided a set of reference points ref.points
.
The emoaIndHV
function computes the hypervolume indicator
Hyp(X, R, r). Given a set of points X (points
), another set of reference
points R (ref.points
) (which maybe the true Pareto front) and a reference
point r (ref.point
) it is defined as Hyp(X, R, r) = HV(R, r) - HV(X, r).
Function emoaIndR1
, emoaIndR2
and emoaIndR3
calculate the
R1, R2 and R3 indicator respectively.
Function emoaIndMD
computes the minimum distance indicator, i.e., the minimum
Euclidean distance between two points of the set points
while function
emoaIndM1
determines the mean Euclidean distance between points
and points from a reference set ref.points
.
Function emoaIndC
calculates the coverage of the sets points
(A) and
ref.points
(B). This is the ratio of points in B which are dominated by
at least one solution in A.
emoaIndONVG
calculates the “Overall Non-dominated Vector Generation”
indicator. Despite its complicated name it is just the number of non-dominated points
in points
.
Functions emoaIndSP
and emoaIndDelta
calculate spacing indicators.
The former was proposed by Schott: first calculate the sum of squared distances
between minimal distancesof points to all other points and the mean of these minimal
distance. Next, normalize by the number of points minus 1 and finally calculate the
square root. In contrast, Delta-indicator
emoaIndEps(points, ref.points, ...)emoaIndHV(points, ref.points, ref.point = NULL, ...)
emoaIndR1(
points,
ref.points,
ideal.point = NULL,
nadir.point = NULL,
lambda = NULL,
utility = "tschebycheff",
...
)
emoaIndR2(
points,
ref.points,
ideal.point = NULL,
nadir.point = NULL,
lambda = NULL,
utility = "tschebycheff",
...
)
emoaIndR3(
points,
ref.points,
ideal.point = NULL,
nadir.point = NULL,
lambda = NULL,
utility = "tschebycheff",
...
)
emoaIndMD(points, ...)
emoaIndC(points, ref.points, ...)
emoaIndM1(points, ref.points, ...)
emoaIndONVG(points, ...)
emoaIndGD(
points,
ref.points,
p = 1,
normalize = FALSE,
dist.fun = computeEuclideanDistance,
...
)
emoaIndIGD(
points,
ref.points,
p = 1,
normalize = FALSE,
dist.fun = computeEuclideanDistance,
...
)
emoaIndDeltap(
points,
ref.points,
p = 1,
normalize = FALSE,
dist.fun = computeEuclideanDistance,
...
)
emoaIndSP(points, ...)
emoaIndDelta(points, ...)
[numeric(1)
] Epsilon indicator.
[matrix
]
Matrix of points.
[matrix
]
Set of reference points.
[any]
Not used at the moment.
[numeric
]
A single reference point used, e.g., for the computation of the hypervolume
indicator via emoaIndHV
. If NULL
the
nadir point of the union of the points
and ref.points
is used.
[numeric
]
The utopia point of the true Pareto front, i.e., each component of the point
contains the best value if the other objectives are neglected.
[numeric
]
Nadir point of the true Pareto front.
[integer(1)
]
Number of weight vectors to use in estimating the utility function.
[character(1)
]
Name of the utility function to use. Must be one of “weightedsum”,
“tschebycheff” or “augmented tschbycheff”.
[numeric(1)
]
Parameter p of the average Hausdoff metric.
Default is 1.
[logical(1)
]
Should the front be normalized on basis of B
?
Default is FALSE
.
[matrix
]
Distance function to compute distance between points x and y. Expects a single
numeric vector d with the coordinate-wise differences di = (xi - yi).
Default is computeEuclideanDist
.
Other EMOA performance assessment tools:
approximateNadirPoint()
,
approximateRefPoints()
,
approximateRefSets()
,
computeDominanceRanking()
,
makeEMOAIndicator()
,
niceCellFormater()
,
normalize()
,
plotDistribution()
,
plotFront()
,
plotScatter2d()
,
plotScatter3d()
,
toLatex()