moSimple(Move/Solution)TabuList are updated, Doxyfile too
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@286 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
bfe7aee5a2
commit
9fc380c8dd
219 changed files with 1737 additions and 709 deletions
|
|
@ -67,6 +67,13 @@ public:
|
|||
EOT _sol=(EOT) _sol;
|
||||
|
||||
_move(_sol);
|
||||
|
||||
if(currentSize!=0)
|
||||
{
|
||||
// Useful in the case of a solution has been kept thanks to the moAspirCrit.
|
||||
// In this case, the solution can already be in the tabuList.
|
||||
removeSolution(_sol);
|
||||
}
|
||||
|
||||
tabuList.push_back(_sol);
|
||||
|
||||
|
|
@ -93,6 +100,27 @@ public:
|
|||
}
|
||||
|
||||
private:
|
||||
|
||||
//! Procedure that removes a given solution from the tabu list (if it is into, else does nothing).
|
||||
/*!
|
||||
\param __sol A given solution.
|
||||
*/
|
||||
void
|
||||
removeSolution(const EOT & __sol)
|
||||
{
|
||||
typename std::list<EOT>::iterator it;
|
||||
|
||||
it=tabuList.begin();
|
||||
while(it!=tabuList.end()&&(!((*it)==__sol)))
|
||||
{
|
||||
it++;
|
||||
}
|
||||
|
||||
if(it!=tabuList.end())
|
||||
{
|
||||
tabuList.erase(it);
|
||||
}
|
||||
}
|
||||
|
||||
//! The maximum size of the tabu list.
|
||||
unsigned maxSize;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue