## org.apache.commons.math.genetics
Class ListPopulation

    java.lang.Object
      org.apache.commons.math.genetics.ListPopulation

All Implemented Interfaces:
  java.lang.Iterable<Chromosome>, Population

Direct Known Subclasses:
  ElitisticListPopulation

    public abstract class ListPopulation

extends java.lang.Object
implements Population

Population of chromosomes represented by a `List`.

Since:
  2.0
Version:
  $Revision: 811685 $ $Date: 2009-09-05 13:36:48 -0400 (Sat, 05 Sep 2009) $

Field Summary
`private java.util.List<Chromosome>` `chromosomes` List of chromosomes
`private int` `populationLimit` maximial size of the population

Constructor Summary
`ListPopulation(int populationLimit)` Creates a new ListPopulation instance and initializes its inner chromosome list.
`ListPopulation(java.util.List<Chromosome> chromosomes, int populationLimit)` Creates a new ListPopulation instance.

Method Summary
`void` `addChromosome(Chromosome chromosome)` Add the given chromosome to the population.
`java.util.List<Chromosome>` `getChromosomes()` Access the list of chromosomes.
`Chromosome` `getFittestChromosome()` Access the fittest chromosome in this population.
`int` `getPopulationLimit()` Access the maximum population size.
`int` `getPopulationSize()` Access the current population size.
`java.util.Iterator<Chromosome>` `iterator()` Chromosome list iterator
`void` `setChromosomes(java.util.List<Chromosome> chromosomes)` Sets the list of chromosomes.
`void` `setPopulationLimit(int populationLimit)` Sets the maximal population size.
`java.lang.String` `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.commons.math.genetics.Population
`nextGeneration`

Field Detail

### chromosomes

    private java.util.List<Chromosome> chromosomes

  List of chromosomes

### populationLimit

    private int populationLimit

  maximial size of the population

Constructor Detail

### ListPopulation

    public ListPopulation(java.util.List<Chromosome> chromosomes,
                          int populationLimit)

  Creates a new ListPopulation instance.

  Parameters:
    `chromosomes` - list of chromosomes in the population
    `populationLimit` - maximal size of the population

### ListPopulation

    public ListPopulation(int populationLimit)

  Creates a new ListPopulation instance and initializes its inner chromosome list.

  Parameters:
    `populationLimit` - maximal size of the population

Method Detail

### setChromosomes

    public void setChromosomes(java.util.List<Chromosome> chromosomes)

  Sets the list of chromosomes.

  Parameters:
    `chromosomes` - the list of chromosomes

### getChromosomes

    public java.util.List<Chromosome> getChromosomes()

  Access the list of chromosomes.

  Returns:
    the list of chromosomes

### addChromosome

    public void addChromosome(Chromosome chromosome)

  Add the given chromosome to the population.

  Specified by:
    `addChromosome` in interface `Population`
  Parameters:
    `chromosome` - the chromosome to add.

### getFittestChromosome

    public Chromosome getFittestChromosome()

  Access the fittest chromosome in this population.

  Specified by:
    `getFittestChromosome` in interface `Population`
  Returns:
    the fittest chromosome.

### getPopulationLimit

    public int getPopulationLimit()

  Access the maximum population size.

  Specified by:
    `getPopulationLimit` in interface `Population`
  Returns:
    the maximum population size.

### setPopulationLimit

    public void setPopulationLimit(int populationLimit)

  Sets the maximal population size.

  Parameters:
    `populationLimit` - maximal population size.

### getPopulationSize

    public int getPopulationSize()

  Access the current population size.

  Specified by:
    `getPopulationSize` in interface `Population`
  Returns:
    the current population size.

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

### iterator

    public java.util.Iterator<Chromosome> iterator()

  Chromosome list iterator

  Specified by:
    `iterator` in interface `java.lang.Iterable<Chromosome>`
  Returns:
    chromosome iterator

Copyright (c) 2003-2011 Apache Software Foundation