Package org.moeaframework.core.indicator
Class RIndicator
java.lang.Object
org.moeaframework.core.indicator.NormalizedIndicator
org.moeaframework.core.indicator.RIndicator
- All Implemented Interfaces:
Indicator
- Direct Known Subclasses:
R1Indicator
,R2Indicator
,R3Indicator
Abstract class for implementing R indicator functions.
References:
- Hansen, M. P. and A. Jaszkiewicz (1998). Evaluating the Quality of Approximations to the Non-dominated Set. IMM Technical Report IMM-REP-1998-7.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Chebyshev (also referred to as Chebychev or Tchebycheff) utility function.static class
Linear-weighted sum utility function.static interface
Interface for defining utility functions. -
Field Summary
Modifier and TypeFieldDescriptionprotected RIndicator.UtilityFunction
The utility function used by the R2 calculation.protected double[][]
The weights, typically uniformly distributed.Fields inherited from class org.moeaframework.core.indicator.NormalizedIndicator
problem
-
Constructor Summary
ConstructorDescriptionRIndicator
(Problem problem, int subdivisions, NondominatedPopulation referenceSet, Normalizer normalizer, RIndicator.UtilityFunction utilityFunction) Constructs a new R indicator using the specified utility function. -
Method Summary
Modifier and TypeMethodDescriptiondouble
expectedUtility
(NondominatedPopulation population) Computes the expected utility for the given population.static int
getDefaultSubdivisions
(Problem problem) Returns the default number of subdivisions for a given problem.Methods inherited from class org.moeaframework.core.indicator.NormalizedIndicator
getNormalizedReferenceSet, normalize
-
Field Details
-
utilityFunction
The utility function used by the R2 calculation. -
weights
protected double[][] weightsThe weights, typically uniformly distributed.
-
-
Constructor Details
-
RIndicator
public RIndicator(Problem problem, int subdivisions, NondominatedPopulation referenceSet, Normalizer normalizer, RIndicator.UtilityFunction utilityFunction) Constructs a new R indicator using the specified utility function.- Parameters:
problem
- the problemsubdivisions
- the number of subdivisions along each objectivereferenceSet
- the reference setnormalizer
- the user-provided normalizer, ornull
if the default is usedutilityFunction
- the utility function
-
-
Method Details
-
expectedUtility
Computes the expected utility for the given population.- Parameters:
population
- the population- Returns:
- the expected utility
-
getDefaultSubdivisions
Returns the default number of subdivisions for a given problem. The defaults, for an M objective problem, are:- if M=2, then 500
- if M=3, then 30
- if M=4, then 12
- if M=5, then 8
- else 3
- Parameters:
problem
- the problem- Returns:
- the default number of subdivisions for a given problem
-