Commit graph

251 commits

Author SHA1 Message Date
evomarc
6acdcb6d9b THe big eoReplacement update:
The interface for eoReplacement is now eoPop<EOT>&, eoPop<EOT>&
(i.e. no const) and the result must be in the first argument in the end.

Hence it is possible to do SSGA and all intermediate replacmeent procedures

The classes derived from eoMergeReduce.h are now in a separate file
The SSGA-like replcaement procedures are in eoReduceMerge.h
A more general replacement can be found in eoSurviveAndDie.h
(it could be made a littel more general - still open for upgrades).

Also some accessors have been added to the eoPop (best and worse individuals)

And include file eo has been updated
2000-12-19 18:41:19 +00:00
evomarc
6a0010474a A new util class to handle the rate/integer argument to selectors/replacement 2000-12-19 18:09:10 +00:00
evomarc
c18f63f7e4 Added utils/eoGnuplot1DMonitor.h ni the list of includes 2000-12-15 16:57:37 +00:00
evomarc
0d9e6b2941 New base class eoUpdatable.h - for objects that need upates in eoCheckPoints
Also contains the class eoDynUpdater. They are eoUpdater, they receive an eoUpdatable
at construct time, and call their upate() method in their operator() method
2000-12-07 09:56:00 +00:00
evomarc
e0076740f8 Added virtual and const keywords all around - as I tried to use a derived
class for adaptive rates (see eoDynProportionalCombinedOp.h, at the moment
in the tutorial)
2000-12-05 05:22:55 +00:00
evomarc
4944881d7c - added the #define for eo_verbose (true) and eo_no_verbose (false)
- added the eoNormMutation, simple normal mutation for simple real variables
Modified Files:
 	src/eo src/es/eoRealOp.h tutorial/Lesson2/FirstRealEA.cpp
 	tutorial/Lesson3/SecondBitEA.cpp
2000-12-04 14:53:59 +00:00
evomarc
0e62de2d14 Added the lastCall construct: if the stopping condition becomes true in eoCheckPoint,
a method called lastCall is called for everything contained in that checkpoint
      (stats, updaters and monitors). This can be extremely useful
      - for stateSavers (see below)
      - for monitoring things like rates of success of operators, where what you
        are interested in is the final result only.
Added of course a virtual method lastCall that does nothing by default in classes
      eoBaseStat, eoBaseSortedStat, eoUpdater and eoMonitor
Added a boolean to control the save of the state in method eoCountedStateSaver::lastCall
      so you can ask that the state is saved at final population, whatever happens.
      I also added the corresponding constructor to take this into account.
2000-12-04 06:58:43 +00:00
evomarc
5c5142e59c Added a comment so Doxygen documents it 2000-12-04 05:55:59 +00:00
evomarc
00e21770ad Changed the (abstract) name for fitness from F to FitT so it matches
that of file eoFixedLength.h - it is far clearer in the documentation
diagrams this way.
2000-12-02 08:21:18 +00:00
gustavoromero
2abab21960 adding a new terminator and a monitor 2000-12-01 19:09:34 +00:00
gustavoromero
142c7d779c adding a lot of includes 2000-12-01 15:46:07 +00:00
gustavoromero
a9468f38c9 small fix for uniform 2000-11-30 17:11:53 +00:00
evomarc
9af974070a Corrected a small bug (!): the -C=value was not processed correctly
as somebody forgot one character when counting up to ... 3 :-)))
2000-11-30 06:38:15 +00:00
evomarc
109fc551ab Reversed the priority between command-line and parameter file 2000-11-30 06:20:20 +00:00
evomarc
2169a65f80 Moved eoCopyElite.h to obsolete dir - was redundant with eoMerge.h 2000-11-30 06:11:49 +00:00
evomarc
5c9bec34d6 Removed eoCopyElite.h, redundant with eoMerge.h 2000-11-30 06:04:09 +00:00
evomarc
29b8f1153c An include file was missing!!!
I've inserted it in teh file actually - but if we go on with gnuplot,
it will need to be taken out again, and used in all other monitors
we will write using gnuplot (e.g. eoGnuplotWithErrorbarsMonitor,
eoGnuplotHistogramMonitor, ...).
2000-11-29 17:20:16 +00:00
evomarc
a69a198770 Added eoProportionalCombinedOp.h 2000-11-28 17:42:53 +00:00
evomarc
52a9c830c8 I added this very simple instance of operator proportional selector
for the tutorial - it is consistent with all other xxxCombined constructs.
However, I am not sure that Occam's razor will not make it widely used...
2000-11-28 17:41:41 +00:00
evomarc
12c6bdf058 Added the class eoSGATransform: I break the one file / one class rule
a lot, but both are supposed to be used mainly in the tutorial, not
in real life :-)
2000-11-28 17:17:19 +00:00
evomarc
f5174e3a42 Added fstream in the include files - I had an error message at some point! 2000-11-28 15:40:39 +00:00
evomarc
e4b735b17f Added a comment to stdout upon termination - so we know why we stop in case
of multiple criteria
2000-11-28 15:35:09 +00:00
evomarc
5aa258fbcb Minor change of the default label 2000-11-28 15:31:38 +00:00
evomarc
afdcdf5d07 Added a few comments so Doxygen documents all classes 2000-11-28 08:20:01 +00:00
evomarc
622cbea0d5 This is the first attempt to use gnuplot through a fork to plot statistics.
At the moment it is only tested for Linux!
Use with care
2000-11-28 06:58:06 +00:00
evomarc
bee8388a1e Modified the contructor: the default value for the delimiter is now " "
and I added a boolean argument to indicate whether or not we want to
         overwrite an existing file with same name (default is overwrite).
