Package org.moeaframework.problem.CDTLZ
Class ConvexDTLZ2
java.lang.Object
org.moeaframework.problem.AbstractProblem
org.moeaframework.problem.DTLZ.DTLZ
org.moeaframework.problem.DTLZ.DTLZ2
org.moeaframework.problem.CDTLZ.ConvexDTLZ2
- All Implemented Interfaces:
AutoCloseable
,Problem
,AnalyticalProblem
- Direct Known Subclasses:
ConvexC2_DTLZ2
The convex DTLZ2 problem.
-
Field Summary
Fields inherited from class org.moeaframework.problem.AbstractProblem
numberOfConstraints, numberOfObjectives, numberOfVariables
-
Constructor Summary
ConstructorDescriptionConvexDTLZ2
(int numberOfObjectives) Constructs a convex DTLZ2 test problem with the specified number of objectives.ConvexDTLZ2
(int numberOfVariables, int numberOfObjectives) Constructs a convex DTLZ2 test problem with the specified number of variables and objectives. -
Method Summary
Methods inherited from class org.moeaframework.problem.DTLZ.DTLZ
g1, g2, generateAt, getName, newSolution
Methods inherited from class org.moeaframework.problem.AbstractProblem
close, getNumberOfConstraints, getNumberOfObjectives, getNumberOfVariables
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.moeaframework.core.Problem
close, getName, getNumberOfConstraints, getNumberOfObjectives, getNumberOfVariables, isType, newSolution
-
Constructor Details
-
ConvexDTLZ2
public ConvexDTLZ2(int numberOfVariables, int numberOfObjectives) Constructs a convex DTLZ2 test problem with the specified number of variables and objectives.- Parameters:
numberOfVariables
- the number of variables for this problemnumberOfObjectives
- the number of objectives for this problem
-
ConvexDTLZ2
public ConvexDTLZ2(int numberOfObjectives) Constructs a convex DTLZ2 test problem with the specified number of objectives. This is equivalent to callingnew DTLZ2(numberOfObjectives+9, numberOfObjectives)
.- Parameters:
numberOfObjectives
- the number of objectives for this problem
-
-
Method Details
-
evaluate
Description copied from interface:Problem
Evaluates the solution, updating the solution's objectives in place. Algorithms must explicitly call this method when appropriate to evaluate new solutions or reevaluate modified solutions. -
generate
Description copied from interface:AnalyticalProblem
Returns a randomly-generated solution using the analytical solution to this problem. The exact behavior of this method depends on the implementation, but in general (1) the solutions should be non-dominated and (2) spread uniformly across the Pareto front.It is not always possible to guarantee these conditions. For example, a discontinuous / disconnected Pareto surface could generate dominated solutions, and a biased problem could result in non-uniform distributions. Therefore, we recommend callers filter solutions through a
NondominatedPopulation
, in particular one that maintains a spread of solutions.Furthermore, some implementations may not provide the corresponding decision variables for the solution. These implementations should indicate this by returning a solution with
0
decision variables.- Specified by:
generate
in interfaceAnalyticalProblem
- Overrides:
generate
in classDTLZ2
- Returns:
- a randomly-generated Pareto optimal solution to this problem
-