Commit graph

410 commits

Author SHA1 Message Date
evomarc
6c969bfbce Suppressed the gene mutations, as they are now in eoFlOrMonOp.h 2001-07-11 06:26:11 +00:00
evomarc
7ac9996675 Oups! 2001-07-04 04:59:02 +00:00
evomarc
963683996d Adding eoPopEvalFunc, that handles evaluation globally: it receives
two populations, parents and offspring, and does whatever necessary.
The subclass eoPopLoopEval does the simple loop on the offspring.

eoEasyEA was subsequently modified to handle an eoPopEval passed in Ctor,
but also to encapsulate an eoEvalFunc into an eoPopLoopEval tranparently.
2001-07-04 04:44:30 +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
jeggermo
a611939e68 Changed the directory structure for gp
now: eoParseTree <-- the eoParseTree class
     eoParseTreeDepthInit <-- the eoParseTree depth initializer (eoGpDepthInitializer)
     eoParseTreeOp <-- the operators (xover and mutation)

base documentation written for:
* eoParseTree
* eoGpDepthInitializer
* eoSubtreeXOver
* eoBranchMutation
* eoPointMutation
* eoExpansionMutation
* eoCollapseSubtreeMutation
* eoHoistMutation

I also created a group ParseTree which contains all classes related to eoParseTree

eoGpMutate.h has been removed (merged with eoParseTree operators into eoParseTreeOp
2001-07-02 13:31:04 +00:00
jeggermo
402e34c238 The constructor for the eoGpDepthInitializer has been extended with a
sort of the initializor vector containing all possible nodes. This sort
assures that the terminals are in the front of vector. Untill now this
was assumed but not checked or enforced.
2001-07-02 11:38:27 +00:00
jeggermo
af726e9d9e eoSubtreeXOver fixed 2001-07-02 08:28:40 +00:00
evomarc
967670e2c7 Added random selection 2001-06-30 05:59:26 +00:00
evomarc
48a784d122 Corrected a wrong comment 2001-06-30 05:57:10 +00:00
maartenkeijzer
f674fbeb14 oops, thanks jeroen 2001-06-29 18:06:10 +00:00
jeggermo
3486dfafd6 eoGpMutate.h added containing 4 new mutation operators for eoParseTree class 2001-06-28 14:18:47 +00:00
jeggermo
164e36b184 Additional mutation operators for eoParseTree
* Point Mutation
* Expansion Mutation
* Collapse Subtree Mutation
* Hoist
2001-06-28 13:55:14 +00:00
maartenkeijzer
49434ecc03 Added a check for an empty initializor 2001-06-11 12:37:21 +00:00
evomarc
b72a85fa1b ? 2001-05-21 04:16:26 +00:00
evomarc
91342e7080 Modifs in es (crossover added in make_op_es).
Added a dummy selector in eoReandomSelect that does work even with invalid EOs
2001-05-21 04:14:36 +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
8e5e9d14cf Coreected a cut-and-paste bug :-( 2001-05-18 17:46:33 +00:00
evomarc
0286faed1b Removed remaining debugging comment 2001-05-18 03:59:22 +00:00
jmerelo
17dc4f9d10 Changed MGE to the contrib dir. No need to change the prefix, I guess 2001-05-17 10:08:25 +00:00
jmerelo
34cb430bd7 Added Royal Road, MGE now work with it, small modifications to eoPopStat 2001-05-11 10:44:01 +00:00
jmerelo
88f281b606 Added 'Viral' operators with test. Implements the Mobile Genetic Elements Technique 2001-05-10 12:16:00 +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
42cb1981d5 In eoParser::readFrom, added a test to avoid reading non-parser sections
as these generally contain many -xxx that generate a reading error
when xxx is not a keyword.
This allows to use State-savec files directly as parameter files
2001-05-08 03:49:35 +00:00
evomarc
0aa6a235ef Replaced stupid eoRateParam by eoValueParam<eoHowMnay>
Had to transform eoHowMany into an eoPersistent ...
2001-05-07 07:13:36 +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
4cce84280e Hange of comments and names 2001-05-03 05:43:40 +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
4a152dc172 Removing make_help.cpp 2001-05-01 05:00:29 +00:00
evomarc
5bea22e876 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:24:42 +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
1c75344197 Some changes in names, before too many users have to modify their code :-)
Changed ga.h in src/ga into make_ga.h (was ambiguous with src/ga.h)
Chenged 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!)
2001-04-30 12:26:31 +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
evomarc
511dc26623 Changed obscure comment into more detailed one 2001-04-24 09:42:01 +00:00