+ new GFdynamicFeedControl(feeds, 'feed-control', options);
+ }
+ // Load the feeds API and set the onload callback.
+ google.load('feeds', '1');
+ google.setOnLoadCallback(LoadDynamicFeedControl);
+
+
+
+
+
-
-
+
+
-
+
-
Evolving Objects (EO): an Evolutionary Computation Framework
+
Evolving Objects (EO): an Evolutionary Computation Framework
-
EO is a template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast.
+
EO is a template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast.
-
+
-
Evolutionary algorithms forms a family of algorithms inspired by the theory of evolution, that solve various problems.
- They evolve a set of solutions to a given problem, in order to produce the best results.
- These are stochastic algorithms, because they iteratively use random processes.
- The vast majority of these methods are used to solve optimization problems, and may be also called "metaheuristics".
- They are also ranked among computational intelligence methods, a domain close to artificial intelligence.
-
+
Evolutionary algorithms forms a family of algorithms inspired by the theory of evolution, that solve various problems.
+ They evolve a set of solutions to a given problem, in order to produce the best results.
+ These are stochastic algorithms, because they iteratively use random processes.
+ The vast majority of these methods are used to solve optimization problems, and may be also called "metaheuristics".
+ They are also ranked among computational intelligence methods, a domain close to artificial intelligence.
+
-
With the help of EO, you can easily design evolutionary algorithms that will find solutions to virtually all kind of hard optimization problems, from continuous to combinatorial ones.
+
With the help of EO, you can easily design evolutionary algorithms that will find solutions to virtually all kind of hard optimization problems, from continuous to combinatorial ones.
-
If you want to know how to help us to improve EO, the easiest way is to click on the following button:
+
If you want to know how to help us to improve EO, the easiest way is to click on the following button:
-
+
-
+
-
+
-
-
-
-
+
+
+
+
+
-
If you need immediate support or have any question, you can join us on the official chatroom. Just go on our webchat interface and enter your nick. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org MUC with your favorite client.
+
If you need immediate support or have any question, you can join us on the official chatroom. Just go on our webchat interface and enter your nick. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org MUC with your favorite client.
Designing an algorithm with EO consists in choosing what components you want to use for your specific needs, just as building a structure with Lego blocks.
-
If you have a classical problem for which available code exists (for example if you have a black-box problem with real-valued variables), you will just choose components to form an algorithm and connect it to your fitness function (which computes the quality of a given solution).
-
If your problem is a bit more exotic, you will have to code a class that represents how your individuals (a solution to your problem) are represented, and perhaps some variations operators, but most of the other operators (selection, replacement, stopping criteria, command-line interface, etc.) are already available in EO.
-
+
Designing an algorithm with EO consists in choosing what components you want to use for your specific needs, just as building a structure with Lego blocks.
+
If you have a classical problem for which available code exists (for example if you have a black-box problem with real-valued variables), you will just choose components to form an algorithm and connect it to your fitness function (which computes the quality of a given solution).
+
If your problem is a bit more exotic, you will have to code a class that represents how your individuals (a solution to your problem) are represented, and perhaps some variations operators, but most of the other operators (selection, replacement, stopping criteria, command-line interface, etc.) are already available in EO.
+
-
Main Features
+
Main Features
-
+
-
+
Examples of problems that you can solve with the help of EO:
@@ -205,345 +217,342 @@
-
+
-
+
Flexible design that permits to easily create virtually any algorithm
Solution representation for continuous and combinatorial problems:
-
-
binary-strings,
-
permutations,
-
vectors,
-
easily write your own,
-
…
-
+
+
binary-strings,
+
permutations,
+
vectors,
+
easily write your own,
+
…
+
Several algorithm paradigms:
-
-
evolution strategies,
-
genetic algorithms,
-
estimation of distribution,
-
particle swarm optimization
-
…
-
+
+
evolution strategies,
+
genetic algorithms,
+
estimation of distribution,
+
particle swarm optimization
+
…
+
Many selection and replacement operators:
-
-
rank-based,
-
deterministic or stochastic tournaments,
-
roulette,
-
elitism,
-
…
-
+
+
rank-based,
+
deterministic or stochastic tournaments,
+
roulette,
+
elitism,
+
…
+
Ready-to-use variations operators:
-
-
uniform initializer,
-
gaussian mutation,
-
subtree crossover,
-
…
-
+
+
uniform initializer,
+
gaussian mutation,
+
subtree crossover,
+
…
+
Easy combination of several operators:
-
-
proportional combination,
-
sequential call,
-
…
-
+
+
proportional combination,
+
sequential call,
+
…
+
Portable and human-readable parameter files
Suspend and load population from files
Versatile checkpointing and logging:
-
-
graphical display,
-
file dump,
-
various statistics,
-
signal catching,
-
…
-
+
+
graphical display,
+
file dump,
+
various statistics,
+
signal catching,
+
…
+
Mersenne Twister random number generator (and various distributions)
No useless computation (sparing fitness call, functor-based calls)
Fast running speed, thanks to C++
And more!
-
+
-
Portability
-
EO should work on Windows and any Un*x-like operating system with a
+
Portability
+
EO should work on Windows and any Un*x-like operating system with a
standard-conforming C++ development system.
-
Recent versions of EO have been tested on the following platforms:
-
+
Recent versions of EO have been tested on the following platforms:
+
-
-
Linux x86 with GCC 3.x and 4.x
-
Linux x86_64 with GCC 3.x and GCC 4.x
-
MacOS X/Darwin PowerPC with GCC 3.x
-
MacOS X/Darwin x86 with GCC 4.x
-
Microsoft Windows using Cygwin's GCC 3.x (cygming special).
-
Microsoft Windows using Visual Studio 2003/2005; projects files
+
+
Linux x86 with GCC 3.x and 4.x
+
Linux x86_64 with GCC 3.x and GCC 4.x
+
MacOS X/Darwin PowerPC with GCC 3.x
+
MacOS X/Darwin x86 with GCC 4.x
+
Microsoft Windows using Cygwin's GCC 3.x (cygming special).
+
Microsoft Windows using Visual Studio 2003/2005; projects files
are provided.
-
Solaris SPARC with GCC 3.x
-
Solaris x86 with GCC 3.x
-
+
Solaris SPARC with GCC 3.x
+
Solaris x86 with GCC 3.x
+
-
Recent versions of EO uses the CMake portable build system, that permits to easily generate a build chain for your environment.
+
Recent versions of EO uses the CMake portable build system, that permits to easily generate a build chain for your environment.
-
If you have tested EO on a system not listed here, please let
- us know.
+
If you have tested EO on a system not listed here, please let
+ us know.
-
If you are working on a system with an older C++ compiler there
+
If you are working on a system with an older C++ compiler there
is a good chance that eo-0.9.3z.1 works. It is tested on Linux
with gcc-2.9x and several systems (IRIX, Solaris) with egcs.
-
Presentations
+
Presentations
-
A functional and "philosophical" overview of EO was presented at EA'01 conference.
- You can download the paper
+
A functional and "philosophical" overview of EO was presented at EA'01 conference.
+ You can download the paper
or the
- slides, or browse them right here:
You can also read this
+ PowerPoint presentation, that shows the EO philosophy.
It includes a Visual Basic macro for evolving objects in Visual Basic
for Applications.
-
EO is described in the following scientific article:
-
M. Keijzer, J.J. Merelo, G. Romero, G., M. Schoenauer,
- "Evolving
+
-
-@Article{Keijzer2001,
- title = "Evolving Objects: A General Purpose Evolutionary Computation Library ",
- author = "Maarten Keijzer and J. J. Merelo and G. Romero and M. Schoenauer",
- journal = "Artificial Evolution",
- year = "2002",
- volume = "2310",
- pages = "829--888",
- keywords = "genetic algorithms, genetic programming, evolutionary computation, metaheuristic, computational intelligence, optimization",
- URL = "http://www.lri.fr/~marc/EO/EO-EA01.ps.gz",
- size = "12 pages",
- abstract = "This paper presents the evolving objects library
- (EOlib), an object-oriented framework for evolutionary
- computation (EC) that aims to provide a flexible set of
- classes to build EC applications. EOlib design
- objective is to be able to evolve any object in which
- fitness makes sense.",
-}
-
-
-
+
+
+ @Article{Keijzer2001,
+ title = "Evolving Objects: A General Purpose Evolutionary Computation Library ",
+ author = "Maarten Keijzer and J. J. Merelo and G. Romero and M. Schoenauer",
+ journal = "Artificial Evolution",
+ year = "2002",
+ volume = "2310",
+ pages = "829--888",
+ keywords = "genetic algorithms, genetic programming, evolutionary computation, metaheuristic, computational intelligence, optimization",
+ URL = "http://www.lri.fr/~marc/EO/EO-EA01.ps.gz",
+ size = "12 pages",
+ abstract = "This paper presents the evolving objects library
+ (EOlib), an object-oriented framework for evolutionary
+ computation (EC) that aims to provide a flexible set of
+ classes to build EC applications. EOlib design
+ objective is to be able to evolve any object in which
+ fitness makes sense.",
+ }
+
+
+
-
Here is a list of some known publications that used EO:
Note that this license places copyleft restrictions on a program created with EO, but does not apply these restrictions to other software that would links with the program.
+
Note that this license places copyleft restrictions on a program created with EO, but does not apply these restrictions to other software that would links with the program.
-
Documentation
+
Documentation
-
The tutorial demonstrates that writing an evolutionary algorithm
+
The tutorial demonstrates that writing an evolutionary algorithm
evolving your own structures is now easy, using ready-to-use
template files. Although the tutorial has not been upgraded for some
time now and refers to version 0.9.2 of EO, it nevertheless remains the
best way to dive into EO. You can start by trying it on-line at LRI
+ href="http://www.lri.fr/%7Emarc/EO/eo/tutorial/html/eoTutorial.html">LRI
or SourceForge,
+ href="http://eodev.sourceforge.net/eo/tutorial/html/eoTutorial.html">SourceForge,
before downloading it. The
tutorial is also included in the released
- sources.
The easiest way to create a complete new EO-project, even for new
+
The easiest way to create a complete new EO-project, even for new
genomes, is to use the script provided in tutorial/Templates/; see
the README in that directory and lesson 5 of the tutorial for
detail.
EO is an open development effort; that is why we have
+
EO is an open development effort; that is why we have
created mailing lists to discuss future developments, solve technical
problems, announce releases, publish patches, and discuss evolutionary
computation in general. Browse the archives or join the EO mailing lists.
The softwares listed here are using EO, but they are not maintained by the EO team.
+
The softwares listed here are using EO, but they are not maintained by the EO team.
They may not be free softwares or may even be outdated.
-
-
ParadisEO provides EO extensions for
- the flexible design of single solution-based metaheuristics,
- metaheuristics for multi objective optimization as well as hybrid, parallel and distributed
- metaheuristics.
+
+
ParadisEO provides EO extensions for
+ the flexible design of single solution-based metaheuristics,
+ metaheuristics for multi objective optimization as well as hybrid, parallel and distributed
+ metaheuristics.
-
DegaX
- is an ActiveX control which embeds EO 0.8.4.
-
+
DegaX
+ is an ActiveX control which embeds EO 0.8.4.
+
-
EASEA was a GUI that permits to build evolutionary algorithm with EO or the GAlib.
- It is now a platform that allows program evolutionary algorithms on massively parallel many-core architectures.
+
EASEA was a GUI that permits to build evolutionary algorithm with EO or the GAlib.
+ It is now a platform that allows program evolutionary algorithms on massively parallel many-core architectures.
-
GUIDE is a GUI that allows the generation of evolutionary algorithms. It can use EO or ECJ.
-
+
GUIDE is a GUI that allows the generation of evolutionary algorithms. It can use EO or ECJ.
EO was started by the Geneura
+ Team at the University of Granada, headed by Juan Julián Merelo. The original Web site is also the only place where you
will find old releases of EO (up to 0.8.7), but beware that it is not
compatible at all with the current version.
-
The developement team has then been reinforced by Maarten Keijzer, the C++
+
The developement team has then been reinforced by Maarten Keijzer, the C++
wizzard, and Marc Schoenauer.
Later came Jeroen
- Eggermont, who, among other things, did a lot of work on GP,
+ Eggermont, who, among other things, did a lot of work on GP,
INRIA Dolphin Team, Olivier König, who did a
+ href="mailto:okoenig@users.sourceforge.net">Olivier König, who did a
lot of useful additions and cleaning of the code and Jochen Küpper, working on
+ href="http://www.jochen-kuepper.de">Jochen Küpper, working on
infrastructure maintenance.
COCO (COmparing Continuous Optimisers), a platform for systematic and sound comparisons of real-parameter global optimisers. COCO provides benchmark function testbeds and tools for processing and visualizing data generated by one or several optimizers.
COCO (COmparing Continuous Optimisers), a platform for systematic and sound comparisons of real-parameter global optimisers. COCO provides benchmark function testbeds and tools for processing and visualizing data generated by one or several optimizers.
With the help of EO, you can easily design evolutionary algorithms that will find solutions to virtually all kind of hard optimization problems, from continuous to combinatorial ones.
Alternatively, you can join us on the official chatroom. Just go on our webchat interface and enter your nick. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org MUC with your favorite client.
+
If you want to know how to help us to improve EO, the easiest way is to click on the following button:
-
If you need immediate support or have any question, you can join us on the official chatroom. Just go on our webchat interface and enter your nick. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org MUC with your favorite client.
Alternatively, you can join us on the official chatroom. Just go on our webchat interface and enter your nick. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org MUC with your favorite client.
+
Alternatively, you can join us on the official chatroom. If your browser supports it, you can simply click on the button on the bottom of the current webpage and enter your nick. Else, you can try our webchat interface. If you already have an XMPP account (Jabber or Google Talk, for example), you can directly connect to the eo@chat.jabberfr.org multi-user chatroom with your favorite client.
If you want to know how to help us to improve EO, the easiest way is to click on the following button:
From 9ff69a8fca95829f0d6cdbea4ef48ead24581112 Mon Sep 17 00:00:00 2001
From: Caner Candan
Date: Tue, 23 Aug 2011 18:39:28 +0200
Subject: [PATCH 7/8] * edo: fixed deprecated eoParserLogger warning message
---
edo/application/eda/main.cpp | 5 +----
edo/application/eda_sa/main.cpp | 5 +----
edo/test/t-edoEstimatorNormalMulti.cpp | 5 +----
edo/test/t-mean-distance.cpp | 5 +----
4 files changed, 4 insertions(+), 16 deletions(-)
diff --git a/edo/application/eda/main.cpp b/edo/application/eda/main.cpp
index ceb64fb3d..4208580e5 100644
--- a/edo/application/eda/main.cpp
+++ b/edo/application/eda/main.cpp
@@ -28,9 +28,6 @@ Authors:
#include
#include
-#include
-#include
-
#include
#include
@@ -50,7 +47,7 @@ typedef edoNormalMulti< EOT > Distrib;
int main(int ac, char** av)
{
- eoParserLogger parser(ac, av);
+ eoParser parser(ac, av);
// Letters used by the following declarations:
// a d i p t
diff --git a/edo/application/eda_sa/main.cpp b/edo/application/eda_sa/main.cpp
index 8ee173e30..eac52e182 100644
--- a/edo/application/eda_sa/main.cpp
+++ b/edo/application/eda_sa/main.cpp
@@ -1,9 +1,6 @@
#include
#include
-#include
-#include
-
#include
#include
@@ -23,7 +20,7 @@ typedef edoNormalMulti< EOT > Distrib;
int main(int ac, char** av)
{
- eoParserLogger parser(ac, av);
+ eoParser parser(ac, av);
// Letters used by the following declarations:
// a d i p t
diff --git a/edo/test/t-edoEstimatorNormalMulti.cpp b/edo/test/t-edoEstimatorNormalMulti.cpp
index 431f6f985..91d932962 100644
--- a/edo/test/t-edoEstimatorNormalMulti.cpp
+++ b/edo/test/t-edoEstimatorNormalMulti.cpp
@@ -31,9 +31,6 @@ Authors:
#include
#include
-#include
-#include
-
#include
#include "Rosenbrock.h"
@@ -49,7 +46,7 @@ int main(int ac, char** av)
// (0) parser + eo routines
//-----------------------------------------------------
- eoParserLogger parser(ac, av);
+ eoParser parser(ac, av);
std::string section("Algorithm parameters");
diff --git a/edo/test/t-mean-distance.cpp b/edo/test/t-mean-distance.cpp
index a69bc8f1d..8e62c378a 100644
--- a/edo/test/t-mean-distance.cpp
+++ b/edo/test/t-mean-distance.cpp
@@ -35,9 +35,6 @@ Authors:
#include
#include
-#include
-#include
-
#include
#include
@@ -56,7 +53,7 @@ int main(int ac, char** av)
// (0) parser + eo routines
//-----------------------------------------------------
- eoParserLogger parser(ac, av);
+ eoParser parser(ac, av);
std::string section("Algorithm parameters");
From 59343bf45e9c610014e2f40ed2d0925364e8b243 Mon Sep 17 00:00:00 2001
From: Caner Candan
Date: Tue, 23 Aug 2011 18:59:28 +0200
Subject: [PATCH 8/8] * edo: added comments to generate all inheritance of
classes in doxygen
---
edo/src/edoAlgo.h | 2 ++
edo/src/edoBounder.h | 2 ++
edo/src/edoBounderBound.h | 2 ++
edo/src/edoBounderNo.h | 2 ++
edo/src/edoBounderRng.h | 2 ++
edo/src/edoBounderUniform.h | 2 ++
edo/src/edoContinue.h | 2 +-
edo/src/edoDistrib.h | 2 ++
edo/src/edoEDA.h | 2 ++
edo/src/edoEDASA.h | 2 ++
edo/src/edoEstimator.h | 2 ++
edo/src/edoEstimatorNormalMono.h | 2 ++
edo/src/edoEstimatorNormalMulti.h | 2 ++
edo/src/edoEstimatorUniform.h | 2 ++
edo/src/edoModifier.h | 2 ++
edo/src/edoModifierDispersion.h | 2 ++
edo/src/edoModifierMass.h | 2 ++
edo/src/edoNormalMono.h | 2 ++
edo/src/edoNormalMonoCenter.h | 2 ++
edo/src/edoNormalMulti.h | 2 ++
edo/src/edoNormalMultiCenter.h | 2 ++
edo/src/edoSampler.h | 2 ++
edo/src/edoSamplerNormalMulti.h | 2 ++
edo/src/edoUniform.h | 2 ++
edo/src/edoUniformCenter.h | 2 ++
edo/src/edoVectorBounds.h | 2 ++
edo/src/utils/edoFileSnapshot.h | 2 ++
edo/src/utils/edoHyperVolume.h | 2 ++
edo/src/utils/edoStat.h | 2 ++
edo/src/utils/edoStatNormalMono.h | 2 ++
edo/src/utils/edoStatNormalMulti.h | 2 ++
edo/src/utils/edoStatUniform.h | 2 ++
32 files changed, 63 insertions(+), 1 deletion(-)
diff --git a/edo/src/edoAlgo.h b/edo/src/edoAlgo.h
index 464cb55ee..db0c7fe52 100644
--- a/edo/src/edoAlgo.h
+++ b/edo/src/edoAlgo.h
@@ -31,6 +31,8 @@ Authors:
#include
+//! edoAlgo< D >
+
template < typename D >
class edoAlgo : public eoAlgo< typename D::EOType >
{
diff --git a/edo/src/edoBounder.h b/edo/src/edoBounder.h
index 3341db5c3..0ab5f275c 100644
--- a/edo/src/edoBounder.h
+++ b/edo/src/edoBounder.h
@@ -30,6 +30,8 @@ Authors:
#include
+//! edoBounder< EOT >
+
template < typename EOT >
class edoBounder : public eoUF< EOT&, void >
{
diff --git a/edo/src/edoBounderBound.h b/edo/src/edoBounderBound.h
index 106748a37..31a4e5867 100644
--- a/edo/src/edoBounderBound.h
+++ b/edo/src/edoBounderBound.h
@@ -30,6 +30,8 @@ Authors:
#include "edoBounder.h"
+//! edoBounderBound< EOT >
+
template < typename EOT >
class edoBounderBound : public edoBounder< EOT >
{
diff --git a/edo/src/edoBounderNo.h b/edo/src/edoBounderNo.h
index c1a98e710..f0e45454b 100644
--- a/edo/src/edoBounderNo.h
+++ b/edo/src/edoBounderNo.h
@@ -30,6 +30,8 @@ Authors:
#include "edoBounder.h"
+//! edoBounderNo< EOT >
+
template < typename EOT >
class edoBounderNo : public edoBounder< EOT >
{
diff --git a/edo/src/edoBounderRng.h b/edo/src/edoBounderRng.h
index 8c7bb3ef1..2501a212c 100644
--- a/edo/src/edoBounderRng.h
+++ b/edo/src/edoBounderRng.h
@@ -30,6 +30,8 @@ Authors:
#include "edoBounder.h"
+//! edoBounderRng< EOT >
+
template < typename EOT >
class edoBounderRng : public edoBounder< EOT >
{
diff --git a/edo/src/edoBounderUniform.h b/edo/src/edoBounderUniform.h
index 3af5579f0..6501a481d 100644
--- a/edo/src/edoBounderUniform.h
+++ b/edo/src/edoBounderUniform.h
@@ -29,6 +29,8 @@ Authors:
#include "edoBounder.h"
+//! edoBounderUniform< EOT >
+
template < typename EOT >
class edoBounderUniform : public edoBounder< EOT >
{
diff --git a/edo/src/edoContinue.h b/edo/src/edoContinue.h
index 14b89e614..4f6806638 100644
--- a/edo/src/edoContinue.h
+++ b/edo/src/edoContinue.h
@@ -31,7 +31,7 @@ Authors:
#include
#include
-//! edoContinue< EOT > classe fitted to Distribution Object library
+//! edoContinue< D > class fitted to Distribution Object library
template < typename D >
class edoContinue : public eoUF< const D&, bool >, public eoPersistent
diff --git a/edo/src/edoDistrib.h b/edo/src/edoDistrib.h
index 5ce9ce06f..a6712a4b6 100644
--- a/edo/src/edoDistrib.h
+++ b/edo/src/edoDistrib.h
@@ -30,6 +30,8 @@ Authors:
#include
+//! edoDistrib< EOT >
+
template < typename EOT >
class edoDistrib : public eoFunctorBase
{
diff --git a/edo/src/edoEDA.h b/edo/src/edoEDA.h
index 21f95f52a..51028efc9 100644
--- a/edo/src/edoEDA.h
+++ b/edo/src/edoEDA.h
@@ -39,6 +39,8 @@ Authors:
#include "edoSampler.h"
#include "edoContinue.h"
+//! edoEDA< D >
+
template < typename D >
class edoEDA : public edoAlgo< D >
{
diff --git a/edo/src/edoEDASA.h b/edo/src/edoEDASA.h
index 99da07cdc..1d47c57d8 100644
--- a/edo/src/edoEDASA.h
+++ b/edo/src/edoEDASA.h
@@ -39,6 +39,8 @@ Authors:
#include "edoSampler.h"
#include "edoContinue.h"
+//! edoEDASA< D >
+
template < typename D >
class edoEDASA : public edoAlgo< D >
{
diff --git a/edo/src/edoEstimator.h b/edo/src/edoEstimator.h
index c68069eeb..ea70e4962 100644
--- a/edo/src/edoEstimator.h
+++ b/edo/src/edoEstimator.h
@@ -31,6 +31,8 @@ Authors:
#include
#include
+//! edoEstimator< D >
+
template < typename D >
class edoEstimator : public eoUF< eoPop< typename D::EOType >&, D >
{
diff --git a/edo/src/edoEstimatorNormalMono.h b/edo/src/edoEstimatorNormalMono.h
index 970368552..6a42114b5 100644
--- a/edo/src/edoEstimatorNormalMono.h
+++ b/edo/src/edoEstimatorNormalMono.h
@@ -31,6 +31,8 @@ Authors:
#include "edoEstimator.h"
#include "edoNormalMono.h"
+//! edoEstimatorNormalMono< EOT >
+
template < typename EOT >
class edoEstimatorNormalMono : public edoEstimator< edoNormalMono< EOT > >
{
diff --git a/edo/src/edoEstimatorNormalMulti.h b/edo/src/edoEstimatorNormalMulti.h
index 6d5eb0bab..cfd979fe4 100644
--- a/edo/src/edoEstimatorNormalMulti.h
+++ b/edo/src/edoEstimatorNormalMulti.h
@@ -32,6 +32,8 @@ Authors:
#include "edoEstimator.h"
#include "edoNormalMulti.h"
+//! edoEstimatorNormalMulti< EOT >
+
template < typename EOT >
class edoEstimatorNormalMulti : public edoEstimator< edoNormalMulti< EOT > >
{
diff --git a/edo/src/edoEstimatorUniform.h b/edo/src/edoEstimatorUniform.h
index 8b61c7bde..4f24bcba6 100644
--- a/edo/src/edoEstimatorUniform.h
+++ b/edo/src/edoEstimatorUniform.h
@@ -33,6 +33,8 @@ Authors:
// TODO: calcule de la moyenne + covariance dans une classe derivee
+//! edoEstimatorUniform
+
template < typename EOT >
class edoEstimatorUniform : public edoEstimator< edoUniform< EOT > >
{
diff --git a/edo/src/edoModifier.h b/edo/src/edoModifier.h
index 91f7fbe2b..12687aa81 100644
--- a/edo/src/edoModifier.h
+++ b/edo/src/edoModifier.h
@@ -28,6 +28,8 @@ Authors:
#ifndef _edoModifier_h
#define _edoModifier_h
+//! edoModifier< D >
+
template < typename D >
class edoModifier
{
diff --git a/edo/src/edoModifierDispersion.h b/edo/src/edoModifierDispersion.h
index 0d890cbe9..a4a6e9ea6 100644
--- a/edo/src/edoModifierDispersion.h
+++ b/edo/src/edoModifierDispersion.h
@@ -33,6 +33,8 @@ Authors:
#include "edoModifier.h"
+//! edoModifierDispersion< D >
+
template < typename D >
class edoModifierDispersion : public edoModifier< D >, public eoBF< D&, eoPop< typename D::EOType >&, void >
{
diff --git a/edo/src/edoModifierMass.h b/edo/src/edoModifierMass.h
index 414918c79..db9ddcbf9 100644
--- a/edo/src/edoModifierMass.h
+++ b/edo/src/edoModifierMass.h
@@ -32,6 +32,8 @@ Authors:
#include "edoModifier.h"
+//! edoModifierMass< D >
+
template < typename D >
class edoModifierMass : public edoModifier< D >, public eoBF< D&, typename D::EOType&, void >
{
diff --git a/edo/src/edoNormalMono.h b/edo/src/edoNormalMono.h
index 34c71450a..4b015d120 100644
--- a/edo/src/edoNormalMono.h
+++ b/edo/src/edoNormalMono.h
@@ -30,6 +30,8 @@ Authors:
#include "edoDistrib.h"
+//! edoNormalMono< EOT >
+
template < typename EOT >
class edoNormalMono : public edoDistrib< EOT >
{
diff --git a/edo/src/edoNormalMonoCenter.h b/edo/src/edoNormalMonoCenter.h
index ac6e75f36..4b415dc02 100644
--- a/edo/src/edoNormalMonoCenter.h
+++ b/edo/src/edoNormalMonoCenter.h
@@ -31,6 +31,8 @@ Authors:
#include "edoModifierMass.h"
#include "edoNormalMono.h"
+//! edoNormalMonoCenter< EOT >
+
template < typename EOT >
class edoNormalMonoCenter : public edoModifierMass< edoNormalMono< EOT > >
{
diff --git a/edo/src/edoNormalMulti.h b/edo/src/edoNormalMulti.h
index 9a602e731..463f0bc8d 100644
--- a/edo/src/edoNormalMulti.h
+++ b/edo/src/edoNormalMulti.h
@@ -15,6 +15,8 @@
namespace ublas = boost::numeric::ublas;
+//! edoNormalMulti< EOT >
+
template < typename EOT >
class edoNormalMulti : public edoDistrib< EOT >
{
diff --git a/edo/src/edoNormalMultiCenter.h b/edo/src/edoNormalMultiCenter.h
index c929ac569..199ded47a 100644
--- a/edo/src/edoNormalMultiCenter.h
+++ b/edo/src/edoNormalMultiCenter.h
@@ -31,6 +31,8 @@ Authors:
#include "edoModifierMass.h"
#include "edoNormalMulti.h"
+//! edoNormalMultiCenter< EOT >
+
template < typename EOT >
class edoNormalMultiCenter : public edoModifierMass< edoNormalMulti< EOT > >
{
diff --git a/edo/src/edoSampler.h b/edo/src/edoSampler.h
index 212e861c3..3e4dd0bde 100644
--- a/edo/src/edoSampler.h
+++ b/edo/src/edoSampler.h
@@ -33,6 +33,8 @@ Authors:
#include "edoBounder.h"
#include "edoBounderNo.h"
+//! edoSampler< D >
+
template < typename D >
class edoSampler : public eoUF< D&, typename D::EOType >
{
diff --git a/edo/src/edoSamplerNormalMulti.h b/edo/src/edoSamplerNormalMulti.h
index 2aa599503..2601ea77e 100644
--- a/edo/src/edoSamplerNormalMulti.h
+++ b/edo/src/edoSamplerNormalMulti.h
@@ -32,6 +32,8 @@ Authors:
#include
#include
+//! edoSamplerNormalMulti< EOT >
+
template< class EOT >
class edoSamplerNormalMulti : public edoSampler< edoNormalMulti< EOT > >
{
diff --git a/edo/src/edoUniform.h b/edo/src/edoUniform.h
index 01cf3cb30..37bf065b8 100644
--- a/edo/src/edoUniform.h
+++ b/edo/src/edoUniform.h
@@ -31,6 +31,8 @@ Authors:
#include "edoDistrib.h"
#include "edoVectorBounds.h"
+//! edoUniform< EOT >
+
template < typename EOT >
class edoUniform : public edoDistrib< EOT >, public edoVectorBounds< EOT >
{
diff --git a/edo/src/edoUniformCenter.h b/edo/src/edoUniformCenter.h
index 22ce95164..473be4b4e 100644
--- a/edo/src/edoUniformCenter.h
+++ b/edo/src/edoUniformCenter.h
@@ -31,6 +31,8 @@ Authors:
#include "edoModifierMass.h"
#include "edoUniform.h"
+//! edoUniformCenter< EOT >
+
template < typename EOT >
class edoUniformCenter : public edoModifierMass< edoUniform< EOT > >
{
diff --git a/edo/src/edoVectorBounds.h b/edo/src/edoVectorBounds.h
index c72a10c2c..635132cd4 100644
--- a/edo/src/edoVectorBounds.h
+++ b/edo/src/edoVectorBounds.h
@@ -28,6 +28,8 @@ Authors:
#ifndef _edoVectorBounds_h
#define _edoVectorBounds_h
+//! edoVectorBounds< EOT >
+
template < typename EOT >
class edoVectorBounds
{
diff --git a/edo/src/utils/edoFileSnapshot.h b/edo/src/utils/edoFileSnapshot.h
index 17d042636..7f157f321 100644
--- a/edo/src/utils/edoFileSnapshot.h
+++ b/edo/src/utils/edoFileSnapshot.h
@@ -38,6 +38,8 @@ Authors:
#include "utils/eoMonitor.h"
+//! edoFileSnapshot
+
class edoFileSnapshot : public eoMonitor
{
public:
diff --git a/edo/src/utils/edoHyperVolume.h b/edo/src/utils/edoHyperVolume.h
index 85bcf0339..2ef73708b 100644
--- a/edo/src/utils/edoHyperVolume.h
+++ b/edo/src/utils/edoHyperVolume.h
@@ -28,6 +28,8 @@ Authors:
#ifndef _edoHyperVolume_h
#define _edoHyperVolume_h
+//! edoHyperVolume
+
template < typename EOT >
class edoHyperVolume
{
diff --git a/edo/src/utils/edoStat.h b/edo/src/utils/edoStat.h
index de5b4d2d2..233101323 100644
--- a/edo/src/utils/edoStat.h
+++ b/edo/src/utils/edoStat.h
@@ -30,6 +30,8 @@ Authors:
#include
+//! edoStatBase< D >
+
template < typename D >
class edoStatBase : public eoUF< const D&, void >
{
diff --git a/edo/src/utils/edoStatNormalMono.h b/edo/src/utils/edoStatNormalMono.h
index b16b3ae58..87705a0b0 100644
--- a/edo/src/utils/edoStatNormalMono.h
+++ b/edo/src/utils/edoStatNormalMono.h
@@ -31,6 +31,8 @@ Authors:
#include "edoStat.h"
#include "edoNormalMono.h"
+//! edoStatNormalMono< EOT >
+
template < typename EOT >
class edoStatNormalMono : public edoDistribStat< edoNormalMono< EOT > >
{
diff --git a/edo/src/utils/edoStatNormalMulti.h b/edo/src/utils/edoStatNormalMulti.h
index 68af07357..3a653edc5 100644
--- a/edo/src/utils/edoStatNormalMulti.h
+++ b/edo/src/utils/edoStatNormalMulti.h
@@ -33,6 +33,8 @@ Authors:
#include "edoStat.h"
#include "edoNormalMulti.h"
+//! edoStatNormalMulti< EOT >
+
template < typename EOT >
class edoStatNormalMulti : public edoDistribStat< edoNormalMulti< EOT > >
{
diff --git a/edo/src/utils/edoStatUniform.h b/edo/src/utils/edoStatUniform.h
index 8ccb93be5..c0fa79352 100644
--- a/edo/src/utils/edoStatUniform.h
+++ b/edo/src/utils/edoStatUniform.h
@@ -31,6 +31,8 @@ Authors:
#include "edoStat.h"
#include "edoUniform.h"
+//! edoStatUniform< EOT >
+
template < typename EOT >
class edoStatUniform : public edoDistribStat< edoUniform< EOT > >
{