ec.gp.koza
Class KozaStatistics

java.lang.Object
  extended by ec.Statistics
      extended by ec.gp.koza.KozaStatistics
All Implemented Interfaces:
Setup, Singleton, SteadyStateStatisticsForm, java.io.Serializable
Direct Known Subclasses:
AntStatistics, EdgeStatistics, LawnmowerStatistics

public class KozaStatistics
extends Statistics
implements SteadyStateStatisticsForm

A simple Koza-style statistics generator. Prints the mean fitness (raw,adjusted,hits) and best individual of each generation. At the end, prints the best individual of the run and the number of individuals processed.

If gather-full is true, then final timing information, number of nodes and depths of trees, approximate final memory utilization, etc. are also given.

Compressed files will be overridden on restart from checkpoint; uncompressed files will be appended on restart.

KozaStatistics implements a simple version of steady-state statistics in the same fashion that SimpleStatistics does: if it quits before a generation boundary, it will include the best individual discovered, even if the individual was discovered after the last boundary. This is done by using individualsEvaluatedStatistics(...) to update best-individual-of-generation in addition to doing it in postEvaluationStatistics(...).

Parameters

base.gzip
boolean
(whether or not to compress the file (.gz suffix added)
base.file
String (a filename), or nonexistant (signifies stdout)
(the log for statistics)
base.gather-full
bool = true or false (default)
(should we full statistics on individuals (will run slower, though the slowness is due to off-line processing that won't mess up timings)

Author:
Sean Luke
See Also:
Serialized Form

Field Summary
 Individual[] best_of_run
          The best individual we've found so far
static java.lang.String P_COMPRESS
          compress?
static java.lang.String P_FULL
           
static java.lang.String P_STATISTICS_FILE
          log file parameter
 int statisticslog
          The Statistics' log
 
Fields inherited from class ec.Statistics
children, P_CHILD, P_NUMCHILDREN
 
Constructor Summary
KozaStatistics()
           
 
Method Summary
 void finalStatistics(EvolutionState state, int result)
          Logs the best individual of the run.
 void individualsEvaluatedStatistics(SteadyStateEvolutionState state)
          Steady State only: loads any additional post-generation boundary stragglers into best_of_run.
 void postBreedingStatistics(EvolutionState state)
          GENERATIONAL: Called immediately after breeding occurs.
 void postEvaluationStatistics(EvolutionState state)
          GENERATIONAL: Called immediately after evaluation occurs.
 void postInitializationStatistics(EvolutionState state)
          GENERATIONAL: Called immediately after population initialization occurs.
 void preBreedingStatistics(EvolutionState state)
          GENERATIONAL: Called immediately before breeding occurs.
 void preEvaluationStatistics(EvolutionState state)
          GENERATIONAL: Called immediately before evaluation occurs.
 void preInitializationStatistics(EvolutionState state)
          Called immediately before population initialization 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.
 
Methods inherited from class ec.Statistics
generationBoundaryStatistics, individualsBredStatistics, individualsEvaluatedStatistics, postCheckpointStatistics, postInitialEvaluationStatistics, postPostBreedingExchangeStatistics, postPreBreedingExchangeStatistics, preCheckpointStatistics, preInitialEvaluationStatistics, prePostBreedingExchangeStatistics, prePreBreedingExchangeStatistics
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface ec.steadystate.SteadyStateStatisticsForm
generationBoundaryStatistics, individualsBredStatistics, individualsEvaluatedStatistics, postInitialEvaluationStatistics, preInitialEvaluationStatistics
 

Field Detail

P_STATISTICS_FILE

public static final java.lang.String P_STATISTICS_FILE
log file parameter

See Also:
Constant Field Values

statisticslog

public int statisticslog
The Statistics' log


best_of_run

public Individual[] best_of_run
The best individual we've found so far


P_COMPRESS

public static final java.lang.String P_COMPRESS
compress?

See Also:
Constant Field Values

P_FULL

public static final java.lang.String P_FULL
See Also:
Constant Field Values
Constructor Detail

KozaStatistics

public KozaStatistics()
Method Detail

setup

public void setup(EvolutionState state,
                  Parameter base)
Description copied from interface: Setup
Sets up the object by reading it from the parameters stored in state, built off of the parameter base base. If an ancestor implements this method, be sure to call super.setup(state,base); before you do anything else.

Specified by:
setup in interface Setup
Overrides:
setup in class Statistics

preInitializationStatistics

public void preInitializationStatistics(EvolutionState state)
Description copied from class: Statistics
Called immediately before population initialization occurs.

Specified by:
preInitializationStatistics in interface SteadyStateStatisticsForm
Overrides:
preInitializationStatistics in class Statistics

postInitializationStatistics

public void postInitializationStatistics(EvolutionState state)
Description copied from class: Statistics
GENERATIONAL: Called immediately after population initialization occurs.

Overrides:
postInitializationStatistics in class Statistics

preBreedingStatistics

public void preBreedingStatistics(EvolutionState state)
Description copied from class: Statistics
GENERATIONAL: Called immediately before breeding occurs.

Overrides:
preBreedingStatistics in class Statistics

postBreedingStatistics

public void postBreedingStatistics(EvolutionState state)
Description copied from class: Statistics
GENERATIONAL: Called immediately after breeding occurs.

Overrides:
postBreedingStatistics in class Statistics

preEvaluationStatistics

public void preEvaluationStatistics(EvolutionState state)
Description copied from class: Statistics
GENERATIONAL: Called immediately before evaluation occurs.

Overrides:
preEvaluationStatistics in class Statistics

postEvaluationStatistics

public void postEvaluationStatistics(EvolutionState state)
Description copied from class: Statistics
GENERATIONAL: Called immediately after evaluation occurs.

Overrides:
postEvaluationStatistics in class Statistics

individualsEvaluatedStatistics

public void individualsEvaluatedStatistics(SteadyStateEvolutionState state)
Steady State only: loads any additional post-generation boundary stragglers into best_of_run.


finalStatistics

public void finalStatistics(EvolutionState state,
                            int result)
Logs the best individual of the run.

Specified by:
finalStatistics in interface SteadyStateStatisticsForm
Overrides:
finalStatistics in class Statistics