MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
Public Member Functions
MCScheduling.GeneticAlgorithm.CBoltzmannScaling Class Reference

In case one wants the selection preasure to vary during the evolution he uses Bolzmann scaling. More...

Inheritance diagram for MCScheduling.GeneticAlgorithm.CBoltzmannScaling:
MCScheduling.GeneticAlgorithm.IFitnessScaler MCScheduling.GeneticAlgorithm.IConfigurationDependent

List of all members.

Public Member Functions

 CBoltzmannScaling (double startTemperature, double minimumTemperature, double coolingStep)
 Initializes the boltzmann scaling method.
void notify (CConfiguration configuration)
 Invoked when the genetic algorithm is about to be executed.
double getMinimumTemperature ()
 Returns the minimum temperature.
double getStartTemperature ()
 Returns the starting temperature.
double getCoolingStepSize ()
 Returns the step size of the temperature dropping.
void scale (CPopulation population)
 Scales the fitness scores of the individuals within the specified population.

Detailed Description

In case one wants the selection preasure to vary during the evolution he uses Bolzmann scaling.

This scaling method works like this: First, a temperature is set and a size of a step in which will be decreased each call, then average value of e^(fitness/temperature) is calculated, where e is the Euler's number and fitness is a fitness score of an individual in a population, afterwards, the fitness score for each individual is assigned according to newFitness = e^(oldFitness/temperature) / average.


Constructor & Destructor Documentation

MCScheduling.GeneticAlgorithm.CBoltzmannScaling.CBoltzmannScaling ( double  startTemperature,
double  minimumTemperature,
double  coolingStep 
)

Initializes the boltzmann scaling method.

Parameters:
startTemperatureThe starting temperature.
minimumTemperatureThe minimum value the temperature may cool down to. It must be smaller then start temperature.
coolingStepThe step in which the temperature falls down.
Exceptions:
ArgumentExceptionIf the starting temperature is smaller then the minimum temperature.

Member Function Documentation

double MCScheduling.GeneticAlgorithm.CBoltzmannScaling.getCoolingStepSize ( )

Returns the step size of the temperature dropping.

Returns:
The step size of temperature's decrease.
double MCScheduling.GeneticAlgorithm.CBoltzmannScaling.getMinimumTemperature ( )

Returns the minimum temperature.

Returns:
The minimum temperature.
double MCScheduling.GeneticAlgorithm.CBoltzmannScaling.getStartTemperature ( )

Returns the starting temperature.

Returns:
The starting temperature.
void MCScheduling.GeneticAlgorithm.CBoltzmannScaling.notify ( CConfiguration  configuration)

Invoked when the genetic algorithm is about to be executed.

Parameters:
configurationThe configuration of the genetic algorithm that uses this scaler.

Implements MCScheduling.GeneticAlgorithm.IConfigurationDependent.

void MCScheduling.GeneticAlgorithm.CBoltzmannScaling.scale ( CPopulation  population)

Scales the fitness scores of the individuals within the specified population.

For more information look at the description of the CBoltzmannScaling class.

Parameters:
populationThe population of individuals to be scaled.

Implements MCScheduling.GeneticAlgorithm.IFitnessScaler.

 All Classes Namespaces Functions Variables Properties