ec.es
Class MuCommaLambdaBreeder

java.lang.Object
  |
  +--ec.Breeder
        |
        +--ec.es.MuCommaLambdaBreeder
Direct Known Subclasses:
MuPlusLambdaBreeder

public class MuCommaLambdaBreeder
extends Breeder
implements ESBreederForm

MuCommaLambdaBreeder is a Breeder which, together with ESEvolutionState and ESSelection, implements the (mu,lambda) breeding strategy and gathers the comparison data you can use to implement a 1/5-rule mutation mechanism.

See Also:
Serialized Form

Constructor Summary
MuCommaLambdaBreeder()
           
 
Method Summary
 void breedPopChunk(Population newpop, ESEvolutionState state, int[][] bettercount, int[] numinds, int[] from, int threadnum)
          A private helper function for breedPopulation which breeds a chunk of individuals in a subpopulation for a given thread.
 Population breedPopulation(EvolutionState state)
          Breeds state.population, returning a new population.
 boolean childBetter(Population newpop, int subpopulation, int thread, ESEvolutionState ess)
           
 Population postProcess(Population newpop, Population oldpop, ESEvolutionState state)
          A hook for Mu+Lambda, not used in Mu,Lambda
 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 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MuCommaLambdaBreeder

public MuCommaLambdaBreeder()
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.

breedPopulation

public Population breedPopulation(EvolutionState state)
                           throws java.lang.CloneNotSupportedException
Description copied from class: Breeder
Breeds state.population, returning a new population. In general, state.population should not be modified.
Overrides:
breedPopulation in class Breeder

postProcess

public Population postProcess(Population newpop,
                              Population oldpop,
                              ESEvolutionState state)
A hook for Mu+Lambda, not used in Mu,Lambda

childBetter

public boolean childBetter(Population newpop,
                           int subpopulation,
                           int thread,
                           ESEvolutionState ess)

breedPopChunk

public void breedPopChunk(Population newpop,
                          ESEvolutionState state,
                          int[][] bettercount,
                          int[] numinds,
                          int[] from,
                          int threadnum)
                   throws java.lang.CloneNotSupportedException
A private helper function for breedPopulation which breeds a chunk of individuals in a subpopulation for a given thread. Although this method is declared public (for the benefit of a private helper class in this file), you should not call it.