MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
|
A base class for implementation of a mutation genetic operator. More...
Public Member Functions | |
double | getMutationRate () |
Returns the mutation rate used by this operator. | |
void | setMutationRate (double mutationRate) |
Sets the mutation rate for this operator. | |
bool | shouldPerformMutation () |
Determines whether the mutation should be performed. | |
abstract 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. | |
Protected Member Functions | |
CBaseMutationOperator (CConfiguration configuration, double mutationRate) | |
Instantiates the base mutation operator. |
A base class for implementation of a mutation genetic operator.
MCScheduling.GeneticAlgorithm.CBaseMutationOperator.CBaseMutationOperator | ( | CConfiguration | configuration, |
double | mutationRate | ||
) | [protected] |
Instantiates the base mutation operator.
configuration | The configuration of the genetic algorithm that will utilize this operator. |
mutationRate | The mutation rate for this operator. |
NullReferenceException | If confuguration is null. |
ArgumentOutOfRangeException | If mutationRate is not in 0.0 and 1.0 range. |
abstract void MCScheduling.GeneticAlgorithm.CBaseMutationOperator.apply | ( | IChromosome | chromosome | ) | [pure 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.IMutationOperator.
Implemented in MCScheduling.GeneticAlgorithm.CDisplacedInversionMutation, MCScheduling.GeneticAlgorithm.CDisplacementMutation, MCScheduling.GeneticAlgorithm.CExchangeMutation, MCScheduling.GeneticAlgorithm.CInsertionMutation, MCScheduling.GeneticAlgorithm.CInversionMutation, and MCScheduling.GeneticAlgorithm.CScrambleMutation.
double MCScheduling.GeneticAlgorithm.CBaseMutationOperator.getMutationRate | ( | ) |
Returns the mutation rate used by this operator.
void MCScheduling.GeneticAlgorithm.CBaseMutationOperator.setMutationRate | ( | double | mutationRate | ) |
Sets the mutation rate for this operator.
The mutationRate is expected to be decimal value between 0.0 and 1.0 inclusive.
mutationRate | The mutation rate to be set. |
ArgumentOutOfRangeException | If mutationRate is not in 0.0 and 1.0 range. |
bool MCScheduling.GeneticAlgorithm.CBaseMutationOperator.shouldPerformMutation | ( | ) |
Determines whether the mutation should be performed.