Adding Evolution Strategies:

src/es/eoEsGlobalXover.h and src/es/eoEsLocalXover.h for crossover
src/es/make_XXX_es.h for user-input
test/t-eoEsAll.cpp to test

However, an old bug appeared: className was not const in eoGenOp (and derived classes)
so I had to change that throughtout the hierarchy
This commit is contained in:
evomarc 2001-05-02 10:42:32 +00:00
commit 10064ad967
28 changed files with 471 additions and 180 deletions

View file

@ -87,7 +87,7 @@ template<class EOT> class eoUniformMutation: public eoMonOp<EOT>
p_change(_p_change) {}
/// The class name.
string className() const { return "eoUniformMutation"; }
virtual string className() const { return "eoUniformMutation"; }
/**
* Do it!
@ -191,7 +191,7 @@ template<class EOT> class eoDetUniformMutation: public eoMonOp<EOT>
}
/// The class name.
string className() const { return "eoDetUniformMutation"; }
virtual string className() const { return "eoDetUniformMutation"; }
/**
* Do it!
@ -273,7 +273,7 @@ template<class EOT> class eoSegmentCrossover: public eoQuadOp<EOT>
bounds(_bounds), alpha(_alpha), range(1+2*_alpha) {}
/// The class name.
string className() const { return "eoSegmentCrossover"; }
virtual string className() const { return "eoSegmentCrossover"; }
/**
* segment crossover - modifies both parents
@ -371,7 +371,7 @@ template<class EOT> class eoArithmeticCrossover: public eoQuadOp<EOT>
}
/// The class name.
string className() const { return "eoArithmeticCrossover"; }
virtual string className() const { return "eoArithmeticCrossover"; }
/**
* arithmetical crossover - modifies both parents
@ -448,7 +448,7 @@ template<class EOT> class eoRealUxOver: public eoQuadOp<EOT>
}
/// The class name.
string className() const { return "eoRealUxOver"; }
virtual string className() const { return "eoRealUxOver"; }
/**
* Uniform crossover for real vectors