Added the getFileName accessor.
2000-11-28 06:46:37 +00:00
evomarc
b39ebbed70 Added eoSteadyGenContinue.h, es/eoReal.h and es/eoRealOp.h 2000-11-24 17:45:07 +00:00
evomarc
d0e566fdf4 Very simple classes for vectors of (unbounded) real numbers.
A few straightforward operators only (BLX-0, uniform mutation).
Mostly for tutorial reasons - though it might improve in usefull classes later
2000-11-24 17:44:21 +00:00
evomarc
8f9f255223 An eoContinue class that allows a minimum number of generations,
then stops whenever a number of generations happens without fitness
improvement.
2000-11-24 17:41:39 +00:00
evomarc
08e6be4b66 Added a verbose mode (the default behavior) which is as before.
But when in non-verbose mode, prints only one line per generation.
2000-11-24 17:36:03 +00:00
evomarc
0fd1336bfe Turned the eoBestFitness into an eoStat (it was an eoSortedStat).
Alos added a few comments so that Doxygen documents all classes there.
2000-11-24 17:30:37 +00:00
evomarc
3ec57ed93f Changed Maarten's 2-continuator construct into a vector of pointer,
as in all other Combined constructs in EO.
Kept the construtor with 2 eoCOntinue for backward compatibility.
Added of course the add method!
2000-11-24 17:26:22 +00:00
gustavoromero
6a7102f5b6 changing genetic operators 2000-11-24 12:33:44 +00:00
gustavoromero
2b03bd6dae fix Fitness default construction value 2000-11-24 11:52:49 +00:00
evomarc
265be972ef Made eoBestFitnessStat an eoStat, NOT an eoSortedStat
Cde VS: Committing in .
2000-11-17 17:50:08 +00:00
evomarc
683bc2e44f dded the className method for eoMon, eoBin and eoQuad classes 2000-11-17 17:06:53 +00:00
gustavoromero
a1cd1fd3bf fix warning: no newline at end of file 2000-11-10 09:55:10 +00:00
gustavoromero
5af354e455 fix no newline at end of file warning 2000-11-08 15:15:26 +00:00
gustavoromero
1316949216 choose a constructor 2000-11-08 13:37:41 +00:00
gustavoromero
38838f753a fix no newline at end of file warning 2000-11-08 13:26:03 +00:00
gustavoromero
f48fbcf51a adding a include for apply.h 2000-11-08 12:56:14 +00:00
gustavoromero
2d5dbf6cfb fix no newline at end of file warning 2000-11-08 12:55:26 +00:00
gustavoromero
9692852c95 bug fix 2000-11-08 12:38:13 +00:00
gustavoromero
31ed49002b removing a warning 2000-11-07 19:13:22 +00:00
evomarc
6fc47590cd Added constructors with 2 params _min and _max in generators
so you can now generate things in [_min, _max) instead of [0,_max) only
Modified the private data from maxim to {minim, range} accordingly.
2000-11-05 05:33:43 +00:00
evomarc
0642954035 Added a default value (0.5) to method flip 2000-11-05 04:50:10 +00:00
evomarc
01e4aa9cdc Added some safety test in roulette_wheel procedures:
if total is zero, used to return iterator -1 - now returns uniform choice
2000-10-30 14:54:29 +00:00
evomarc
e3e4a0b719 Fine tuning of printOn: if fitness is invalid, now prints it 2000-10-30 14:51:57 +00:00
maartenkeijzer
08abf46576 Another attempt in adding the flush 2000-10-27 09:13:06 +00:00
maartenkeijzer
8684e1fac1 updated version info, added flush to stdoutmonitor and sprinkled a few typenames
in eoPop.h and eoGOpSelector.h (egcs 2.96 started complaining).
2000-10-27 09:12:31 +00:00