com.rapidminer.tools.math.optimization.ec.es
Class BoltzmannSelection

java.lang.Object
  extended by com.rapidminer.tools.math.optimization.ec.es.RouletteWheel
      extended by com.rapidminer.tools.math.optimization.ec.es.BoltzmannSelection
All Implemented Interfaces:
PopulationOperator

public class BoltzmannSelection
extends RouletteWheel

Like RouletteWheel this population operator selects a given fixed number of individuals by subdividing a roulette wheel in sections of size proportional to the individuals' fitness values. The fitness values are filtered according to the Boltzmann theorem.

Author:
Ingo Mierswa

Constructor Summary
BoltzmannSelection(int popSize, double temperature, int maxGenerations, boolean dynamic, boolean keepBest, java.util.Random random)
           
 
Method Summary
 double filterFitness(double fitness)
          Returns a fitness based on the Boltzmann theorem, i.e.
 void operate(Population population)
          Applies the method from the superclass and decreases the temperature in the adaptive case.
 
Methods inherited from class com.rapidminer.tools.math.optimization.ec.es.RouletteWheel
performOperation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BoltzmannSelection

public BoltzmannSelection(int popSize,
                          double temperature,
                          int maxGenerations,
                          boolean dynamic,
                          boolean keepBest,
                          java.util.Random random)
Method Detail

filterFitness

public double filterFitness(double fitness)
Returns a fitness based on the Boltzmann theorem, i.e. exp(fitness/temperature). Like for simulated annealing the temperature should decrease over time.

Overrides:
filterFitness in class RouletteWheel

operate

public void operate(Population population)
Applies the method from the superclass and decreases the temperature in the adaptive case.

Specified by:
operate in interface PopulationOperator
Overrides:
operate in class RouletteWheel


Copyright © 2001-2009 by Rapid-I