paradiseo/trunk/paradiseo-eo/doc/man/man3/eoOneFifthMutation.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

114 lines
3.2 KiB
Groff

.TH "eoOneFifthMutation" 3 "19 Oct 2006" "Version 0.9.4-cvs" "EO" \" -*- nroff -*-
.ad l
.nh
.SH NAME
eoOneFifthMutation \- the dynamic version: just say it is updatable - and write the \fBupdate()\fP method! here the 1 fifth rule: count the proportion of successful mutations, and increase sigma if more than threshold (1/5 !)
.PP
.SH SYNOPSIS
.br
.PP
\fC#include <eoNormalMutation.h>\fP
.PP
Inherits \fBeoNormalMutation< EOT >< EOT >\fP, and \fBeoUpdatable\fP.
.PP
.SS "Public Types"
.in +1c
.ti -1c
.RI "typedef EOT::Fitness \fBFitness\fP"
.br
.in -1c
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBeoOneFifthMutation\fP (\fBeoEvalFunc\fP< \fBEOT\fP > &_eval, double &_sigmaInit, unsigned _windowSize=10, double _updateFactor=0.83, double _threshold=0.2)"
.br
.RI "\fI(Default) Constructor. \fP"
.ti -1c
.RI "virtual std::string \fBclassName\fP () const "
.br
.RI "\fIThe class name. \fP"
.ti -1c
.RI "bool \fBoperator()\fP (\fBEOT\fP &_eo)"
.br
.RI "\fIDo it! calls the standard mutation, then checks for success and updates stats. \fP"
.ti -1c
.RI "void \fBupdate\fP ()"
.br
.RI "\fIthe method that will be called every generation if the object is added to the checkpoint \fP"
.in -1c
.SS "Private Attributes"
.in +1c
.ti -1c
.RI "\fBeoEvalFunc\fP< \fBEOT\fP > & \fBeval\fP"
.br
.ti -1c
.RI "double \fBthreshold\fP"
.br
.ti -1c
.RI "double \fBupdateFactor\fP"
.br
.ti -1c
.RI "std::vector< unsigned > \fBnbMut\fP"
.br
.ti -1c
.RI "std::vector< unsigned > \fBnbSuccess\fP"
.br
.ti -1c
.RI "unsigned \fBgenIndex\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
.SS "template<class EOT> class eoOneFifthMutation< EOT >"
the dynamic version: just say it is updatable - and write the \fBupdate()\fP method! here the 1 fifth rule: count the proportion of successful mutations, and increase sigma if more than threshold (1/5 !)
.PP
Definition at line 177 of file eoNormalMutation.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "template<class EOT> \fBeoOneFifthMutation\fP< \fBEOT\fP >::\fBeoOneFifthMutation\fP (\fBeoEvalFunc\fP< \fBEOT\fP > & _eval, double & _sigmaInit, unsigned _windowSize = \fC10\fP, double _updateFactor = \fC0.83\fP, double _threshold = \fC0.2\fP)\fC [inline]\fP"
.PP
(Default) Constructor.
.PP
\fBParameters:\fP
.RS 4
\fIeval\fP the evaluation function, needed to recompute the fitmess
.br
\fI_sigmaInit\fP the initial value for uniform mutation
.br
\fI_windowSize\fP the size of the window for statistics
.br
\fI_threshold\fP the threshold (the 1/5 - 0.2)
.br
\fI_updateFactor\fP multiplicative update factor for sigma
.RE
.PP
.PP
Definition at line 195 of file eoNormalMutation.h.
.SH "Member Function Documentation"
.PP
.SS "template<class EOT> bool \fBeoOneFifthMutation\fP< \fBEOT\fP >::operator() (\fBEOT\fP & _eo)\fC [inline, virtual]\fP"
.PP
Do it! calls the standard mutation, then checks for success and updates stats.
.PP
\fBParameters:\fP
.RS 4
\fI_eo\fP The chromosome undergoing the mutation
.RE
.PP
.PP
Reimplemented from \fBeoNormalMutation< EOT >\fP.
.PP
Definition at line 216 of file eoNormalMutation.h.
.PP
References EO< F >::fitness(), EO< F >::invalid(), EO< F >::invalidate(), and eoNormalMutation< EOT >::operator()().
.SH "Author"
.PP
Generated automatically by Doxygen for EO from the source code.