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

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

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

    public class ElitisticListPopulation

extends ListPopulation

Population of chromosomes which uses elitism (certain percentace of the best chromosomes is directly copied to the next generation).

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

Field Summary
`private double` `elitismRate` percentage of chromosomes copied to the next generation

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

Method Summary
`double` `getElitismRate()` Access the elitism rate.
`Population` `nextGeneration()` Start the population for the next generation.
`void` `setElitismRate(double elitismRate)` Sets the elitism rate, i.e.

Methods inherited from class org.apache.commons.math.genetics.ListPopulation
`addChromosome, getChromosomes, getFittestChromosome, getPopulationLimit, getPopulationSize, iterator, setChromosomes, setPopulationLimit, toString`

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

Field Detail

### elitismRate

    private double elitismRate

  percentage of chromosomes copied to the next generation

Constructor Detail

### ElitisticListPopulation

    public ElitisticListPopulation(java.util.List<Chromosome> chromosomes,
                                   int populationLimit,
                                   double elitismRate)

  Creates a new ElitisticListPopulation instance.

  Parameters:
    `chromosomes` - list of chromosomes in the population
    `populationLimit` - maximal size of the population
    `elitismRate` - how many best chromosomes will be directly transferred to the next generation [in %]

### ElitisticListPopulation

    public ElitisticListPopulation(int populationLimit,
                                   double elitismRate)

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

  Parameters:
    `populationLimit` - maximal size of the population
    `elitismRate` - how many best chromosomes will be directly transferred to the next generation [in %]

Method Detail

### nextGeneration

    public Population nextGeneration()

  Start the population for the next generation. The ``elitismRate``percents of the best chromosomes are directly copied to the next generation.

  ``
  Returns:
    the beginnings of the next generation.

### setElitismRate

    public void setElitismRate(double elitismRate)

  Sets the elitism rate, i.e. how many best chromosomes will be directly transferred to the next generation [in %].

  Parameters:
    `elitismRate` - how many best chromosomes will be directly transferred to the next generation [in %]

### getElitismRate

    public double getElitismRate()

  Access the elitism rate.

  Returns:
    the elitism rate

Copyright (c) 2003-2011 Apache Software Foundation