Commit graph

481 commits

Author SHA1 Message Date
evomarc
1662fd2a8b Modified crossover and mutation to account for the new interface (bool ...)
Added the genop.tmpl, template for general op, 3 cases, growing pop,
shrinking pop through erase, thrinking pop through extra selector
2001-02-17 06:42:20 +00:00
evomarc
83e883a158 Added oine star at start of comment to have Doxygen process it !!! 2001-02-16 18:00:18 +00:00
maartenkeijzer
70d9804277 works for me 2001-02-16 09:39:06 +00:00
evomarc
7e849e2082 The perf2worth major check in
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)
2001-02-16 08:21:25 +00:00
evomarc
da8b467b12 Only names modifications, to comply to EO strict rules :-) 2001-02-16 05:06:17 +00:00
maartenkeijzer
0540496021 reverted the max-to-produce initializer 2001-02-15 08:31:38 +00:00
evomarc
562b0b63e3 Changed the default values for popsize, vecsize and maxgen so
the user has a chance to see something even on Pentium 10GHz :-)
2001-02-15 05:36:28 +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
2ff2b66fdd updated the dsp, dsw files for the library 2001-02-14 18:05:36 +00:00
maartenkeijzer
98a9f24879 no need to keep these test functions here, will start new project in /test 2001-02-14 18:01:30 +00:00
maartenkeijzer
8ce0e6bb2a Changed the return value to return what it got in 2001-02-14 14:09:16 +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
jmerelo
17d55ae92b Just playing with the CVS variables 2001-02-13 22:39:56 +00:00
jmerelo
b7d071d92d Just playing with the CVS variables 2001-02-13 22:38:23 +00:00
jmerelo
0dd3e27e4e Moved out of the 'obsolete' directory a couple of honest classes, which didn't harm anybody; activated also in Makefile.am the program that tested them 2001-02-13 22:35:07 +00:00
maartenkeijzer
07bc61e694 Added a bit more documentation, more to follow (I hope) 2001-02-13 14:43:54 +00:00
maartenkeijzer
262869d0ae fixed a bug: the parser now correctly parses parameters of the form
-Pvalue

This will now produce 'value'. The buggy parser would parse 'alue' here. I am truly and deeply
ashamed to have created such an off-by-one error.

Marc assumed this was wanted behaviour (so that it should read: -P=value)
I must admit that this is a logical conclusion, though it was merely a side-effect
of the error. To not force Marc to rewrite the tutorial and his way of working with
EO, I decided to make a feature out of the bug, so that now the parser will parse:

-Pvalue
-P=value

and of course the true and blue:

-Parameter=value

