moSteadyFitSolContinue< EOT > Class Template Reference

One possible stopping criterion for a solution-based heuristic. More...

#include <moSteadyFitSolContinue.h>

Inheritance diagram for moSteadyFitSolContinue< EOT >:

moSolContinue< EOT > eoUF< const EOT &, bool > eoFunctorBase List of all members.

Public Types

typedef EOT::Fitness Fitness
 Alias for the fitness.

Public Member Functions

 moSteadyFitSolContinue (unsigned int __maxNumberOfIterations, unsigned int __maxNumberOfIterationWithoutImprovement, bool __maximization=true)
 Basic constructor.
bool operator() (const EOT &__sol)
 Function that activates the stopping criterion.
void init ()
 Procedure which allows to initialise the stuff needed.

Private Attributes

unsigned int maxNumberOfIterations
 Maximum number of iterations before considering the fitness.
unsigned int maxNumberOfIterationsWithoutImprovement
 Maximum number of iterations without improvement allowed.
bool maxNumberOfIterationsReached
 Flag that indicates that the maxNumberIteration have been reached.
bool firstFitnessSaved
 Flag that this is the first time that the fitness is used.
Fitness fitness
 Current Fitness.
bool maximization
 Flag that indicate if there is a maximization (true) or a minimization (false) of the fitness value.
unsigned int counter
 The iteration couter.

Detailed Description

template<class EOT>
class moSteadyFitSolContinue< EOT >

One possible stopping criterion for a solution-based heuristic.

The stop criterion corresponds to a maximum number of iterations without improvement (after a minimum number of iterations).

Definition at line 21 of file moSteadyFitSolContinue.h.


Constructor & Destructor Documentation

template<class EOT>
moSteadyFitSolContinue< EOT >::moSteadyFitSolContinue ( unsigned int  __maxNumberOfIterations,
unsigned int  __maxNumberOfIterationWithoutImprovement,
bool  __maximization = true 
) [inline]

Basic constructor.

Parameters:
__maxNumberOfIterations The number of iterations to reach before looking for the fitness.
__maxNumberOfIterationWithoutImprovement The number of iterations without fitness improvement to reach for stop.
__maximization Indicate if the the aim is to maximize or minimize the fitness.

Definition at line 35 of file moSteadyFitSolContinue.h.


Member Function Documentation

template<class EOT>
bool moSteadyFitSolContinue< EOT >::operator() ( const EOT &  __sol  )  [inline, virtual]

Function that activates the stopping criterion.

Indicates if the fitness has not been improved since a number of iterations (after a minimum of iterations).

Parameters:
__sol the current solution.
Returns:
true or false.

Implements eoUF< const EOT &, bool >.

Definition at line 47 of file moSteadyFitSolContinue.h.

References moSteadyFitSolContinue< EOT >::counter, moSteadyFitSolContinue< EOT >::firstFitnessSaved, moSteadyFitSolContinue< EOT >::fitness, moSteadyFitSolContinue< EOT >::maximization, moSteadyFitSolContinue< EOT >::maxNumberOfIterations, moSteadyFitSolContinue< EOT >::maxNumberOfIterationsReached, and moSteadyFitSolContinue< EOT >::maxNumberOfIterationsWithoutImprovement.


Member Data Documentation

template<class EOT>
bool moSteadyFitSolContinue< EOT >::maximization [private]

Flag that indicate if there is a maximization (true) or a minimization (false) of the fitness value.

It can be interesting to know this information because some solution-based metaheuristics can generate solution with a fitness that is worse that the best known fitness (in this case, the counter is not reinitialized).

Definition at line 114 of file moSteadyFitSolContinue.h.

Referenced by moSteadyFitSolContinue< EOT >::operator()().


The documentation for this class was generated from the following file:
Generated on Tue Jul 31 14:12:37 2007 for PARADISEO-MO by  doxygen 1.5.2