MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
|
The displaced inversion mutation operator. More...
Public Member Functions | |
CDisplacedInversionMutation (CConfiguration configuration, double mutationRate) | |
Creates new displaced inversion mutation operator for the specified configuration. | |
void | notify (CConfiguration configuration) |
Invoked when the genetic algorithm is about to be executed. | |
override void | apply (IChromosome chromosome) |
Mutates the specified chromosome in a operator-specific way forming a new chromosome, which will then go to the next generation. |
The displaced inversion mutation operator.
It randomly chooses two points within a chromosome with uniform probability, reverses the genes within the range defined by these two points, and finally displaces the reversed part and reinserts it back into a random position. This operator may be considered as combination of inversion and displacement mutation operators.
MCScheduling.GeneticAlgorithm.CDisplacedInversionMutation.CDisplacedInversionMutation | ( | CConfiguration | configuration, |
double | mutationRate | ||
) |
Creates new displaced inversion mutation operator for the specified configuration.
configuration | The configuration of a genetic algorithm that uses this operator. |
mutationRate | The mutation rate. |
override void MCScheduling.GeneticAlgorithm.CDisplacedInversionMutation.apply | ( | IChromosome | chromosome | ) | [virtual] |
Mutates the specified chromosome in a operator-specific way forming a new chromosome, which will then go to the next generation.
chromosome | The chromosome to be mutated. |
Implements MCScheduling.GeneticAlgorithm.CBaseMutationOperator.
void MCScheduling.GeneticAlgorithm.CDisplacedInversionMutation.notify | ( | CConfiguration | configuration | ) |
Invoked when the genetic algorithm is about to be executed.
configuration | The configuration of the genetic algorithm that uses this operator. |
Implements MCScheduling.GeneticAlgorithm.IConfigurationDependent.