Modif sur les continuator + ILS

git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@1781 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
jhumeau 2010-05-05 09:44:21 +00:00
commit f580837dde
8 changed files with 114 additions and 85 deletions

View file

@ -96,6 +96,13 @@ public :
* @param _sol the corresponding solution
*/
virtual void init(EOT& _sol) {
for (unsigned i = 0; i < stats.size(); ++i)
stats[i]->init(_sol);
counter=1;
for (unsigned int i = 0; i < monitors.size(); ++i)
(*monitors[i])();
for (unsigned i = 0; i < continuators.size(); ++i)
continuators[i]->init(_sol);
}

View file

@ -51,8 +51,13 @@ public:
*@return true if counter < maxIter
*/
virtual bool operator()(EOT & _solution) {
bool res;
cpt++;
return (cpt < maxIter);
res = (cpt < maxIter);
if(!res){
std::cout << "STOP in moIterContinuator: Reached maximum number of iterations [" << cpt << "/" << maxIter << "]" << std::endl;
}
return res;
}
/**

View file

@ -54,6 +54,11 @@ public:
*/
virtual void lastCall(EOT &) {}
/**
* first call of a statistical operator
*/
virtual void init(EOT &){}
/**
* @return name of the class
*/

View file

@ -66,6 +66,14 @@ public:
return true;
}
/**
* reset the start time
* @param _solution a solution
*/
virtual void init(EOT & _solution) {
start = time(NULL);
}
/**
* Class name