Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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

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

All Implemented Interfaces:
  Iterable<Chromosome>, Population

    public class ElitisticListPopulation

extends ListPopulation

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

Since:
  2.0
Version:
  $Id: ElitisticListPopulation.java 1416643 2012-12-03 19:37:14Z tn $

Constructor Summary
`ElitisticListPopulation(int populationLimit, double elitismRate)` Creates a new `ElitisticListPopulation` instance and initializes its inner chromosome list.
`ElitisticListPopulation(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.math3.genetics.ListPopulation
`addChromosome, addChromosomes, getChromosomeList, 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`

Constructor Detail

### ElitisticListPopulation

    public ElitisticListPopulation(List<Chromosome> chromosomes,
                                   int populationLimit,
                                   double elitismRate)
                            throws NullArgumentException,
                                   NotPositiveException,
                                   NumberIsTooLargeException,
                                   OutOfRangeException

  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 %]
  Throws:
    `NullArgumentException` - if the list of chromosomes is `null`
    `NotPositiveException` - if the population limit is not a positive number (< 1)
    `NumberIsTooLargeException` - if the list of chromosomes exceeds the population limit
    `OutOfRangeException` - if the elitism rate is outside the [0, 1] range

### ElitisticListPopulation

    public ElitisticListPopulation(int populationLimit,
                                   double elitismRate)
                            throws NotPositiveException,
                                   OutOfRangeException

  Creates a new `ElitisticListPopulation` 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 %]
  Throws:
    `NotPositiveException` - if the population limit is not a positive number (< 1)
    `OutOfRangeException` - if the elitism rate is outside the [0, 1] range

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)
                        throws OutOfRangeException

  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 %]
  Throws:
    `OutOfRangeException` - if the elitism rate is outside the [0, 1] range

### getElitismRate

    public double getElitismRate()

  Access the elitism rate.

  Returns:
    the elitism rate

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2013 The Apache Software Foundation. All Rights Reserved.