Package org.apache.commons.math.genetics
Class BinaryChromosome
- java.lang.Object
-
- org.apache.commons.math.genetics.Chromosome
-
- org.apache.commons.math.genetics.AbstractListChromosome<java.lang.Integer>
-
- org.apache.commons.math.genetics.BinaryChromosome
-
- All Implemented Interfaces:
java.lang.Comparable<Chromosome>,Fitness
public abstract class BinaryChromosome extends AbstractListChromosome<java.lang.Integer>
Chromosome represented by a vector of 0s and 1s.- Since:
- 2.0
- Version:
- $Revision: 811685 $ $Date: 2009-09-05 19:36:48 +0200 (sam. 05 sept. 2009) $
-
-
Constructor Summary
Constructors Constructor Description BinaryChromosome(java.lang.Integer[] representation)Constructor.BinaryChromosome(java.util.List<java.lang.Integer> representation)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckValidity(java.util.List<java.lang.Integer> chromosomeRepresentation)Asserts thatrepresentationcan represent a valid chromosome.protected booleanisSame(Chromosome another)Returnstrueiffanotherhas the same representation and therefore the same fitness.static java.util.List<java.lang.Integer>randomBinaryRepresentation(int length)Returns a representation of a random binary array of lengthlength.-
Methods inherited from class org.apache.commons.math.genetics.AbstractListChromosome
getLength, getRepresentation, newFixedLengthChromosome, toString
-
Methods inherited from class org.apache.commons.math.genetics.Chromosome
compareTo, findSameChromosome, getFitness, searchForFitnessUpdate
-
-
-
-
Constructor Detail
-
BinaryChromosome
public BinaryChromosome(java.util.List<java.lang.Integer> representation)
Constructor.- Parameters:
representation- list of {0,1} values representing the chromosome
-
BinaryChromosome
public BinaryChromosome(java.lang.Integer[] representation)
Constructor.- Parameters:
representation- array of {0,1} values representing the chromosome
-
-
Method Detail
-
checkValidity
protected void checkValidity(java.util.List<java.lang.Integer> chromosomeRepresentation) throws InvalidRepresentationExceptionAsserts thatrepresentationcan represent a valid chromosome.- Specified by:
checkValidityin classAbstractListChromosome<java.lang.Integer>- Parameters:
chromosomeRepresentation- representation of the chromosome- Throws:
InvalidRepresentationException- iff therepresentationcan not represent a valid chromosome
-
randomBinaryRepresentation
public static java.util.List<java.lang.Integer> randomBinaryRepresentation(int length)
Returns a representation of a random binary array of lengthlength.- Parameters:
length- length of the array- Returns:
- a random binary array of length
length
-
isSame
protected boolean isSame(Chromosome another)
Returnstrueiffanotherhas the same representation and therefore the same fitness. By default, it returns false -- override it in your implementation if you need it.- Overrides:
isSamein classChromosome- Parameters:
another- chromosome to compare- Returns:
- true if
anotheris equivalent to this chromosome
-
-