I will now go and check if I sent out some crappy papers caused by this bug (as I've been using eo!)
2001-02-13 12:38:19 +00:00
maartenkeijzer
680229507f Just an update 2001-02-13 10:35:47 +00:00
maartenkeijzer
dea8a51f7e Ok, updated the Makefile.am again to use the
make check

Command I picked up in the automake documentation (RTFM, you know)

Tagged a lot of header functions in the GnuPlot files with 'inline',
so they can be used from more than one sourcefile.

Ok, now the interesting news. Started a new library libga (not to be confused
with Matthew's GaLib). Here I suggest we put a fairly complete and configurable
genetic algorithm. Just to see how far we can stretch ourselves and also to have
a GA-componenent that can be used in other applications without having to rebuild
the entire thing. test/t-eoGA.cpp tests this library
2001-02-12 13:58:51 +00:00
maartenkeijzer
9f5069b23a run_tests is expanded to run everything (but only once yet, will have
to address this later).
t-eoSymreg is build to run for just a few generations, otherwise testing
it would be an excercise in patience.
2001-02-11 16:35:21 +00:00
maartenkeijzer
4aed181311 Removed small bug in reading outside a buffer in eoParser::readFrom
This caused the parser to crash when a simple flag of the form program -f
was given.
2001-02-11 16:25:03 +00:00
maartenkeijzer
27432e5377 run_tests, add your own tests here 2001-02-11 16:01:47 +00:00
maartenkeijzer
05ed67ccd1 Test now is not build automatically, make test should be given explicitely, then a new script run_tests will be used to check if everything still works 2001-02-11 15:58:55 +00:00
maartenkeijzer
ed6ae447e8 Commented out the check for libtool, as we don't use it currently 2001-02-11 15:57:01 +00:00
evomarc
2796319a13 Added matermind in SUBDIRS 2001-02-10 05:36:50 +00:00
jmerelo
3c2df139bd Minor bugs for Win quashed; fixed Win project files 2001-02-09 16:52:06 +00:00
maartenkeijzer
d58511132c Removed the -O2 flag from the makefile in the test directory.
Builds should go faster now.
2001-02-09 11:52:55 +00:00
evomarc
b893445d31 Added a comment before eoPopulator class so it is documented! 2001-02-09 08:32:47 +00:00
evomarc
5bf1d83f6a Changed the first paragraph, added warning that it should be used on-line only 2001-02-09 08:21:35 +00:00
evomarc
0c1036617e Big change in eoGeneralOp interface: left out! 2001-02-09 05:52:44 +00:00
evomarc
a556036315 Change in Makefile - but again it should be replaced with clean Makefile.am 2001-02-09 05:46:12 +00:00
evomarc
018db6689a The big GeneraoOp interface change - in test dir 2001-02-09 05:43:06 +00:00
evomarc
97486fba28 Modified the Makefile of Lesson? to allow make all to also make the exercises
It need to be modified anyway into Makefile.am stuff
2001-02-09 05:34:04 +00:00
evomarc
890218e270 Removed eoEvolutionStrategy because it was based on eoGeneralOp old interface 2001-02-09 05:28:33 +00:00
evomarc
d347fa9da2 Because it has not extension, I had forgotten to update the eo file itself!
Now reflects the change of eoGenOp interface and the changes of names in ga
2001-02-09 05:25:25 +00:00
evomarc
09b669ed46 Added the GnuPlotSnapshotMonitor, the eoScalarFitnessStat and eoFDCStat in checkpointing 2001-02-09 05:21:04 +00:00
evomarc
3b2125e060 Left-out from the big change of general op interface! 2001-02-09 05:10:25 +00:00
evomarc
415b419671 The BIG change of general operator interface
I also changed
  - the eoQuadratic into eoQuad (as dicussed with Maarten)
  - the eoBin into eoBit, with more appropriate names for the "binary"
    operators (that can be unary!) as no one protested when I posted on
    eodev list
2001-02-09 05:09:26 +00:00
evomarc
1b681e4e0d Added the missing include of eoScalarFitness - mandatory due to
explicit specialization for eoParamValue<vector<eoMinimizingFitness> >
2001-02-07 05:15:18 +00:00
evomarc
d3525298fe Added the handling of generic operators in Combined Ops 2001-02-07 05:13:33 +00:00
evomarc
b89d06386d Added the shuffle(vector<const EOT*>) method 2001-02-07 05:11:37 +00:00
evomarc
1c93adc43a Added selection methods
eoBestSelect            always return the best individual
eoSequentialSelect      a selectOne version of eoDetSelect (uses an index to
                        return next offspring from sorted pop)
2001-02-07 05:04:24 +00:00
evomarc
f9fed9acc1 Forgotten a debug print 2001-02-01 05:27:36 +00:00
evomarc
1ace1cf8f9 I had forgotten to add pipecom.h
Moreover, I got fed up with error due to const/non const, so I modified
PipeComSend to take a const argument. THe consequence is that it will not run
under plain C any more.
2001-02-01 05:17:16 +00:00
evomarc
56abe66582 Added the monitoring facilities for snapshots (i.e. generating and plotting a new file
every generation) which is different from the continuous monitoring (same file/plot is
angemented every generation).
This lead to a number of modifications in many files in utils dir

But now we can watch on-line
- fitness spreadout
- FDC plots
- multi-objective Pareto fronts (though the multi-objective sruff isn't there yet!)
2001-01-31 18:38:39 +00:00
evomarc
097d34be39 Comments added to remove undocumented classes from Doxygen documentation 2001-01-30 04:53:05 +00:00
evomarc
2b46277eed Added the truncate and the hasNoBoundAtAll methods in eoRealBounds.
The former simply set values to the boundary values in case they are out
The latter allows to short-cut all bound-checks when no need

SOme day I will put this in utils, and have a eoRealBounds.cpp in the
pre-compiled library
2001-01-29 10:25:44 +00:00
evomarc
0f985c627e Modified to use eoRealBounds rather than eoEsObjectiveBounds 2001-01-28 07:31:34 +00:00
evomarc
75dad8f899 Error in src/Makefile.am 2001-01-28 07:27:12 +00:00