Apart from big changes in the src/ga dir, and the addition of the src/do dir
it also generated a few changes here and there, e.g. some include file still
missing. Also removed some warning from some test files.
put the #define of some boolean in eoData.h
added some include that were missing (unnoticed because of include<eo>)
some checks in eoXXXTournamentSelect
Also made the corresponding isItThere method in eoParser public.
This allows one to test if the user did actually input a given parameter
and thus not to write it in the output if not - as we want the output
of printOn to be "as identical as possible" to the actual user input
to make t-eoGA work (you should NOT have separate functions in .h files!)
I also included everything related to Ctrl C handling in #ifndef _MSC_VER
until someone tells me how to do it in MSVC
FDCStat and FileSnapshot: better error messageing
Scalar fitness: is now a vector of doubles
exercise3.1 added gnuplot again
Don't know about eoCombinedContinue
Modified utils/checkpointing accordingly.
Tested in tutorial/Lesson3/exercise3.1
BTW, the eoFileSnapShot does not work any more - I've commented it out
and will look at that later...
It is no longer derived from eoPop, it now gets a destination population.
This saves a lot of copying. The semantics has changed a little as well. It is
now an _infinite_ iterator. operator++ will *not* dispense new individuals, but
will merely stay at the end. To get a new indy, use operator*() as before.
eoEasyEA now checks the checkpoint *after* making a generation and clears the offspring
eoGeneralBreeder is changed to reflect the changes in eoPopulator
eoSequentialSelect now uses setup() rather than init()
To be able to use the primitive std::generate function, added a
set of wrappers in eoSTLFunctor.h that have the copy semantics most
STL functions expect (namely pass-by-value rather then pass-by-reference).
Updated test/Makefile.am to also test t-eoRandom
Also: introducing eoRndGenerators.h for eoRndGenerator derived classes:
eoNormalGenerator
eoUniformGenerator
eoBooleanGenerator
eoNegExpGenerator
Note the suffix that are added to aid in determining what these classes do
2 new important classes: eoPerf2Worth and eoSelectFromWorth
Instances of eoPerf2Worth are eoRanking and eoLinearFitScaling.
Coming soon (piece of cake now) are the niching strategies (sharing, clearing)