Doc revised
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@1819 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
259ef86e96
commit
93533e5fad
88 changed files with 188 additions and 190 deletions
|
|
@ -64,7 +64,7 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// the explorer of the simple HC
|
||||
// dummy Explorer
|
||||
moDummyExplorer<Neighbor> explorer;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
|
||||
/**
|
||||
* First improvement HC:
|
||||
* Hill-Climber local search
|
||||
* Hill-Climbing local search
|
||||
*
|
||||
* At each iteration,
|
||||
* one of the random solution in the neighborhood is selected
|
||||
|
|
@ -93,7 +93,7 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors: true if strictly greater
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
|
|
|
|||
|
|
@ -99,11 +99,11 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
// the explorer of the HC with neutral move (equals fitness move)
|
||||
// MetropolisHasting explorer
|
||||
moMetropolisHastingExplorer<Neighbor> explorer;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
#include <eoEvalFunc.h>
|
||||
|
||||
/**
|
||||
* Hill-Climber local search
|
||||
* Hill-Climbing local search
|
||||
*
|
||||
* At each iteration,
|
||||
* one of the random best solution in the neighborhood is selected
|
||||
|
|
@ -95,9 +95,9 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
// the explorer of the HC with neutral move (equals fitness move)
|
||||
moNeutralHCexplorer<Neighbor> explorer;
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
|
||||
/**
|
||||
* Random Best HC:
|
||||
* Hill-Climber local search
|
||||
* Hill-Climbing local search
|
||||
*
|
||||
* At each iteration,
|
||||
* one of the random best solution in the neighborhood is selected
|
||||
|
|
@ -93,9 +93,9 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
// the explorer of the HC with random choice of the best solution
|
||||
moRandomBestHCexplorer<Neighbor> explorer;
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@ private:
|
|||
moTrueContinuator<Neighbor> trueCont;
|
||||
// the explorer of the random walk
|
||||
moRandomNeutralWalkExplorer<Neighbor> explorer;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
|
||||
/**
|
||||
* Simple HC:
|
||||
* Hill-Climber local search
|
||||
* Hill-Climbing local search
|
||||
*
|
||||
* At each iteration,
|
||||
* the first best solution in the neighborhood is selected
|
||||
|
|
@ -93,9 +93,9 @@ public:
|
|||
private:
|
||||
// always true continuator
|
||||
moTrueContinuator<Neighbor> trueCont;
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
// the explorer of the simple HC
|
||||
moSimpleHCexplorer<Neighbor> explorer;
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Compare two solutions
|
||||
* Test the equality between two solutions
|
||||
* @param _sol1 the first solution
|
||||
* @param _sol2 the second solution
|
||||
* @return true if the solution2 is equal to solution1
|
||||
|
|
@ -61,7 +61,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Compare two neighbors
|
||||
* Test the equality between two neighbors
|
||||
* @param _sol the solution
|
||||
* @param _neighbor the neighbor
|
||||
* @return true if the neighbor is equal to the solution
|
||||
|
|
@ -72,7 +72,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -51,14 +51,14 @@ public :
|
|||
using moStat< EOT, double >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moAverageFitnessNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
moStat<EOT, double >(0.0, "average"), nhStat(_nhStat) {}
|
||||
|
||||
/**
|
||||
* Set the average and the standard deviation of fitness in the neighborhood
|
||||
* Set the average of fitness in the neighborhood
|
||||
* @param _sol the first solution
|
||||
*/
|
||||
virtual void init(EOT & _sol) {
|
||||
|
|
@ -66,7 +66,7 @@ public :
|
|||
}
|
||||
|
||||
/**
|
||||
* Set the average and the standard deviation of fitness in the neighborhood
|
||||
* Set the average of fitness in the neighborhood
|
||||
* @param _sol the corresponding solution
|
||||
*/
|
||||
virtual void operator()(EOT & _sol) {
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public :
|
|||
typedef typename Neighbor::EOT EOT ;
|
||||
|
||||
/**
|
||||
* Default constructor (moCheckpoint must have at least one continuator)
|
||||
* Constructor (moCheckpoint must have at least one continuator)
|
||||
* @param _cont a continuator
|
||||
* @param _interval frequency to compute statistical operators
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -35,8 +35,8 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
#include <vector>
|
||||
|
||||
/**
|
||||
* Combined several continuators
|
||||
* Continue until one of the continuators is false
|
||||
* Combined several continuators.
|
||||
* Continue until one of the continuators returns false
|
||||
*/
|
||||
template< class Neighbor >
|
||||
class moCombinedContinuator : public moContinuator<Neighbor>
|
||||
|
|
@ -45,7 +45,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT ;
|
||||
|
||||
/**
|
||||
* Default constructor (moCheckpoint must have at least one continuator)
|
||||
* Constructor (moCheckpoint must have at least one continuator)
|
||||
* @param _cont a continuator
|
||||
*/
|
||||
moCombinedContinuator(moContinuator<Neighbor>& _cont) {
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ class moCounterMonitorSaver : public eoUpdater {
|
|||
public :
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _interval frequency to call monitors
|
||||
* @param _mon a monitor
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public :
|
|||
}
|
||||
|
||||
/**
|
||||
* Give the number of iteration
|
||||
* Init the number of iteration
|
||||
* @param _sol a solution
|
||||
*/
|
||||
virtual void init(EOT & _sol) {
|
||||
|
|
@ -61,7 +61,7 @@ public :
|
|||
}
|
||||
|
||||
/**
|
||||
* Give the number of iteration
|
||||
* Set the number of iteration
|
||||
* @param _sol a solution
|
||||
*/
|
||||
virtual void operator()(EOT & _sol) {
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public :
|
|||
using moStat< EOT, T >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _dist a distance
|
||||
* @param _ref the reference solution
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ public :
|
|||
using moStat< EOT, Fitness >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _description a description of the stat
|
||||
*/
|
||||
moFitnessStat(std::string _description = "fitness"):
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT ;
|
||||
|
||||
/**
|
||||
* Default constructor
|
||||
* Constructor
|
||||
* @param _eval evaluation function to count
|
||||
* @param _maxFullEval number maximum of iterations
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public :
|
|||
using moStat< EOT, Fitness >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moMaxNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public :
|
|||
using moStat< EOT, Fitness >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moMinNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ public :
|
|||
}
|
||||
|
||||
/**
|
||||
* Give the number of iteration
|
||||
* Init the number of iteration
|
||||
* @param _sol a solution
|
||||
*/
|
||||
virtual void init(EOT & _sol) {
|
||||
|
|
@ -64,7 +64,7 @@ public :
|
|||
}
|
||||
|
||||
/**
|
||||
* Give the number of iteration
|
||||
* Set the number of iteration
|
||||
* @param _sol a solution
|
||||
*/
|
||||
virtual void operator()(EOT & _sol) {
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public :
|
|||
using moStat< EOT, unsigned >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moNbInfNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public :
|
|||
using moStat< EOT, unsigned >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moNbSupNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public :
|
|||
using moStat< EOT, Fitness >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _neighborhood a neighborhood
|
||||
* @param _eval an evaluation function
|
||||
* @param _neighborComparator a neighbor Comparator
|
||||
|
|
@ -155,9 +155,9 @@ private:
|
|||
moSolNeighborComparator<Neighbor>& solNeighborComparator;
|
||||
|
||||
// default comparators
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
|
||||
// number of neighbor to explore
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT ;
|
||||
|
||||
/**
|
||||
* Default constructor
|
||||
* Constructor
|
||||
* @param _eval neighbor evaluation function to count
|
||||
* @param _maxNeighborEval number maximum of iterations
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public :
|
|||
using moStat< EOT, Fitness >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _neighborhood a neighborhood
|
||||
* @param _eval an evaluation function
|
||||
*/
|
||||
|
|
@ -82,7 +82,7 @@ public :
|
|||
if (neighborhood.hasNeighbor(_solution)) {
|
||||
Neighbor current ;
|
||||
|
||||
//init the first neighbor which is suppoed to be random
|
||||
//init the first neighbor which is supposed to be random
|
||||
neighborhood.init(_solution, current);
|
||||
|
||||
//eval the _solution moved with the neighbor and stock the result in the neighbor
|
||||
|
|
@ -104,7 +104,7 @@ public :
|
|||
}
|
||||
|
||||
private:
|
||||
// to explore the neighborhood
|
||||
// the neighborhood
|
||||
Neighborhood& neighborhood ;
|
||||
moEval<Neighbor>& eval;
|
||||
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ public :
|
|||
using moStat< EOT, bool >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _neighborhood a neighborhood
|
||||
* @param _eval an evaluation function
|
||||
* @param _neighborComparator a neighbor Comparator
|
||||
|
|
@ -235,7 +235,7 @@ public :
|
|||
|
||||
private:
|
||||
|
||||
// to explore the neighborhood
|
||||
//the neighborhood
|
||||
Neighborhood& neighborhood ;
|
||||
moEval<Neighbor>& eval;
|
||||
|
||||
|
|
@ -244,9 +244,9 @@ private:
|
|||
moSolNeighborComparator<Neighbor>& solNeighborComparator;
|
||||
|
||||
// default comparators
|
||||
// compare the fitness values of neighbors: true is strictly greater
|
||||
// compare the fitness values of neighbors
|
||||
moNeighborComparator<Neighbor> defaultNeighborComp;
|
||||
// compare the fitness values of the solution and the neighbor: true if strictly greater
|
||||
// compare the fitness values of the solution and the neighbor
|
||||
moSolNeighborComparator<Neighbor> defaultSolNeighborComp;
|
||||
|
||||
// the stastics of the fitness
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public :
|
|||
using moStat< EOT, unsigned >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moNeutralDegreeNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public :
|
|||
using moStat< EOT, std::pair<double, double> >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moSecondMomentNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ public :
|
|||
using moStat< EOT, unsigned >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moSizeNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -38,8 +38,8 @@
|
|||
#include <continuator/moStat.h>
|
||||
|
||||
/**
|
||||
* The statistic which only give the current solution
|
||||
* be careful, the solution is given by copy
|
||||
* The statistic which only give the current solution.
|
||||
* Be careful, the solution is given by copy
|
||||
*
|
||||
*/
|
||||
template <class EOT>
|
||||
|
|
@ -49,7 +49,7 @@ public :
|
|||
using moStat< EOT, EOT >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _description a description of the parameter
|
||||
*/
|
||||
moSolutionStat(std::string _description = "solution"):
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ class moStat : public eoValueParam<T>, public moStatBase<EOT>
|
|||
public:
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _value a default parameter's value
|
||||
* @param _description a description of the parameter
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public :
|
|||
using moStat< EOT , T >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _stat a stat
|
||||
*/
|
||||
moStatFromStat(moStat<EOT,T> & _stat): moStat<EOT, T>(0, _stat.description()), stat(_stat) {
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ public :
|
|||
using moStat< EOT, double >::value;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _nhStat a neighborhoodStat
|
||||
*/
|
||||
moStdFitnessNeighborStat(moNeighborhoodStat<Neighbor> & _nhStat):
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Ctor.
|
||||
* @param _max maximum running time$
|
||||
* Constructor
|
||||
* @param _max maximum running time
|
||||
* @param _verbose verbose mode true/false -> on/off
|
||||
*/
|
||||
moTimeContinuator(time_t _max, bool _verbose=true): max(_max), verbose(_verbose) {
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ class moVectorMonitor : public eoMonitor
|
|||
public:
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _param the parameter of type double to save in the vector
|
||||
*/
|
||||
moVectorMonitor(eoValueParam<double> & _param) : doubleParam(&_param), intParam(NULL), eotParam(NULL)
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ class moCoolingSchedule : public eoUF<double, bool>
|
|||
{
|
||||
public:
|
||||
/**
|
||||
* Initial temperature
|
||||
* Init the solution with the initial temperature
|
||||
* @param _solution initial solution
|
||||
*/
|
||||
virtual double init(EOT & _solution) = 0;
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ class moSimpleCoolingSchedule : public moCoolingSchedule<EOT>
|
|||
{
|
||||
public:
|
||||
/**
|
||||
* default constructor
|
||||
* Constructor
|
||||
* @param _initT initial temperature
|
||||
* @param _alpha factor of decreasing
|
||||
* @param _span number of iteration with equal temperature
|
||||
|
|
@ -55,7 +55,7 @@ public:
|
|||
moSimpleCoolingSchedule(double _initT, double _alpha, unsigned _span, double _finalT) : initT(_initT), alpha(_alpha), span(_span), finalT(_finalT) {}
|
||||
|
||||
/**
|
||||
* Initial temperature
|
||||
* Getter on the initial temperature
|
||||
* @param _solution initial solution
|
||||
* @return the initial temperature
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _sol a solution (unused)
|
||||
* @param _n a neighbor (unused)
|
||||
* @param _sol unused solution
|
||||
* @param _n unused neighbor
|
||||
*/
|
||||
void operator()(EOT& _sol, Neighbor& _n) {}
|
||||
|
||||
|
|
|
|||
|
|
@ -52,19 +52,19 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
void initParam (EOT& _solution) { } ;
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
void updateParam (EOT& _solution) { } ;
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
* @return always false
|
||||
*/
|
||||
bool isContinue(EOT& _solution) {
|
||||
|
|
@ -73,13 +73,13 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
void move(EOT& _solution) { } ;
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
* @return always false
|
||||
*/
|
||||
virtual bool accept(EOT& _solution) {
|
||||
|
|
@ -88,18 +88,18 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT& _solution) { } ;
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
void operator()(EOT & _solution) { }
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -74,19 +74,19 @@ public:
|
|||
|
||||
/**
|
||||
* initParam: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* updateParam: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -121,7 +121,7 @@ public:
|
|||
/**
|
||||
* continue if a move is accepted
|
||||
* @param _solution the solution
|
||||
* @return true if an ameliorated neighbor was be found
|
||||
* @return true if an ameliorated neighbor was found
|
||||
*/
|
||||
virtual bool isContinue(EOT & _solution) {
|
||||
return isAccept ;
|
||||
|
|
@ -139,7 +139,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* accept test if an ameliorated neighbor was be found
|
||||
* accept test if an ameliorated neighbor was found
|
||||
* @param _solution the solution
|
||||
* @return true if the best neighbor ameliorate the fitness
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* accept test if an ameliorated neighbor was be found
|
||||
* accept test if an ameliorated neighbor was found
|
||||
* @param _solution the solution
|
||||
* @return true if acceptance criteria is verified
|
||||
*/
|
||||
|
|
@ -150,7 +150,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
#include <utils/eoRNG.h>
|
||||
|
||||
/**
|
||||
* Explorer for the Metropolis-Hasting Sampling
|
||||
* Explorer for the Metropolis-Hasting Sampling.
|
||||
* Only the symetric case is considered when Q(x,y) = Q(y,x)
|
||||
* Fitness must be > 0
|
||||
*/
|
||||
|
|
@ -84,7 +84,7 @@ public:
|
|||
|
||||
/**
|
||||
* initialization of the number of step to be done
|
||||
* @param _solution the solution (unused here)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {
|
||||
step = 0;
|
||||
|
|
@ -93,7 +93,7 @@ public:
|
|||
|
||||
/**
|
||||
* increase the number of step
|
||||
* @param _solution the solution (unused here)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
step++;
|
||||
|
|
@ -101,7 +101,7 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution the solution (unused here)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -145,7 +145,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* accept test if an ameliorated neighbor was be found
|
||||
* accept test if an ameliorated neighbor was found
|
||||
* @param _solution the solution
|
||||
* @return true if the best neighbor ameliorate the fitness
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -40,7 +40,6 @@
|
|||
|
||||
#include <neighborhood/moNeighborhood.h>
|
||||
#include <eval/moEval.h>
|
||||
//#include <neighborhood/moDummyNeighbor.h>
|
||||
#include <neighborhood/moDummyNeighborhood.h>
|
||||
#include <eval/moDummyEval.h>
|
||||
|
||||
|
|
@ -102,9 +101,8 @@ public:
|
|||
*/
|
||||
virtual void terminate(EOT& _solution) = 0 ;
|
||||
|
||||
|
||||
/**
|
||||
* Getter for variable "isMoved"
|
||||
* Getter of "isMoved"
|
||||
* @return true if move is applied
|
||||
*/
|
||||
bool moveApplied() {
|
||||
|
|
@ -112,7 +110,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Setter for variable "isMoved"
|
||||
* Setter of "isMoved"
|
||||
* @param _isMoved
|
||||
*/
|
||||
void moveApplied(bool _isMoved) {
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* continue if there is a neighbor and it is remainds some steps to do
|
||||
* continue if there is a neighbor and it is remains some steps to do
|
||||
* @param _solution the solution
|
||||
* @return true there is some steps to do
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ public:
|
|||
|
||||
/**
|
||||
* empty the vector of best solutions
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {
|
||||
// delete all the best solutions
|
||||
|
|
@ -92,7 +92,7 @@ public:
|
|||
|
||||
/**
|
||||
* empty the vector of best solutions
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
// delete all the best solutions
|
||||
|
|
@ -101,7 +101,7 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -170,7 +170,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* accept test if an amelirated neighbor was be found
|
||||
* accept test if an amelirated neighbor was found
|
||||
* @param _solution the solution
|
||||
* @return true if the best neighbor ameliorate the fitness
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ public:
|
|||
|
||||
/**
|
||||
* initialization of the number of step to be done
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {
|
||||
step = 0;
|
||||
|
|
@ -94,7 +94,7 @@ public:
|
|||
|
||||
/**
|
||||
* increase the number of step
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
step++;
|
||||
|
|
@ -102,7 +102,7 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -134,7 +134,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* continue if there is a neighbor and it is remainds some steps to do
|
||||
* continue if there is a neighbor and it is remains some steps to do
|
||||
* @param _solution the solution
|
||||
* @return true there is some steps to do
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ public:
|
|||
|
||||
/**
|
||||
* initialization of the number of step to be done
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {
|
||||
step = 0;
|
||||
|
|
@ -80,7 +80,7 @@ public:
|
|||
|
||||
/**
|
||||
* increase the number of step
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
step++;
|
||||
|
|
@ -88,7 +88,7 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -106,7 +106,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* continue if it is remainds some steps to do
|
||||
* continue if it is remains some steps to do
|
||||
* @param _solution the solution
|
||||
* @return true there is some steps to do
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
#include <neighborhood/moNeighborhood.h>
|
||||
|
||||
/**
|
||||
* Explorer for a random walk explorer
|
||||
* Explorer for a random walk
|
||||
*/
|
||||
template< class Neighbor >
|
||||
class moRandomWalkExplorer : public moNeighborhoodExplorer<Neighbor>
|
||||
|
|
@ -78,7 +78,7 @@ public:
|
|||
|
||||
/**
|
||||
* initialization of the number of step to be done
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & _solution) {
|
||||
step = 0;
|
||||
|
|
@ -87,7 +87,7 @@ public:
|
|||
|
||||
/**
|
||||
* increase the number of step
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
step++;
|
||||
|
|
@ -95,7 +95,7 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
|
|
@ -123,7 +123,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* continue if there is a neighbor and it is remainds some steps to do
|
||||
* continue if there is a neighbor and it is remains some steps to do
|
||||
* @param _solution the solution
|
||||
* @return true there is some steps to do
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ public:
|
|||
|
||||
/**
|
||||
* decrease the temperature if necessary
|
||||
* @param _solution the solution (unused here)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & _solution) {
|
||||
coolingSchedule.update(temperature);
|
||||
|
|
@ -100,13 +100,13 @@ public:
|
|||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution the solution (unused here)
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* Explore one random solution in the neighborhood
|
||||
* @param _solution
|
||||
* @param _solution the solution
|
||||
*/
|
||||
virtual void operator()(EOT & _solution) {
|
||||
//Test if _solution has a Neighbor
|
||||
|
|
@ -133,7 +133,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* move the solution on the accepted solution
|
||||
* move the solution to the accepted solution
|
||||
* @param _solution the solution to move
|
||||
*/
|
||||
virtual void move(EOT & _solution) {
|
||||
|
|
|
|||
|
|
@ -76,26 +76,27 @@ public:
|
|||
|
||||
/**
|
||||
* initParam: NOTHING TO DO
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void initParam(EOT & solution) {};
|
||||
virtual void initParam(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* updateParam: NOTHING TO DO
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void updateParam(EOT & solution) {};
|
||||
virtual void updateParam(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* terminate: NOTHING TO DO
|
||||
* @param _solution unused solution
|
||||
*/
|
||||
virtual void terminate(EOT & solution) {};
|
||||
virtual void terminate(EOT & _solution) {};
|
||||
|
||||
/**
|
||||
* Explore the neighborhood of a solution
|
||||
* @param _solution
|
||||
* @param _solution the current solution
|
||||
*/
|
||||
virtual void operator()(EOT & _solution) {
|
||||
|
||||
//est qu'on peut initializer
|
||||
//Test if _solution has a Neighbor
|
||||
if (neighborhood.hasNeighbor(_solution)) {
|
||||
//init the first neighbor
|
||||
|
|
@ -159,7 +160,7 @@ public:
|
|||
};
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -214,7 +214,7 @@ public:
|
|||
|
||||
|
||||
/**
|
||||
* accept test if an ameliorated neighbor was be found
|
||||
* accept test if an ameliorated neighbor was found
|
||||
* @param _solution the solution
|
||||
* @return true if the best neighbor ameliorate the fitness
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ Contact: paradiseo-help@lists.gforge.inria.fr
|
|||
#include <memory/moMemory.h>
|
||||
|
||||
/**
|
||||
* Count the number of move, noMove and the number of successive stagnation since the last Move
|
||||
* Count the number of move, no move and the successive stagnation since the last Move
|
||||
*/
|
||||
template< class Neighbor >
|
||||
class moCountMoveMemory : virtual public moMemory<Neighbor> {
|
||||
|
|
@ -52,7 +52,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* @param _sol a solution (unused)
|
||||
* @param _sol unused solution
|
||||
* @param _neighbor unused neighbor
|
||||
*/
|
||||
void add(EOT & _sol, Neighbor & _neighbor) {
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ public:
|
|||
virtual void init(EOT & _sol) = 0;
|
||||
|
||||
/**
|
||||
* Add data in the memory
|
||||
* Add data to the memory
|
||||
* @param _sol the current solution
|
||||
* @param _neighbor the current neighbor
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _monOp an eoMonOp (diversification operator)
|
||||
* @param _fullEval a full evaluation function
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ public:
|
|||
|
||||
/**
|
||||
* add a new neighbor in the tabuList
|
||||
* @param _sol the current solution (unused)
|
||||
* @param _sol unused solution
|
||||
* @param _neighbor the current neighbor
|
||||
*/
|
||||
virtual void add(EOT & _sol, Neighbor & _neighbor) {
|
||||
|
|
@ -84,8 +84,8 @@ public:
|
|||
|
||||
/**
|
||||
* update the tabulist
|
||||
* @param _sol the current solution (unused)
|
||||
* @param _neighbor the current neighbor (unused)
|
||||
* @param _sol unused solution
|
||||
* @param _neighbor unused neighbor
|
||||
*/
|
||||
virtual void update(EOT & _sol, Neighbor & _neighbor) {
|
||||
if (howlong > 0)
|
||||
|
|
@ -96,7 +96,7 @@ public:
|
|||
|
||||
/**
|
||||
* check if the move is tabu
|
||||
* @param _sol the current solution (unused)
|
||||
* @param _sol unused solution
|
||||
* @param _neighbor the current neighbor
|
||||
* @return true if tabuList contains _sol
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ public:
|
|||
/**
|
||||
* add a new solution in the tabuList
|
||||
* @param _sol the current solution
|
||||
* @param _neighbor the current neighbor (unused)
|
||||
* @param _neighbor unused neighbor
|
||||
*/
|
||||
virtual void add(EOT & _sol, Neighbor & _neighbor) {
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ class moBackableNeighbor : virtual public moNeighbor<EOT, Fitness>
|
|||
public:
|
||||
|
||||
/**
|
||||
* the move back function
|
||||
* the function to move back a solution
|
||||
* @param _solution the solution to moveBack
|
||||
*/
|
||||
virtual void moveBack(EOT & _solution)=0;
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
* @return always false
|
||||
*/
|
||||
virtual bool hasNeighbor(EOT & _solution) {
|
||||
|
|
@ -52,21 +52,21 @@ public:
|
|||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _current a neighbor (unused)
|
||||
* @param _solution unused solution
|
||||
* @param _current unused neighbor
|
||||
*/
|
||||
virtual void init(EOT & _solution, Neighbor & _current) {}
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _current a neighbor (unused)
|
||||
* @param _solution unused solution
|
||||
* @param _current unused neighbor
|
||||
*/
|
||||
virtual void next(EOT & _solution, Neighbor & _current) {}
|
||||
|
||||
/**
|
||||
* NOTHING TO DO
|
||||
* @param _solution a solution (unused)
|
||||
* @param _solution unused solution
|
||||
* @return always false
|
||||
*/
|
||||
virtual bool cont(EOT & _solution) {
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ public:
|
|||
virtual void move(EOT & _solution) = 0 ;
|
||||
|
||||
/**
|
||||
* Get the fitness of the neighbor
|
||||
* Get the fitness
|
||||
* @return fitness of the neighbor
|
||||
*/
|
||||
const Fitness fitness() const {
|
||||
|
|
@ -104,6 +104,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Test equality between two neighbors
|
||||
* @param _neighbor a neighbor
|
||||
* @return if _neighbor and this one are equals
|
||||
*/
|
||||
|
|
@ -112,7 +113,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ public:
|
|||
moNeighborhood() {}
|
||||
|
||||
/**
|
||||
* @return if the neighborhood is random (default false)
|
||||
* @return true if the neighborhood is random (default false)
|
||||
*/
|
||||
virtual bool isRandom() {
|
||||
return false;
|
||||
|
|
@ -64,7 +64,7 @@ public:
|
|||
/**
|
||||
* Test if a solution has (again) a Neighbor
|
||||
* @param _solution the related solution
|
||||
* @return if _solution has a Neighbor
|
||||
* @return true if _solution has a Neighbor
|
||||
*/
|
||||
virtual bool hasNeighbor(EOT & _solution) = 0 ;
|
||||
|
||||
|
|
@ -85,12 +85,12 @@ public:
|
|||
/**
|
||||
* Test if there is again a neighbor
|
||||
* @param _solution the solution to explore
|
||||
* @return if there is again a neighbor not explored
|
||||
* @return true if there is again a neighbor not explored
|
||||
*/
|
||||
virtual bool cont(EOT & _solution) = 0 ;
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@
|
|||
#include <neighborhood/moIndexNeighborhood.h>
|
||||
|
||||
/**
|
||||
* A Ordered Neighborhood
|
||||
* An ordered Neighborhood
|
||||
*/
|
||||
template< class Neighbor >
|
||||
class moOrderNeighborhood : public moIndexNeighborhood<Neighbor>
|
||||
|
|
@ -59,7 +59,7 @@ public:
|
|||
moOrderNeighborhood(unsigned int _neighborhoodSize): moIndexNeighborhood<Neighbor>(_neighborhoodSize), currentIndex(0) {}
|
||||
|
||||
/**
|
||||
* Test if it exist a neighbor
|
||||
* Test if a neighbor exists
|
||||
* @param _solution the solution to explore
|
||||
* @return true if the neighborhood was not empty
|
||||
*/
|
||||
|
|
@ -107,7 +107,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -123,7 +123,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialization of the solution before the local search
|
||||
* @param _ls the local search to apply to the solution
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _monOp an eoMonOp (pertubation operator)
|
||||
* @param _fullEval a full evaluation function
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public:
|
|||
typedef moNeighborhood<OtherNeighbor> OtherNH;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _otherNeighborhood a neighborhood
|
||||
* @param _eval an Evaluation Function
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _initializer an initializer of solution
|
||||
* @param _fullEval a full evaluation function
|
||||
* @param _threshold maximum number of iteration with no improvement
|
||||
|
|
|
|||
|
|
@ -40,13 +40,13 @@ class moSolInit : public eoInit<EOT> {
|
|||
public:
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* @param _extSol external solution of the intiialization
|
||||
* Constructor
|
||||
* @param _extSol external solution of the initialization
|
||||
*/
|
||||
moSolInit(EOT & _extSol) : extSol(_extSol) {}
|
||||
|
||||
/**
|
||||
* Initialization on the externatl solution
|
||||
* Initialization on the external solution
|
||||
* @param _solution to initialize
|
||||
*/
|
||||
void operator()(EOT& _solution) {
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* return the class name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
@ -76,7 +76,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* Read object.\ \
|
||||
* Read object.\
|
||||
* Calls base class, just in case that one had something to do.
|
||||
* The read and print methods should be compatible and have the same format.
|
||||
* In principle, format is "plain": they just print a number
|
||||
|
|
@ -92,7 +92,7 @@ public:
|
|||
}
|
||||
else {
|
||||
Fitness repFit ;
|
||||
_is.seekg(pos); // rewind
|
||||
_is.seekg(pos);
|
||||
_is >> repFit;
|
||||
_is >> key;
|
||||
fitness(repFit);
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public :
|
|||
variables = _fulleval.variables;
|
||||
}
|
||||
|
||||
/*
|
||||
/**
|
||||
* incremental evaluation of the neighbor for the max SAT problem
|
||||
* @param _solution the solution (of type bit string) to move
|
||||
* @param _neighbor the neighbor (of type moBitNeigbor) to consider
|
||||
|
|
|
|||
|
|
@ -43,12 +43,12 @@ public:
|
|||
typedef typename Neighbor::EOT EOT;
|
||||
|
||||
/**
|
||||
* Default constructor
|
||||
* Constructor
|
||||
* @param _rr full evaluation of the Royal Road (to have the same block size)
|
||||
*/
|
||||
moRoyalRoadIncrEval(RoyalRoadEval<EOT> & _rr) : k(_rr.blockSize()) {}
|
||||
|
||||
/*
|
||||
/**
|
||||
* incremental evaluation of the neighbor for the Royal Road problem
|
||||
* @param _solution the solution to move (bit string)
|
||||
* @param _neighbor the neighbor to consider (of type moBitNeigbor)
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ public:
|
|||
|
||||
/**
|
||||
* apply the swap to restore the solution (use by moFullEvalByModif)
|
||||
* @param _solution the solution to move
|
||||
* @param _solution the solution to move back
|
||||
*/
|
||||
virtual void moveBack(EOT& _solution) {
|
||||
unsigned int tmp;
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public:
|
|||
typedef moSwapNeighbor<EOT, Fitness> Neighbor;
|
||||
|
||||
/**
|
||||
* @return if there are available Neighbor
|
||||
* @return true if there is at least an available neighbor
|
||||
*/
|
||||
virtual bool hasNeighbor(EOT& _solution) {
|
||||
return (_solution.size() > 1);
|
||||
|
|
@ -79,14 +79,14 @@ public:
|
|||
/**
|
||||
* Test if there is again a neighbor
|
||||
* @param _solution the solution to explore
|
||||
* @return if there is again a neighbor not explored
|
||||
* @return true if there is again a neighbor not explored
|
||||
*/
|
||||
virtual bool cont(EOT& _solution) {
|
||||
return !((indices.first == (size-2)) && (indices.second == (size-1)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the class id.
|
||||
* Return the class Name
|
||||
* @return the class name as a std::string
|
||||
*/
|
||||
virtual std::string className() const {
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood giving neighbor in random order
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
@ -73,7 +73,7 @@ public:
|
|||
moSampling<Neighbor>(_init, * new moRandomWalk<Neighbor>(_neighborhood, _fullEval, _eval, _nbStep), fitnessStat) {}
|
||||
|
||||
/**
|
||||
* default destructor
|
||||
* Destructor
|
||||
*/
|
||||
~moAutocorrelationSampling() {
|
||||
// delete the pointer on the local search which has been constructed in the constructor
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
* @param _nbSol Number of solutions in the sample
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _fullEval a full evaluation function
|
||||
* @param _dist the distance function between solution
|
||||
|
|
@ -79,7 +79,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* default destructor
|
||||
* Destructor
|
||||
*/
|
||||
~moFDCsampling() {
|
||||
// delete the pointer on the local search which has been constructed in the constructor
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to get a neighbor
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood giving neighbor in random order
|
||||
* @param _fullEval a full evaluation function
|
||||
|
|
@ -89,7 +89,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* default destructor
|
||||
* Destructor
|
||||
*/
|
||||
~moHillClimberSampling() {
|
||||
// delete the pointer on the local search which has been constructed in the constructor
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ public:
|
|||
using moFitnessCloudSampling<Neighbor>::fitnessStat;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to get one random neighbor (supposed to be random neighborhood)
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ public:
|
|||
using moFitnessCloudSampling<Neighbor>::fitnessStat;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to get one random neighbor (supposed to be random neighborhood)
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to compute the neutral degree
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -81,12 +81,12 @@ public:
|
|||
using moSampling<Neighbor>::localSearch;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* @param _initSol the first the solution of the walk
|
||||
* Constructor
|
||||
* @param _initSol the first solution of the walk
|
||||
* @param _neighborhood neighborhood giving neighbor in random order
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
* @param _eval neighbor evaluation, incremental evaluation function
|
||||
* @param _distance the distance to measure the distance from the initial solution
|
||||
* @param _distance component to measure the distance from the initial solution
|
||||
* @param _nbStep Number of steps of the random walk
|
||||
*/
|
||||
moNeutralWalkSampling(EOT & _initSol,
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public:
|
|||
using moFitnessCloudSampling<Neighbor>::fitnessStat;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to get one random neighbor (supposed to be random neighborhood)
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ public:
|
|||
using moFitnessCloudSampling<Neighbor>::fitnessStat;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _neighborhood neighborhood to get one random neighbor (supposed to be random neighborhood)
|
||||
* @param _fullEval Fitness function, full evaluation function
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ public:
|
|||
typedef typename Neighbor::EOT EOT ;
|
||||
|
||||
/**
|
||||
* Default Constructor
|
||||
* Constructor
|
||||
* @param _init initialisation method of the solution
|
||||
* @param _localSearch local search to sample the search space
|
||||
* @param _stat statistic to compute during the search
|
||||
|
|
@ -103,8 +103,7 @@ public:
|
|||
}
|
||||
|
||||
/**
|
||||
* To sample the search and get the statistics
|
||||
* the statistics are stored in the moVectorMonitor vector
|
||||
* To sample the search and get the statistics which are stored in the moVectorMonitor vector
|
||||
*/
|
||||
void operator()(void) {
|
||||
// clear all statistic vectors
|
||||
|
|
@ -172,7 +171,7 @@ public:
|
|||
|
||||
/**
|
||||
* to get one vector of values
|
||||
* @param _numStat number of stattistics to get (in order of creation)
|
||||
* @param _numStat number of statistics to get (in the order of creation)
|
||||
* @return the vector of value (all values are converted in double)
|
||||
*/
|
||||
const std::vector<double> & getValues(unsigned int _numStat) {
|
||||
|
|
@ -181,7 +180,7 @@ public:
|
|||
|
||||
/**
|
||||
* to get one vector of solutions values
|
||||
* @param _numStat number of stattistics to get (in order of creation)
|
||||
* @param _numStat number of statistics to get (in the order of creation)
|
||||
* @return the vector of value (all values are converted in double)
|
||||
*/
|
||||
const std::vector<EOT> & getSolutions(unsigned int _numStat) {
|
||||
|
|
@ -202,7 +201,6 @@ protected:
|
|||
moContinuator<Neighbor> * continuator;
|
||||
moCheckpoint<Neighbor> * checkpoint;
|
||||
|
||||
// std::vector<moStatBase<EOT>*> statVec;
|
||||
std::vector< moVectorMonitor<EOT> *> monitorVec;
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -150,7 +150,7 @@ public:
|
|||
rho.resize(nbS+1);
|
||||
phi.resize(nbS+1);
|
||||
rho[0] = 1.0;
|
||||
phi[0] = 1.0; // ?
|
||||
phi[0] = 1.0;
|
||||
|
||||
unsigned s, k;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue