public class ObjectiveComparatorHelper
extends java.lang.Object
TrajectoryFitness
instances can be added to an
instance of this class, that it can sort them.Constructor and Description |
---|
ObjectiveComparatorHelper(IObjective[][] leveledObjectives) |
Modifier and Type | Method and Description |
---|---|
void |
addTrajectoryFitness(TrajectoryFitness trajectoryFitness)
Adds a
TrajectoryFitness to an inner list to compare later. |
void |
clearTrajectoryFitnesses()
Clears the inner
TrajectoryFitness list. |
int |
compare(Fitness o1,
Fitness o2)
Compares two fitnesses based on hierarchical dominance.
|
static void |
crowdingDistanceAssignment(java.util.List<TrajectoryFitness> front,
IObjective[][] leveledObjectives)
Executes the crowding distance assignment for the specified front.
|
java.util.List<? extends java.util.List<TrajectoryFitness>> |
getFronts()
Returns the previously added
TrajectoryFitness instances in fronts. |
java.util.List<TrajectoryFitness> |
getParetoFront()
Returns the pareto front of the previously added
TrajectoryFitness . |
TrajectoryFitness |
getRandomBest()
Returns a random
TrajectoryFitness from the pareto front. |
java.util.List<TrajectoryFitness> |
getTrajectoryFitnesses()
Returns the inner
TrajectoryFitness list. |
void |
setComputeCrowdingDistance(boolean computeCrowdingDistance) |
public ObjectiveComparatorHelper(IObjective[][] leveledObjectives)
public void setComputeCrowdingDistance(boolean computeCrowdingDistance)
public int compare(Fitness o1, Fitness o2)
o2
is a better
solution (o2
dominates o1
), 1 if the first parameter o1
is better (o1
dominates
o2
) and returns 0 if they are non-dominating each other.public void addTrajectoryFitness(TrajectoryFitness trajectoryFitness)
TrajectoryFitness
to an inner list to compare later.trajectoryFitness
- public void clearTrajectoryFitnesses()
TrajectoryFitness
list.public java.util.List<TrajectoryFitness> getTrajectoryFitnesses()
TrajectoryFitness
list.public TrajectoryFitness getRandomBest()
TrajectoryFitness
from the pareto front.public java.util.List<TrajectoryFitness> getParetoFront()
TrajectoryFitness
.public java.util.List<? extends java.util.List<TrajectoryFitness>> getFronts()
TrajectoryFitness
instances in fronts.public static void crowdingDistanceAssignment(java.util.List<TrajectoryFitness> front, IObjective[][] leveledObjectives)
front
-