ec.es
Class MuPlusLambdaBreeder

java.lang.Object
  |
  +--ec.Breeder
        |
        +--ec.es.MuCommaLambdaBreeder
              |
              +--ec.es.MuPlusLambdaBreeder
All Implemented Interfaces:
ESBreederForm, java.io.Serializable, Setup, Singleton

public class MuPlusLambdaBreeder
extends MuCommaLambdaBreeder

MuPlusLambdaBreeder 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. Note that MuPlusLambdaBreeder increases subpopulation sizes by their mu values in the second generation and keep them at that size thereafter. For more information, see the ESEvolutionState class documentation.

See Also:
Serialized Form

Constructor Summary
MuPlusLambdaBreeder()
           
 
Method Summary
 Population postProcess(Population newpop, Population oldpop, ESEvolutionState state)
          A hook for Mu+Lambda, not used in Mu,Lambda
 Population setToMuPlusLambda(Population pop, ESEvolutionState state)
          Sets all subpopulations in pop to the expected mu+lambda size.
 
Methods inherited from class ec.es.MuCommaLambdaBreeder
breedPopChunk, breedPopulation, childBetter, setToLambda, setup
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MuPlusLambdaBreeder

public MuPlusLambdaBreeder()
Method Detail

setToMuPlusLambda

public Population setToMuPlusLambda(Population pop,
                                    ESEvolutionState state)
Sets all subpopulations in pop to the expected mu+lambda size. Does not fill new slots with individuals.

postProcess

public Population postProcess(Population newpop,
                              Population oldpop,
                              ESEvolutionState state)
Description copied from class: MuCommaLambdaBreeder
A hook for Mu+Lambda, not used in Mu,Lambda
Overrides:
postProcess in class MuCommaLambdaBreeder