jaga.evolve
Class BunchMutator

java.lang.Object
  |
  +--jaga.evolve.BunchMutator
All Implemented Interfaces:
GeneticOperator, java.io.Serializable

public class BunchMutator
extends java.lang.Object
implements GeneticOperator

A BunchMutator can mutate bits in a genotype per bunches. For example:

10000100001000010000

may be mutated to 1000011011100001000 if the bunchsize=alignmentsize=5.

This is useful for simulated high level representation mutations when the genotype->phenotype mapping is known.

See Also:
Serialized Form

Constructor Summary
BunchMutator(int pbunchSize)
          Creates new BunchMutator
BunchMutator(int pbunchSize, int pnrBunches)
           
BunchMutator(int pbunchSize, int pnrBunches, int palignmentSize)
           
BunchMutator(int pbunchSize, int pnrBunches, int palignmentSize, int palignmentOffset)
           
BunchMutator(int pbunchSize, int pnrBunches, int palignmentSize, int palignmentOffset, int plockedAlignments)
           
BunchMutator(int pbunchSize, int pnrBunches, int palignmentSize, int palignmentOffset, int plockedAlignments, int globalOffset)
          Complete constructor for a BunchMutator
 
Method Summary
 void operate(Selector selector, Population oldPopulation, Population newPopulation, int howMany)
          method that adds genotypes to the new population by extracting some from the old one and manipulating them in some way.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BunchMutator

public BunchMutator(int pbunchSize)
Creates new BunchMutator

BunchMutator

public BunchMutator(int pbunchSize,
                    int pnrBunches)

BunchMutator

public BunchMutator(int pbunchSize,
                    int pnrBunches,
                    int palignmentSize)

BunchMutator

public BunchMutator(int pbunchSize,
                    int pnrBunches,
                    int palignmentSize,
                    int palignmentOffset)

BunchMutator

public BunchMutator(int pbunchSize,
                    int pnrBunches,
                    int palignmentSize,
                    int palignmentOffset,
                    int plockedAlignments)

BunchMutator

public BunchMutator(int pbunchSize,
                    int pnrBunches,
                    int palignmentSize,
                    int palignmentOffset,
                    int plockedAlignments,
                    int globalOffset)
Complete constructor for a BunchMutator
Parameters:
pbunchSize - the size of the bunches to mutate
pnrBunches - how many bunches to mutate
palignmentSize - the size of aligned blocks at which to start a bunch
palignmentOffset - the offset within these blocks at which to start a bunch
plockedAlignments - the number of blocks starting from block 0 which shouldn`t be touched
Method Detail

operate

public void operate(Selector selector,
                    Population oldPopulation,
                    Population newPopulation,
                    int howMany)
method that adds genotypes to the new population by extracting some from the old one and manipulating them in some way.
Specified by:
operate in interface GeneticOperator
Parameters:
oldPopulation - in parameter having all the original genotypes
newPopulation - in/out parameter where the next generation of genotypes is being built
howMany - how many new genotypes to add to the new population

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object