public class SimplicityUselessNodes extends TreeFitnessAbstract
TreeFitnessAbstract.TreeFitnessGUISettingsAbstract<F extends TreeFitnessAbstract>, TreeFitnessAbstract.TreeFitnessGUISettingsEmpty<F extends TreeFitnessAbstract>
Modifier and Type | Field and Description |
---|---|
static TreeFitnessInfo |
info |
Constructor and Description |
---|
SimplicityUselessNodes() |
Modifier and Type | Method and Description |
---|---|
double |
getFitness(NAryTree candidate,
java.util.List<? extends NAryTree> population)
Calculates a fitness score for the given candidate.
|
TreeFitnessInfo |
getInfo()
Returns the STATIC info for the metric instance
|
static boolean |
isUselessNode(NAryTree tree,
int n)
Tests if the given node in the tree is a useless node.
|
static double |
uselessNodesRatio(NAryTree tree) |
deepClone, deepClone, getGUISettingsPanel, instantiateTreeFitness, isNatural
public static final TreeFitnessInfo info
public double getFitness(NAryTree candidate, java.util.List<? extends NAryTree> population)
FitnessEvaluator
FitnessEvaluator.isNatural()
). This method must always
return a value greater than or equal to zero. Framework behaviour is
undefined for negative fitness scores.candidate
- The candidate solution to calculate fitness for.population
- The entire population. This will include the specified
candidate. This is provided for fitness evaluators that
evaluate individuals in the context of the population that
they are part of (e.g. a program that evolves game-playing
strategies may wish to play each strategy against each of the
others). This parameter can be ignored by simple fitness
evaluators. When iterating over the population, a simple
reference equality check (==) can be used to identify which
member of the population is the specified candidate.public TreeFitnessInfo getInfo()
TreeFitnessAbstract
getInfo
in class TreeFitnessAbstract
public static double uselessNodesRatio(NAryTree tree)
public static boolean isUselessNode(NAryTree tree, int n)
tree
- NAryTree to inspectn
- Node in the tree to evaluate