MCScheduling 1.0
Set of Algorithms for Solving Mixed-Criticality Scheduling
|
The simulated annealing solver for the mixed-criticality scheduling. More...
Classes | |
class | CEarliestDeadlineFirst |
Comparer used to sort a list of job indices in earlist deadline first manner. | |
class | CExponentialAcceptor |
Classic exponential distribution acceptor. More... | |
class | CLowerBetterComparer |
Lower energy - lower makespan / lateness - better solution. More... | |
class | CMinimumMakespanLatenessEvaluator |
Evaluates the energy of the given state as a convex sum of the makespan and lateness of the corresponding solution schedule. More... | |
class | CPerturber |
The perturber used to change one state into one of its "neighbouring" state. More... | |
class | CProportionalCooler |
The proportional cooler works the way that the temperature at the next time instant is proportional to the temperature in the previous. More... | |
Public Member Functions | |
void | setConfiguration (CSimulatedAnnealingConfiguration configuration) |
Sets up the configuration of this simulated annealing algorithm. | |
CSimulatedAnnealingConfiguration | getConfiguration () |
Returns the configuration of simulated annealing algorithm. | |
void | setInstanceToSolve (CMixedCriticalityInstance instance) |
Sets the MC instance to be solved by running a simulated annealing. | |
Protected Member Functions | |
override CSimulatedAnnealingState | InitialSolution () |
Generates the initial solution for the simulated annealing algorithm. | |
override void | moveToNeighbour (ref CState state, double temperature) |
Transformes the specified state to a state from its nearest neighbourhood. |
The simulated annealing solver for the mixed-criticality scheduling.
CSimulatedAnnealingConfiguration MCScheduling.MixedCriticality.SA.CMixedCriticalitySimulatedAnnealing.getConfiguration | ( | ) |
Returns the configuration of simulated annealing algorithm.
override CSimulatedAnnealingState MCScheduling.MixedCriticality.SA.CMixedCriticalitySimulatedAnnealing.InitialSolution | ( | ) | [protected, virtual] |
Generates the initial solution for the simulated annealing algorithm.
The initial solution is found by a heuristic priority-based algorithm using earliest deadline first priority rule.
Implements MCScheduling.SimulatedAnnealing.CBaseSimulatedAnnealing< T >.
override void MCScheduling.MixedCriticality.SA.CMixedCriticalitySimulatedAnnealing.moveToNeighbour | ( | ref CState | state, |
double | temperature | ||
) | [protected, virtual] |
Transformes the specified state to a state from its nearest neighbourhood.
state | The state to move. |
temperature | The current value of the temperature parameter. |
Reimplemented from MCScheduling.SimulatedAnnealing.CBaseSimulatedAnnealing< T >.
void MCScheduling.MixedCriticality.SA.CMixedCriticalitySimulatedAnnealing.setConfiguration | ( | CSimulatedAnnealingConfiguration | configuration | ) |
Sets up the configuration of this simulated annealing algorithm.
configuration | The settings of this simulated annealing algorithm. |
void MCScheduling.MixedCriticality.SA.CMixedCriticalitySimulatedAnnealing.setInstanceToSolve | ( | CMixedCriticalityInstance | instance | ) |
Sets the MC instance to be solved by running a simulated annealing.
instance | The MC instance to solve. |