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

The postion-based crossover operator implementation. More...

Inheritance diagram for MCScheduling.GeneticAlgorithm.CPositionBasedCrossover:
MCScheduling.GeneticAlgorithm.CBaseCrossoverOperator MCScheduling.GeneticAlgorithm.IConfigurationDependent MCScheduling.GeneticAlgorithm.CGeneticOperator MCScheduling.GeneticAlgorithm.ICrossoverOperator

List of all members.

Public Member Functions

 CPositionBasedCrossover (CConfiguration configuration, double crossoverRate)
 Creates new position-based crossover operator for the specified configuration.
 CPositionBasedCrossover (CConfiguration configuration, double crossoverRate, double ratio)
 Creates new position-based crossover operator for the specified configuration.
void notify (CConfiguration configuration)
 Invoked when the genetic algorithm is about to be executed.
double getCrossoverRatio ()
 Returns The ratio of information transfered from each of the parents on a child.
override void apply (IChromosome daddy, IChromosome mommy, CPopulation population)
 Crossovers the specified couple of chromosomes in a operator-specific way forming a new chromosomes that should be added to the specified population.

Detailed Description

The postion-based crossover operator implementation.

Author:
Tomas Tunys.

Constructor & Destructor Documentation

MCScheduling.GeneticAlgorithm.CPositionBasedCrossover.CPositionBasedCrossover ( CConfiguration  configuration,
double  crossoverRate 
)

Creates new position-based crossover operator for the specified configuration.

Parameters:
configurationThe configuration of a genetic algorithm that uses this operator.
crossoverRateThe crossover rate.
MCScheduling.GeneticAlgorithm.CPositionBasedCrossover.CPositionBasedCrossover ( CConfiguration  configuration,
double  crossoverRate,
double  ratio 
)

Creates new position-based crossover operator for the specified configuration.

Parameters:
configurationThe configuration of a genetic algorithm that uses this operator.
crossoverRateThe crossover rate.
ratioThe ratio of information transfered from each of the parents on a child.
Exceptions:
ArgumentOutOfRangeExceptionIf the ration is not in range 0.0 to 1.0.

Member Function Documentation

override void MCScheduling.GeneticAlgorithm.CPositionBasedCrossover.apply ( IChromosome  daddy,
IChromosome  mommy,
CPopulation  population 
) [virtual]

Crossovers the specified couple of chromosomes in a operator-specific way forming a new chromosomes that should be added to the specified population.

Parameters:
daddyThe first chromosome entering into the crossover.
mommyThe second chromosome entering into the crossover.
populationThe population for the next generation.

Implements MCScheduling.GeneticAlgorithm.CBaseCrossoverOperator.

double MCScheduling.GeneticAlgorithm.CPositionBasedCrossover.getCrossoverRatio ( )

Returns The ratio of information transfered from each of the parents on a child.

Returns:
The ratio of information transfered from each of the parents on a child.
void MCScheduling.GeneticAlgorithm.CPositionBasedCrossover.notify ( CConfiguration  configuration)

Invoked when the genetic algorithm is about to be executed.

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

Implements MCScheduling.GeneticAlgorithm.IConfigurationDependent.

 All Classes Namespaces Functions Variables Properties