public class Statistics extends java.lang.Object implements Singleton
There are lots of places where statistics might be nice to print out. These places are implemented as hooks in the Statistics object which you can override if you like; otherwise they call the default behavior. If you plan on allowing your Statistics subclass to contain children, you should remember to call the appropriate super.foo() if you override any foo() method.
While there are lots of hooks, various EvolutionState objects only implement a subset of them. You'll need to look at the EvolutionState code to see which ones are implemented to make sure that your statistics hooks are called appropriately!
Statistics objects should set up their statistics logs etc. during setup(...). Remember to make the log restartable in case of restarting from a checkpoint.
Steady-State Statistics. For convenience, Statistics contains default implementations of the SteadyStateStatisticsForm methods but does not implement SteadyStateStatisticsForm. This mostly is intended to keep SteadyStateStatistcsForm implementations from having to call functions on all their children: instead they can just call foo.super();
Parameters
base.num-children int >= 0 |
(number of child statistics objects) |
base.child.n classname, inherits or equals ec.Statistics |
(the class of child statistics object number n) |
Parameter bases
base.child.n | species (child statistics object number n) |
Modifier and Type | Field and Description |
---|---|
Statistics[] |
children |
static java.lang.String |
P_CHILD |
static java.lang.String |
P_MUZZLE |
static java.lang.String |
P_NUMCHILDREN |
static java.lang.String |
P_SILENT |
static java.lang.String |
P_SILENT_FILE |
static java.lang.String |
P_SILENT_PRINT |
boolean |
silentFile |
boolean |
silentPrint |
Constructor and Description |
---|
Statistics() |
Modifier and Type | Method and Description |
---|---|
void |
enteringInitialPopulationStatistics(SteadyStateEvolutionState state)
STEADY-STATE: called when we created an empty initial Population.
|
void |
enteringSteadyStateStatistics(int subpop,
SteadyStateEvolutionState state)
STEADY-STATE: called when a given Subpopulation is entering the Steady-State.
|
void |
finalStatistics(EvolutionState state,
int result)
Called immediately after the run has completed.
|
void |
generationBoundaryStatistics(EvolutionState state)
STEADY-STATE: called each time the generation count increments
|
void |
individualsBredStatistics(SteadyStateEvolutionState state,
Individual[] individuals)
STEADY-STATE: called each time new individuals are bred during the steady-state
process.
|
void |
individualsEvaluatedStatistics(SteadyStateEvolutionState state,
Individual[] newIndividuals,
Individual[] oldIndividuals,
int[] subpopulations,
int[] indices)
STEADY-STATE: called each time new individuals are evaluated during the steady-state
process.
|
void |
postBreedingStatistics(EvolutionState state)
GENERATIONAL: Called immediately after breeding occurs.
|
void |
postCheckpointStatistics(EvolutionState state)
Called immediately after checkpointing occurs.
|
void |
postEvaluationStatistics(EvolutionState state)
GENERATIONAL: Called immediately after evaluation occurs.
|
void |
postInitializationStatistics(EvolutionState state)
GENERATIONAL: Called immediately after population initialization occurs.
|
void |
postPostBreedingExchangeStatistics(EvolutionState state)
Called immediately after the post-breeding exchange occurs.
|
void |
postPreBreedingExchangeStatistics(EvolutionState state)
Called immediately after the pre-breeding exchange occurs.
|
void |
preBreedingStatistics(EvolutionState state)
GENERATIONAL: Called immediately before breeding occurs.
|
void |
preCheckpointStatistics(EvolutionState state)
Called immediately before checkpointing occurs.
|
void |
preEvaluationStatistics(EvolutionState state)
GENERATIONAL: Called immediately before evaluation occurs.
|
void |
preInitializationStatistics(EvolutionState state)
Called immediately before population initialization occurs.
|
void |
prePostBreedingExchangeStatistics(EvolutionState state)
Called immediately before the post-breeding exchange occurs.
|
void |
prePreBreedingExchangeStatistics(EvolutionState state)
Called immediately before the pre-breeding exchange occurs.
|
void |
setup(EvolutionState state,
Parameter base)
Sets up the object by reading it from the parameters stored
in state, built off of the parameter base base.
|
public static final java.lang.String P_NUMCHILDREN
public static final java.lang.String P_CHILD
public static final java.lang.String P_SILENT
public static final java.lang.String P_MUZZLE
public static final java.lang.String P_SILENT_PRINT
public static final java.lang.String P_SILENT_FILE
public Statistics[] children
public boolean silentFile
public boolean silentPrint
public void setup(EvolutionState state, Parameter base)
Setup
public void preInitializationStatistics(EvolutionState state)
public void postInitializationStatistics(EvolutionState state)
public void preCheckpointStatistics(EvolutionState state)
public void postCheckpointStatistics(EvolutionState state)
public void preEvaluationStatistics(EvolutionState state)
public void postEvaluationStatistics(EvolutionState state)
public void prePreBreedingExchangeStatistics(EvolutionState state)
public void postPreBreedingExchangeStatistics(EvolutionState state)
public void preBreedingStatistics(EvolutionState state)
public void postBreedingStatistics(EvolutionState state)
public void prePostBreedingExchangeStatistics(EvolutionState state)
public void postPostBreedingExchangeStatistics(EvolutionState state)
public void finalStatistics(EvolutionState state, int result)
public void enteringInitialPopulationStatistics(SteadyStateEvolutionState state)
public void enteringSteadyStateStatistics(int subpop, SteadyStateEvolutionState state)
public void individualsBredStatistics(SteadyStateEvolutionState state, Individual[] individuals)
public void individualsEvaluatedStatistics(SteadyStateEvolutionState state, Individual[] newIndividuals, Individual[] oldIndividuals, int[] subpopulations, int[] indices)
public void generationBoundaryStatistics(EvolutionState state)