moSA(3)

NAME
moSA - Simulated Annealing (SA).

SYNOPSIS

#include <moSA.h>

Inherits moAlgo< M::EOType >.

  Public Member Functions
moSA (moRandMove< M > &_random_move_generator, moMoveIncrEval< M > &_incremental_evaluation, moSolContinue< EOT > &_continue, double _initial_temperature, moCoolingSchedule &_cooling_schedule, eoEvalFunc< EOT > &_full_evaluation)
SA constructor.
bool operator() (EOT &_solution)
function that launches the SA algorithm.

  Private Types
typedef M::EOType EOT
Alias for the type.
typedef EOT::Fitness Fitness
Alias for the fitness.

  Private Attributes
moRandMove< M > & random_move_generator
A move generator (generally randomly).
moMoveIncrEval< M > & incremental_evaluation
A (generally) efficient evaluation function.
moSolContinue< EOT > & continu
Stopping criterion before temperature update.
double initial_temperature
Initial temperature.
moCoolingSchedule & cooling_schedule
The cooling schedule.
eoEvalFunc< EOT > & full_evaluation
A full evaluation function.

Detailed Description

  template<class M> class moSA< M >
Simulated Annealing (SA). Class that describes a Simulated Annealing algorithm.

Definition at line 53 of file moSA.h.

Constructor & Destructor Documentation

  template<class M> moSA< M >::moSA (moRandMove< M > & _random_move_generator, moMoveIncrEval< M > & _incremental_evaluation, moSolContinue< EOT > & _continue, double _initial_temperature, moCoolingSchedule & _cooling_schedule, eoEvalFunc< EOT > & _full_evaluation) [inline]

SA constructor.

All the boxes used by a SA need to be given.

Parameters:
    _random_move_generator The move generator (generally randomly).
    _incremental_evaluation The (generally) efficient evaluation function
    _continue The stopping criterion.
    _initial_temperature The initial temperature.
    _cooling_schedule The cooling schedule, describes how the temperature is modified.
    _full_evaluation The full evaluation function.

Definition at line 74 of file moSA.h.

Member Function Documentation

  template<class M> bool moSA< M >::operator() (EOT & _solution) [inline, virtual]

function that launches the SA algorithm.

As a moTS or a moHC, the SA can be used for HYBRIDATION in an evolutionary algorithm.

Parameters:
    _solution A solution to improve.

Returns:
    TRUE.

Implements eoUF< M::EOType &, bool >.

Definition at line 89 of file moSA.h.

References moSA< M >::continu, moSA< M >::cooling_schedule, moSA< M >::full_evaluation, moSA< M >::incremental_evaluation, moSA< M >::initial_temperature, moSA< M >::random_move_generator, and eoRng::uniform().

Author

Generated automatically by Doxygen for ParadisEO-MOMovingObjects from the source code.