git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@40 331e1502-861f-0410-8da2-ba01fb791d7f
116 lines
3.1 KiB
Groff
116 lines
3.1 KiB
Groff
.TH "eoNormalVecMutation" 3 "19 Oct 2006" "Version 0.9.4-cvs" "EO" \" -*- nroff -*-
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
eoNormalVecMutation \- Simple normal mutation of a std::vector of real values.
|
|
|
|
.PP
|
|
.SH SYNOPSIS
|
|
.br
|
|
.PP
|
|
\fC#include <eoNormalMutation.h>\fP
|
|
.PP
|
|
Inherits \fBeoMonOp< EOT >\fP.
|
|
.PP
|
|
.SS "Public Member Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "\fBeoNormalVecMutation\fP (double _sigma, const double &_p_change=1.0)"
|
|
.br
|
|
.RI "\fI(Default) Constructor. \fP"
|
|
.ti -1c
|
|
.RI "\fBeoNormalVecMutation\fP (\fBeoRealVectorBounds\fP &_bounds, double _sigma, const double &_p_change=1.0)"
|
|
.br
|
|
.RI "\fIConstructor with bounds. \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! \fP"
|
|
.in -1c
|
|
.SS "Private Attributes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "std::vector< double > \fBsigma\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "\fBeoRealVectorBounds\fP & \fBbounds\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "double \fBp_change\fP"
|
|
.br
|
|
.in -1c
|
|
.SH "Detailed Description"
|
|
.PP
|
|
|
|
.SS "template<class EOT> class eoNormalVecMutation< EOT >"
|
|
Simple normal mutation of a std::vector of real values.
|
|
|
|
The stDev is fixed - but it is passed ans stored as a reference, to enable dynamic mutations (see eoOenFithMutation below).
|
|
.PP
|
|
As for the bounds, the values are here folded back into the bounds. The other possiblity would be to iterate until we fall inside the bounds - but this sometimes takes a long time!!!
|
|
.PP
|
|
Definition at line 48 of file eoNormalMutation.h.
|
|
.SH "Constructor & Destructor Documentation"
|
|
.PP
|
|
.SS "template<class EOT> \fBeoNormalVecMutation\fP< \fBEOT\fP >::\fBeoNormalVecMutation\fP (double _sigma, const double & _p_change = \fC1.0\fP)\fC [inline]\fP"
|
|
.PP
|
|
(Default) Constructor.
|
|
.PP
|
|
The bounds are initialized with the global object that says: no bounds.
|
|
.PP
|
|
\fBParameters:\fP
|
|
.RS 4
|
|
\fI_sigma\fP the range for uniform nutation
|
|
.br
|
|
\fI_p_change\fP the probability to change a given coordinate
|
|
.RE
|
|
.PP
|
|
|
|
.PP
|
|
Definition at line 58 of file eoNormalMutation.h.
|
|
.SS "template<class EOT> \fBeoNormalVecMutation\fP< \fBEOT\fP >::\fBeoNormalVecMutation\fP (\fBeoRealVectorBounds\fP & _bounds, double _sigma, const double & _p_change = \fC1.0\fP)\fC [inline]\fP"
|
|
.PP
|
|
Constructor with bounds.
|
|
.PP
|
|
\fBParameters:\fP
|
|
.RS 4
|
|
\fI_bounds\fP an \fBeoRealVectorBounds\fP that contains the bounds
|
|
.br
|
|
\fI_sigma\fP the range for uniform nutation
|
|
.br
|
|
\fI_p_change\fP the probability to change a given coordinate
|
|
.RE
|
|
.PP
|
|
for each component, the sigma is scaled to the range of the bound, if bounded
|
|
.PP
|
|
Definition at line 69 of file eoNormalMutation.h.
|
|
.PP
|
|
References eoRealBaseVectorBounds::isBounded(), and eoRealBaseVectorBounds::range().
|
|
.SH "Member Function Documentation"
|
|
.PP
|
|
.SS "template<class EOT> bool \fBeoNormalVecMutation\fP< \fBEOT\fP >::operator() (\fBEOT\fP & _eo)\fC [inline, virtual]\fP"
|
|
.PP
|
|
Do it!
|
|
.PP
|
|
\fBParameters:\fP
|
|
.RS 4
|
|
\fI_eo\fP The cromosome undergoing the mutation
|
|
.RE
|
|
.PP
|
|
|
|
.PP
|
|
Implements \fBeoUF< EOT &, bool >\fP.
|
|
.PP
|
|
Definition at line 86 of file eoNormalMutation.h.
|
|
.PP
|
|
References eoRng::flip(), eoRealBaseVectorBounds::foldsInBounds(), and eoRng::normal().
|
|
|
|
.SH "Author"
|
|
.PP
|
|
Generated automatically by Doxygen for EO from the source code.
|