ILS v1 :)
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@1727 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
6de0a60f27
commit
6bb2a4a822
21 changed files with 330 additions and 60 deletions
|
|
@ -63,7 +63,7 @@ typedef moDummyRndNeighborhood bitNeighborhood ;
|
|||
|
||||
typedef EO<int> Solution;
|
||||
|
||||
class moDummyNeighbor : public moNeighbor<Solution,int> {
|
||||
class moDummyNeighborTest : public moNeighbor<Solution,int> {
|
||||
public:
|
||||
virtual void move(Solution & _solution) {}
|
||||
};
|
||||
|
|
@ -74,11 +74,11 @@ public:
|
|||
virtual void moveBack(Solution & _solution) {}
|
||||
};
|
||||
|
||||
class moDummyNeighborhood : public moNeighborhood<moDummyNeighbor> {
|
||||
class moDummyNeighborhoodTest : public moNeighborhood<moDummyNeighborTest> {
|
||||
public:
|
||||
typedef moDummyNeighbor Neighbor;
|
||||
typedef moDummyNeighborTest Neighbor;
|
||||
|
||||
moDummyNeighborhood():i(0),j(0) {}
|
||||
moDummyNeighborhoodTest():i(0),j(0) {}
|
||||
|
||||
virtual bool hasNeighbor(EOT & _solution) {
|
||||
bool res;
|
||||
|
|
@ -100,7 +100,7 @@ private:
|
|||
int i,j;
|
||||
};
|
||||
|
||||
class moDummyEval: public eoEvalFunc<Solution> {
|
||||
class moDummyEvalTest: public eoEvalFunc<Solution> {
|
||||
public:
|
||||
void operator()(Solution& _sol) {
|
||||
if (_sol.invalid())
|
||||
|
|
|
|||
|
|
@ -45,11 +45,11 @@ int main() {
|
|||
std::cout << "[t-moFullEvalByCopy] => START" << std::endl;
|
||||
|
||||
Solution sol;
|
||||
moDummyNeighbor neighbor;
|
||||
moDummyEval eval;
|
||||
moDummyNeighborTest neighbor;
|
||||
moDummyEvalTest eval;
|
||||
|
||||
//verif constructor
|
||||
moFullEvalByCopy<moDummyNeighbor> test(eval);
|
||||
moFullEvalByCopy<moDummyNeighborTest> test(eval);
|
||||
|
||||
sol.fitness(3);
|
||||
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ int main() {
|
|||
|
||||
Solution sol;
|
||||
moDummyBackableNeighbor neighbor;
|
||||
moDummyEval eval;
|
||||
moDummyEvalTest eval;
|
||||
|
||||
//verif constructor
|
||||
moFullEvalByModif<moDummyBackableNeighbor> test(eval);
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ int main() {
|
|||
std::cout << "[t-moNeighbor] => START" << std::endl;
|
||||
|
||||
//test constructor
|
||||
moDummyNeighbor test1, test2;
|
||||
moDummyNeighborTest test1, test2;
|
||||
|
||||
test1.fitness(3);
|
||||
//test operateur d'affectation
|
||||
|
|
@ -50,7 +50,7 @@ int main() {
|
|||
assert(test1.fitness()==test2.fitness());
|
||||
|
||||
//test operateur de copy
|
||||
moDummyNeighbor test3(test1);
|
||||
moDummyNeighborTest test3(test1);
|
||||
assert(test1.fitness()==test3.fitness());
|
||||
|
||||
test1.printOn(std::cout);
|
||||
|
|
|
|||
|
|
@ -48,15 +48,15 @@ int main() {
|
|||
std::cout << "[t-moSimpleHCexplorer] => START" << std::endl;
|
||||
|
||||
Solution sol;
|
||||
moDummyNeighbor neighbor;
|
||||
moDummyEval eval;
|
||||
moDummyNeighborhood nh;
|
||||
moFullEvalByCopy<moDummyNeighbor> fulleval(eval);
|
||||
moNeighborComparator<moDummyNeighbor> comp;
|
||||
moSolNeighborComparator<moDummyNeighbor> solNeighborComp;
|
||||
moDummyNeighborTest neighbor;
|
||||
moDummyEvalTest eval;
|
||||
moDummyNeighborhoodTest nh;
|
||||
moFullEvalByCopy<moDummyNeighborTest> fulleval(eval);
|
||||
moNeighborComparator<moDummyNeighborTest> comp;
|
||||
moSolNeighborComparator<moDummyNeighborTest> solNeighborComp;
|
||||
|
||||
//verif constructor
|
||||
moSimpleHCexplorer<moDummyNeighborhood> test(nh, fulleval, comp, solNeighborComp);
|
||||
moSimpleHCexplorer<moDummyNeighborhoodTest> test(nh, fulleval, comp, solNeighborComp);
|
||||
|
||||
//verif operator() et accept: le neigorhood est construit pour qu'on tombe dans les 3 cas suivants:
|
||||
//hasNeighbor() retourne faux a l'entrée de l'operator() donc on doit pas continuer
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ int main() {
|
|||
|
||||
std::cout << "[t-moTrueContinuator] => START" << std::endl;
|
||||
|
||||
moTrueContinuator<moDummyNeighborhood> test;
|
||||
moTrueContinuator<moDummyNeighborhoodTest> test;
|
||||
Solution s;
|
||||
|
||||
assert(test(s));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue