org.opt4j.core.genotype
Class SelectMapGenotype<K,V>

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.ArrayList<java.lang.Integer>
              extended by org.opt4j.core.genotype.IntegerGenotype
                  extended by org.opt4j.core.genotype.SelectMapGenotype<K,V>
Type Parameters:
K - the type of keys
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>, MapGenotype<K,V>

public class SelectMapGenotype<K,V>
extends IntegerGenotype
implements MapGenotype<K,V>

The SelectGenotype selects for each key an element from a given list.

See Also:
Serialized Form

Nested Class Summary
protected static class SelectMapGenotype.SelectBounds<O,P>
           
 
Field Summary
protected  java.util.List<K> keys
           
protected  java.util.Map<K,java.util.List<V>> values
           
 
Fields inherited from class org.opt4j.core.genotype.IntegerGenotype
bounds
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
SelectMapGenotype(java.util.List<K> keys, java.util.List<V> values)
          Constructs a SelectMapGenotype.
SelectMapGenotype(java.util.List<K> keys, java.util.Map<K,java.util.List<V>> values)
          Constructs a SelectMapGenotype.
 
Method Summary
 boolean containsKey(K key)
          Returns true if the key is contained.
 int getIndexOf(K key)
          Returns the index of the key.
 java.util.Collection<K> getKeys()
          Return all keys.
 V getValue(K key)
          Returns the value for the specified key.
 void init(java.util.Random random)
          Initialize this genotype with random values based on the size of the key set.
 void init(java.util.Random random, int n)
          Not supported.
<G extends Genotype>
G
newInstance()
          Constructs a new (empty) instance of this Genotype.
 void setValue(K key, V value)
          Sets the value for the specified key.
 java.lang.String toString()
           
 
Methods inherited from class org.opt4j.core.genotype.IntegerGenotype
getLowerBound, getUpperBound
 
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, get, indexOf, isEmpty, lastIndexOf, remove, remove, removeRange, set, size, toArray, toArray, trimToSize
 
Methods inherited from class java.util.AbstractList
equals, hashCode, iterator, listIterator, listIterator, subList
 
Methods inherited from class java.util.AbstractCollection
containsAll, removeAll, retainAll
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.opt4j.core.Genotype
size
 
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, retainAll, set, size, subList, toArray, toArray
 

Field Detail

keys

protected final java.util.List<K> keys

values

protected final java.util.Map<K,java.util.List<V>> values
Constructor Detail

SelectMapGenotype

public SelectMapGenotype(java.util.List<K> keys,
                         java.util.Map<K,java.util.List<V>> values)
Constructs a SelectMapGenotype.

Parameters:
keys - the keys
values - the values

SelectMapGenotype

public SelectMapGenotype(java.util.List<K> keys,
                         java.util.List<V> values)
Constructs a SelectMapGenotype. Here, each key has the same target list of element values.

Parameters:
keys - the keys
values - the values
Method Detail

init

public void init(java.util.Random random)
Initialize this genotype with random values based on the size of the key set.

Parameters:
random - the random number generator

init

public void init(java.util.Random random,
                 int n)
Not supported. Use init(Random) instead.

Overrides:
init in class IntegerGenotype
Parameters:
random - the random number generator
n - the number of elements in the resulting genotype
See Also:
IntegerGenotype.init(java.util.Random, int)

containsKey

public boolean containsKey(K key)
Description copied from interface: MapGenotype
Returns true if the key is contained.

Specified by:
containsKey in interface MapGenotype<K,V>
Parameters:
key - the key
Returns:
true if the key is contained

getIndexOf

public int getIndexOf(K key)
Description copied from interface: MapGenotype
Returns the index of the key.

Specified by:
getIndexOf in interface MapGenotype<K,V>
Parameters:
key - the key
Returns:
the index

getValue

public V getValue(K key)
Description copied from interface: MapGenotype
Returns the value for the specified key.

Specified by:
getValue in interface MapGenotype<K,V>
Parameters:
key - the key
Returns:
the value
See Also:
MapGenotype.setValue(K, V)

setValue

public void setValue(K key,
                     V value)
Description copied from interface: MapGenotype
Sets the value for the specified key.

Specified by:
setValue in interface MapGenotype<K,V>
Parameters:
key - the key
value - the value
See Also:
MapGenotype.getValue(K)

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

toString

public java.lang.String toString()
Overrides:
toString in class java.util.AbstractCollection<java.lang.Integer>

getKeys

public java.util.Collection<K> getKeys()
Description copied from interface: MapGenotype
Return all keys.

Specified by:
getKeys in interface MapGenotype<K,V>
Returns:
all keys