paradiseo/trunk/paradiseo-eo/doc/man/man3/eoEasyEA.3
legrand c3aec878e5 Paradiseo-eo sources added
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@40 331e1502-861f-0410-8da2-ba01fb791d7f
2006-12-12 14:49:08 +00:00

110 lines
4 KiB
Groff

.TH "eoEasyEA" 3 "19 Oct 2006" "Version 0.9.4-cvs" "EO" \" -*- nroff -*-
.ad l
.nh
.SH NAME
eoEasyEA \- An easy-to-use evolutionary algorithm; you can use any chromosome, and any selection transformation, merging and evaluation algorithms; you can even change in runtime parameters of those sub-algorithms.
.PP
.SH SYNOPSIS
.br
.PP
\fC#include <eoEasyEA.h>\fP
.PP
Inherits \fBeoAlgo< EOT >< EOT >\fP.
.PP
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBeoEasyEA\fP (\fBeoContinue\fP< \fBEOT\fP > &_continuator, \fBeoEvalFunc\fP< \fBEOT\fP > &_eval, \fBeoBreed\fP< \fBEOT\fP > &_breed, \fBeoReplacement\fP< \fBEOT\fP > &_replace)"
.br
.RI "\fICtor taking a breed and merge. \fP"
.ti -1c
.RI "\fBeoEasyEA\fP (\fBeoContinue\fP< \fBEOT\fP > &_continuator, \fBeoPopEvalFunc\fP< \fBEOT\fP > &_eval, \fBeoBreed\fP< \fBEOT\fP > &_breed, \fBeoReplacement\fP< \fBEOT\fP > &_replace)"
.br
.RI "\fINEW Ctor taking a breed and merge and an eoPopEval. \fP"
.ti -1c
.RI "\fBeoEasyEA\fP (\fBeoContinue\fP< \fBEOT\fP > &_continuator, \fBeoEvalFunc\fP< \fBEOT\fP > &_eval, \fBeoBreed\fP< \fBEOT\fP > &_breed, \fBeoMerge\fP< \fBEOT\fP > &_merge, \fBeoReduce\fP< \fBEOT\fP > &_reduce)"
.br
.RI "\fICtor \fBeoBreed\fP, \fBeoMerge\fP and \fBeoReduce\fP. \fP"
.ti -1c
.RI "\fBeoEasyEA\fP (\fBeoContinue\fP< \fBEOT\fP > &_continuator, \fBeoEvalFunc\fP< \fBEOT\fP > &_eval, \fBeoSelect\fP< \fBEOT\fP > &_select, \fBeoTransform\fP< \fBEOT\fP > &_transform, \fBeoReplacement\fP< \fBEOT\fP > &_replace)"
.br
.RI "\fICtor \fBeoSelect\fP, \fBeoTransform\fP, and \fBeoReplacement\fP. \fP"
.ti -1c
.RI "\fBeoEasyEA\fP (\fBeoContinue\fP< \fBEOT\fP > &_continuator, \fBeoEvalFunc\fP< \fBEOT\fP > &_eval, \fBeoSelect\fP< \fBEOT\fP > &_select, \fBeoTransform\fP< \fBEOT\fP > &_transform, \fBeoMerge\fP< \fBEOT\fP > &_merge, \fBeoReduce\fP< \fBEOT\fP > &_reduce)"
.br
.RI "\fICtor \fBeoSelect\fP, \fBeoTransform\fP, \fBeoMerge\fP and \fBeoReduce\fP. \fP"
.ti -1c
.RI "virtual void \fBoperator()\fP (\fBeoPop\fP< \fBEOT\fP > &_pop)"
.br
.RI "\fIApply a few generation of evolution to the population. \fP"
.in -1c
.SS "Protected Attributes"
.in +1c
.ti -1c
.RI "eoEasyEA::eoDummySelect \fBdummySelect\fP"
.br
.ti -1c
.RI "eoEasyEA::eoDummyTransform \fBdummyTransform\fP"
.br
.ti -1c
.RI "eoEasyEA::eoDummyEval \fBdummyEval\fP"
.br
.ti -1c
.RI "\fBeoContinue\fP< \fBEOT\fP > & \fBcontinuator\fP"
.br
.ti -1c
.RI "\fBeoEvalFunc\fP< \fBEOT\fP > & \fBeval\fP"
.br
.ti -1c
.RI "\fBeoPopLoopEval\fP< \fBEOT\fP > \fBloopEval\fP"
.br
.ti -1c
.RI "\fBeoPopEvalFunc\fP< \fBEOT\fP > & \fBpopEval\fP"
.br
.ti -1c
.RI "\fBeoSelectTransform\fP< \fBEOT\fP > \fBselectTransform\fP"
.br
.ti -1c
.RI "\fBeoBreed\fP< \fBEOT\fP > & \fBbreed\fP"
.br
.ti -1c
.RI "\fBeoNoElitism\fP< \fBEOT\fP > \fBdummyMerge\fP"
.br
.ti -1c
.RI "\fBeoTruncate\fP< \fBEOT\fP > \fBdummyReduce\fP"
.br
.ti -1c
.RI "\fBeoMergeReduce\fP< \fBEOT\fP > \fBmergeReduce\fP"
.br
.ti -1c
.RI "\fBeoReplacement\fP< \fBEOT\fP > & \fBreplace\fP"
.br
.in -1c
.SS "Friends"
.in +1c
.ti -1c
.RI "class \fBeoIslandsEasyEA<EOT>\fP"
.br
.ti -1c
.RI "class \fBeoDistEvalEasyEA<EOT>\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
.SS "template<class EOT> class eoEasyEA< EOT >"
An easy-to-use evolutionary algorithm; you can use any chromosome, and any selection transformation, merging and evaluation algorithms; you can even change in runtime parameters of those sub-algorithms.
Change (MS, July 3. 2001): Replaced the \fBeoEvalFunc\fP by an \fBeoPopEvalFunc\fP: this immediately allows many useful constructs, such as co-evolution (e.g. game players), parisian approach (the solution to the problem is the whole population) or simple distribution of evaluations on a cluster. In case an \fBeoEvalFunc\fP is passed, it is embedded on an \fBeoPopLoopEval\fP This makes things a little uglier (required an additional 'dummy' member
.PP
Note: it looks ugly only because we wanted to authorize many different constructors. Please only look at the operator() and there shall be light
.PP
Definition at line 63 of file eoEasyEA.h.
.SH "Author"
.PP
Generated automatically by Doxygen for EO from the source code.