Class SelectGenotype<V>

  • Type Parameters:
    V - the type of elements
    All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<java.lang.Integer>, java.util.Collection<java.lang.Integer>, java.util.List<java.lang.Integer>, java.util.RandomAccess, Genotype, ListGenotype<java.lang.Integer>

    public class SelectGenotype<V>
    extends IntegerGenotype

    The SelectGenotype selects for each index an element from the given list.

    Example problem: Draw five times from an urn which contains three balls and return the ball after each draw.
    Example usage:

     SelectGenotype<Ball> genotype = new SelectGenotype<Ball>(Arrays.asList(ball1, ball2, ball3));
     genotype.init(new Random(), 5);
     
    Example instance: [0=ball3, 1=ball2, 2=ball2, 3=ball1, 4=ball3]
    Example search space size: 35

    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.List<V> values  
      • Fields inherited from class java.util.AbstractList

        modCount
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      V getValue​(int index)
      Returns the element value of the index.
      <G extends Genotype>
      G
      newInstance()
      Constructs a new (empty) instance of this Genotype.
      • Methods inherited from class java.util.ArrayList

        add, add, addAll, addAll, clear, clone, contains, ensureCapacity, equals, forEach, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
      • Methods inherited from class java.util.AbstractCollection

        containsAll, toString
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Collection

        parallelStream, removeIf, stream, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface java.util.List

        add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray
    • Field Detail

      • values

        protected final java.util.List<V> values
    • Constructor Detail

      • SelectGenotype

        public SelectGenotype​(java.util.List<V> values)
        Constructs a SelectGenotype.
        Parameters:
        values - the elements to be selected
      • SelectGenotype

        public SelectGenotype​(V[] values)
        Constructs a SelectGenotype.
        Parameters:
        values - the elements to be selected
    • Method Detail

      • getValue

        public V getValue​(int index)
        Returns the element value of the index.
        Parameters:
        index - the index
        Returns:
        the element
      • newInstance

        public <G extends Genotype> G newInstance()
        Description copied from interface: Genotype
        Constructs a new (empty) instance of this Genotype.
        Specified by:
        newInstance in interface Genotype
        Overrides:
        newInstance in class IntegerGenotype
        Type Parameters:
        G - the type of genotype for an implicit cast
        Returns:
        new instance of the genotype