ec.simple
Class SimpleEvolutionState

java.lang.Object
  extended by ec.EvolutionState
      extended by ec.simple.SimpleEvolutionState
All Implemented Interfaces:
Setup, Singleton, java.io.Serializable

public class SimpleEvolutionState
extends EvolutionState

A SimpleEvolutionState is an EvolutionState which implements a simple form of generational evolution.

First, all the individuals in the population are created. (A)Then all individuals in the population are evaluated. Then the population is replaced in its entirety with a new population of individuals bred from the old population. Goto (A).

Evolution stops when an ideal individual is found (if quitOnRunComplete is set to true), or when the number of generations (loops of (A)) exceeds the parameter value numGenerations. Each generation the system will perform garbage collection and checkpointing, if the appropriate parameters were set.

This approach can be readily used for most applications of Genetic Algorithms and Genetic Programming.

Version:
1.0
Author:
Sean Luke
See Also:
Serialized Form

Field Summary
 boolean setupPerformed
          Set to true if the state has already been set up.
 
Fields inherited from class ec.EvolutionState
breeder, breedthreads, C_STARTED_FRESH, C_STARTED_FROM_CHECKPOINT, checkpoint, checkpointModulo, checkpointPrefix, context_, evalthreads, evaluator, exchanger, finisher, generation, initializer, job, numGenerations, output, P_BREEDER, P_CHECKPOINT, P_CHECKPOINTMODULO, P_CHECKPOINTPREFIX, P_EVALUATOR, P_EXCHANGER, P_FINISHER, P_GENERATIONS, P_INITIALIZER, P_QUITONRUNCOMPLETE, P_STATISTICS, parameters, population, quitOnRunComplete, R_FAILURE, R_NOTDONE, R_SUCCESS, random, randomSeedOffset, runtimeArguments, statistics
 
Constructor Summary
SimpleEvolutionState()
           
 
Method Summary
 int evolve()
           
 void finish(int result)
           
 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.
 void startFresh()
           
 
Methods inherited from class ec.EvolutionState
performCheckpoint, resetFromCheckpoint, run, startFromCheckpoint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

setupPerformed

public transient boolean setupPerformed
Set to true if the state has already been set up.

Constructor Detail

SimpleEvolutionState

public SimpleEvolutionState()
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 EvolutionState

startFresh

public void startFresh()
Overrides:
startFresh in class EvolutionState

evolve

public int evolve()
Overrides:
evolve in class EvolutionState
Throws:
java.lang.InternalError

finish

public void finish(int result)
Overrides:
finish in class EvolutionState
Parameters:
result -