Documentation of 'ec.vector.IntegerVectorSpecies' Java class
IntegerVectorSpecies
ec.vector

Class IntegerVectorSpecies

  • All Implemented Interfaces:
    Prototype, Setup, java.io.Serializable, java.lang.Cloneable
    Direct Known Subclasses:
    GESpecies


    public class IntegerVectorSpecies
    extends VectorSpecies
    IntegerVectorSpecies is a subclass of VectorSpecies with special constraints for integral vectors, namely ByteVectorIndividual, ShortVectorIndividual, IntegerVectorIndividual, and LongVectorIndividual.

    IntegerVectorSpecies can specify a number of parameters globally, per-segment, and per-gene. See VectorSpecies for information on how to this works.

    IntegerVectorSpecies defines a minimum and maximum gene value. These values are used during initialization and, depending on whether mutation-bounded is true, also during various mutation algorithms to guarantee that the gene value will not exceed these minimum and maximum bounds.

    IntegerVectorSpecies provides support for two ways of mutating a gene.

    • reset Replacing the gene's value with a value uniformly drawn from the gene's range (the default behavior).
    • random-walkReplacing the gene's value by performing a random walk starting at the gene value. The random walk either adds 1 or subtracts 1 (chosen at random), then does a coin-flip to see whether to continue the random walk. When the coin-flip finally comes up false, the gene value is set to the current random walk position.

    IntegerVectorSpecies performs gene initialization by resetting the gene.

    Parameters

    base.min-gene   or
    base.segment.segment-number.min-gene   or
    base.min-gene.gene-number
    long (default=0)
    (the minimum gene value)
     
    base.max-gene   or
    base.segment.segment-number.max-gene   or
    base.max-gene.gene-number
    long >= base.min-gene
    (the maximum gene value)
     
    base.mutation-type   or
    base.segment.segment-number.mutation-type   or
    base.mutation-prob.gene-number
    reset or random-walk (default=reset)
    (the mutation type)
     
    base.random-walk-probability   or
    base.segment.segment-number.random-walk-probability   or
    base.random-walk-probability.gene-number
    0.0 <= double <= 1.0
    (the probability that a random walk will continue. Random walks go up or down by 1.0 until the coin flip comes up false.)
     
    base.mutation-bounded   or
    base.segment.segment-number.mutation-bounded   or
    base.mutation-bounded.gene-number
    boolean (default=true)
    (whether mutation is restricted to only being within the min/max gene values. Does not apply to SimulatedBinaryCrossover (which is always bounded))
    See Also:
    Serialized Form
    • Constructor Detail

      • IntegerVectorSpecies

        public IntegerVectorSpecies()
    • Method Detail

      • maxGene

        public long maxGene(int gene)
      • minGene

        public long minGene(int gene)
      • mutationType

        public int mutationType(int gene)
      • randomWalkProbability

        public double randomWalkProbability(int gene)
      • mutationIsBounded

        public boolean mutationIsBounded(int gene)
      • inNumericalTypeRange

        public boolean inNumericalTypeRange(double geneVal)
      • inNumericalTypeRange

        public boolean inNumericalTypeRange(long geneVal)
      • setup

        public void setup(EvolutionState state,
                          Parameter base)
        Description copied from class: Species
        The default version of setup(...) loads requested pipelines and calls setup(...) on them and normalizes their probabilities. If your individual prototype might need to know special things about the species (like parameters stored in it), then when you override this setup method, you'll need to set those parameters BEFORE you call super.setup(...), because the setup(...) code in Species sets up the prototype.
        Specified by:
        setup in interface Prototype
        Specified by:
        setup in interface Setup
        Overrides:
        setup in class VectorSpecies
        See Also:
        Prototype.setup(EvolutionState,Parameter)

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.