Commit graph

78 commits

Author SHA1 Message Date
evomarc
30ceb2bf45 Added the Ctor using the Parser 2004-06-23 23:19:17 +00:00
evomarc
795f63b7fe Adding sharing - needed to modify quite a few files, like eoDistance.h
make_algo_scalar.h and all related files, and the like
2004-05-25 08:03:30 +00:00
evomarc
c819ba4f6a Corrected a but in eoUniformMutation (only the first component ever got modified!
Thanks to Jeroen's student ...
2003-12-24 16:38:02 +00:00
evomarc
bc1e98a65a Updated lists of headers in some Makefile.am (thanks to Claude Dion for pointing this out)
While there, changed the presentations of source and headers (1 per line with \)
2003-09-20 05:42:23 +00:00
evomarc
0f8244e694 Added 2 missing headers (and broke the long lines).
Thanks to Jochen Küpper for pointing this out.
2003-09-01 12:56:29 +00:00
evomarc
baeeeec1e5 Corrected a HUGE bug in eoRealUXover !!!
Thanks to Gilles BAUDRILLARD - EADS
2003-08-26 18:07:06 +00:00
okoenig
b643ec2be3 Inserted a missing std:: 2003-07-30 14:48:13 +00:00
evomarc
4c2d0f2ea0 Adding the SBX operator in es dir 2003-07-28 09:47:15 +00:00
okoenig
86fa476c67 Removed "using namespace std" statements from header files in EO -- "std::" identifier were added where necessary. 2003-02-27 19:28:07 +00:00
evomarc
8998caa4ff THe code for the 1/5th mutation was completely wrong! 2002-05-01 02:44:54 +00:00
evomarc
d40ef9a053 Turned the createParam into getORcreateParam so that you can more easily
define them before (e.g. from the problem at hand).
This is useful specially for vecSize as some problems have predefined values
2002-04-26 02:28:19 +00:00
evomarc
6546cb8c52 Corrected a serious bug in eoUniformMutation (double declaration of bool HasChanged)
The consequence was that if that mutation was the only operator called on some
individual, it was not invalidated, and hence its fitness not recomputed!!!
2002-02-09 05:01:48 +00:00
evomarc
f41cd957c0 Changes due to MSVC 2001-11-17 07:22:59 +00:00
evomarc
8abb9242c2 Some error for MSVC that was not even a warning for g++ (but I'm sorry
to say that MSVC is right :-)
2001-11-16 15:06:29 +00:00
evomarc
4ad58c360e Some more small changes for MSVC++ compatibility 2001-11-12 14:17:58 +00:00
evomarc
d7c3d973c7 Small modifications here and there to be MSVC++ compatible
Mainly, time.h -> ctime
        definition of loop index out of loops when multiply used
        no typename in declaration using template typename
2001-11-10 09:02:17 +00:00
evomarc
a5e3abd9f6 Added the #pragma directive for MSVC++ in all .cpp 2001-11-10 06:59:02 +00:00
evomarc
9b7556d81e I have changed all calls to use an eoParser rather than an eoParameterLoader
This is required if you want to use the method getParamWithLongName that allows
one to get a value of a parameter read somewhere else.
After changing 3 calls due to that, I decided to change ALL calls within
the make_xxx functions
2001-11-08 06:14:59 +00:00
evomarc
f7377b0fcf All files on one line in Makefile.am (for Windows) 2001-10-18 04:37:14 +00:00
evomarc
f2c21bdc0b Removed trailing text after #endif - causes warning on many compilers 2001-10-08 09:14:15 +00:00
evomarc
d0d14c3ff8 Removed trailing string after #endif - it generates a lot of useless warning
on some versions of g++
2001-09-08 05:59:17 +00:00
evomarc
88061395f1 Added the eoPopEvalFunc class: gets the full parents + offspring populations
in order to evaluate them.
Modified eoEaseyEA accordingly - you can either pass an eoEvalFunc, as
before (it is then encapsulated into an eoPopLoopEval that does the good
old loop on the offspring - or directly pass a full eoPopEvalFunc

Small modification also in make_op_es -> keyword "none" is now recognized
for one of the crossover of either object variables or stdev's
2001-07-03 12:56:44 +00:00
evomarc
b72a85fa1b ? 2001-05-21 04:16:26 +00:00
evomarc
8b177dd6cd Added the crossover in make_op_es (parameters were read, but that's all! 2001-05-21 04:13:10 +00:00
evomarc
9631c9eb11 Changed name of eoEsLocalXover to eoEsStandardXover and made it an eoBinOp
Removed obsolete eoEsStdevXOver.h (see eoEsStandardXover.h above)
2001-05-19 06:15:01 +00:00
evomarc
b7915a4bbe CHanged CXXFLAGS to nothing - so lib files remain of manageable size! 2001-05-08 04:44:30 +00:00
evomarc
09388c8ed5 Bing change in eoRealBounds: it is now deriving from eoPersistent.
More important, the eoRealVectorBounds, vectorized version (a vector<eoRealBounds *>
has also become an eoPersistent object and now derives from an eoRealBaseVectorBounds
class.
A useful consequence (and actual motivatino) was to be able to have soem
eoValueParam<eoRealVectorBounds> with all possibilities for input
(see doc for Lesson4 in the tutorial for the syntax).
2001-05-08 04:41:51 +00:00
evomarc
5508869d00 A full working version of ES is now available in tutorial/Lesson4,
that makes full use of libes.a.
The user guide is in Lesson4 of the tutorial - programmer's guide
will come later.
Plus many small changes here and there
2001-05-04 16:51:29 +00:00
evomarc
f4d2630516 Corrected a problem in eoEsChromInit (it refused plain eoReal) + some
other minor modications (e.g. a dir in make_checkpoint where ALL file
will go).
2001-05-03 17:20:27 +00:00
evomarc
6af035d2fa Adding files in es for ES Crossovers 2001-05-02 10:57:35 +00:00
evomarc
29b25024b7 Forgotten file ... 2001-05-02 10:54:17 +00:00
evomarc
bb19ed633b Forgotten new file 2001-05-02 10:53:14 +00:00
evomarc
6493ef8889 Added the new eoEsXXXover.h in Malefile.am 2001-05-02 10:50:01 +00:00
evomarc
17484feeef Forgotten ES files + start of tutorial Lesson4 (about make_XXX) 2001-05-02 10:47:56 +00:00
evomarc
10064ad967 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
2001-05-02 10:42:32 +00:00
evomarc
d90286d890 Some changes in names, before too many users have to modify their code :-)
Changed es.h in src/es into make_es.h (was ambiguous with src/es.h)
Changed the interface of make_genotype - now templatized by the EOT
and not the fitness - this is mandatory for ES genoptypes as it allows to
choose the type of gentype at run-time (from existing types, of course!)

Also moved make_help.cpp into utils dir (otherwise you'd had to maintain
a copy into each representation dir!).
2001-04-30 13:01:07 +00:00
evomarc
4f05bfaaf1 Re-introduced the old ctors for the mutations (for backward compatibility
with the tutorial :-(
2001-04-29 05:03:05 +00:00
evomarc
0c3f372f7b Declarations for make_xxx_real.cpp files - for eoReal genotypes
Was previously es.h - now es.h is specifically for ES genotypes
2001-04-28 06:06:21 +00:00
evomarc
fc01c6862a Adding first bricks of ES algorithm - make_XXX_es.cpp 2001-04-28 05:53:37 +00:00
evomarc
a7042bffee Added bounds to the real operators in make_XXX (and hence in t-eoReal) 2001-04-28 05:47:18 +00:00
evomarc
7b8999b205 Removed the -O2 from ga and es dirs - it takes waaaaaaaaaaaaay too much time
at least with g++ 2.95.3
2001-04-27 04:03:16 +00:00
evomarc
95bd02adbf The declaratio file for all make_* 2001-04-26 15:47:37 +00:00
evomarc
2d6bb7ae0c Removing eoRealBounds from Makefile.am 2001-04-26 15:35:30 +00:00
evomarc
b7ad190260 An initializer of eoReal that uses bounds 2001-04-26 15:31:48 +00:00
evomarc
538d91c601 Adding all make_*_real.* - similar to ga stuff for eoReal (not ES yet) 2001-04-26 15:27:48 +00:00
evomarc
4968d64b05 Doing libes.a in src/es and adding t-eoReal.cpp in test
I had to move eoRealBounds to utils dir because of global objects
Some domino consequences here and there ...
2001-04-26 15:24:53 +00:00
maartenkeijzer
025eb736ee eoVector is back (eoFixedLength and eoVariableLength are gone)
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
2001-02-17 10:51:31 +00:00
evomarc
9dbb516d8b Modified the comments so that all callses are documented by Doxygen
(a comment starting with // before the class definition is not taken into account)
Also updated the initial overall comment -
and waouw, doxygen generates links there, too! Cool.
2001-02-15 05:35:31 +00:00
evomarc
bf0e84fc56 A few minor corrections (and some comments) after Maarten big commit 2001-02-15 04:47:18 +00:00
maartenkeijzer
3a9b5a0e7e Well, what do you know, major commit.
Changed the signature of eoMon, eoBin and eoQuadOp to return a bool,
without invalidating fitness. Added a set of invalidators to take over
that job (see for instance eoSGA and eoSGATransform how this can transparantly used)

Derived eoState from eoFunctorStore (for convenience, from a design perspective this may sound wrong)

Added a wrap_op function that does the wrapping for you (see eoOpContainer how this made this functor
exceedingly less hairy). Checked all the tests removed the eoGeneric*Op family (not needed anymore)
and of course changed all the operators to reflect the change (and found a few that didn't
invalidate the fitness, thus really pointing out the advantage of the current approach)
2001-02-14 10:35:26 +00:00