git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@40 331e1502-861f-0410-8da2-ba01fb791d7f
198 lines
12 KiB
HTML
198 lines
12 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
|
<title>EO: eoOneFifthMutation< EOT > Class Template Reference</title>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
|
</head><body>
|
|
<!-- Generated by Doxygen 1.3.9.1 -->
|
|
<div class="qindex"> <form class="search" action="search.php" method="get">
|
|
<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
|
|
<h1>eoOneFifthMutation< EOT > Class Template Reference</h1>the dynamic version: just say it is updatable - and write the <a class="el" href="classeo_one_fifth_mutation.html#a3">update()</a> method! here the 1 fifth rule: count the proportion of successful mutations, and increase sigma if more than threshold (1/5 !)
|
|
<a href="#_details">More...</a>
|
|
<p>
|
|
<code>#include <<a class="el" href="eo_normal_mutation_8h-source.html">eoNormalMutation.h</a>></code>
|
|
<p>
|
|
<p>Inheritance diagram for eoOneFifthMutation< EOT >:
|
|
<p><center><img src="classeo_one_fifth_mutation.png" usemap="#eoOneFifthMutation< EOT >_map" border="0" alt=""></center>
|
|
<map name="eoOneFifthMutation< EOT >_map">
|
|
<area href="classeo_normal_mutation.html" alt="eoNormalMutation< EOT >" shape="rect" coords="101,168,294,192">
|
|
<area href="classeo_updatable.html" alt="eoUpdatable" shape="rect" coords="304,168,497,192">
|
|
<area href="classeo_mon_op.html" alt="eoMonOp< EOT >" shape="rect" coords="101,112,294,136">
|
|
<area href="classeo_op.html" alt="eoOp< EOT >" shape="rect" coords="0,56,193,80">
|
|
<area href="classeo_u_f.html" alt="eoUF< EOT &, bool >" shape="rect" coords="203,56,396,80">
|
|
<area href="classeo_functor_base.html" alt="eoFunctorBase" shape="rect" coords="101,0,294,24">
|
|
</map>
|
|
<a href="classeo_one_fifth_mutation-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
|
<tr><td></td></tr>
|
|
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="w0" doxytag="eoOneFifthMutation::Fitness"></a>
|
|
typedef EOT::Fitness </td><td class="memItemRight" valign="bottom"><b>Fitness</b></td></tr>
|
|
|
|
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_one_fifth_mutation.html#a0">eoOneFifthMutation</a> (<a class="el" href="classeo_eval_func.html">eoEvalFunc</a>< <a class="el" href="struct_dummy.html">EOT</a> > &_eval, double &_sigmaInit, unsigned _windowSize=10, double _updateFactor=0.83, double _threshold=0.2)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">(Default) Constructor. <a href="#a0"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1" doxytag="eoOneFifthMutation::className"></a>
|
|
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_one_fifth_mutation.html#a1">className</a> () const </td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">The class name. <br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_one_fifth_mutation.html#a2">operator()</a> (<a class="el" href="struct_dummy.html">EOT</a> &_eo)</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Do it! calls the standard mutation, then checks for success and updates stats. <a href="#a2"></a><br></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a3" doxytag="eoOneFifthMutation::update"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classeo_one_fifth_mutation.html#a3">update</a> ()</td></tr>
|
|
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">the method that will be called every generation if the object is added to the checkpoint <br></td></tr>
|
|
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r0" doxytag="eoOneFifthMutation::eval"></a>
|
|
<a class="el" href="classeo_eval_func.html">eoEvalFunc</a>< <a class="el" href="struct_dummy.html">EOT</a> > & </td><td class="memItemRight" valign="bottom"><b>eval</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r1" doxytag="eoOneFifthMutation::threshold"></a>
|
|
double </td><td class="memItemRight" valign="bottom"><b>threshold</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r2" doxytag="eoOneFifthMutation::updateFactor"></a>
|
|
double </td><td class="memItemRight" valign="bottom"><b>updateFactor</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r3" doxytag="eoOneFifthMutation::nbMut"></a>
|
|
std::vector< unsigned > </td><td class="memItemRight" valign="bottom"><b>nbMut</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r4" doxytag="eoOneFifthMutation::nbSuccess"></a>
|
|
std::vector< unsigned > </td><td class="memItemRight" valign="bottom"><b>nbSuccess</b></td></tr>
|
|
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="r5" doxytag="eoOneFifthMutation::genIndex"></a>
|
|
unsigned </td><td class="memItemRight" valign="bottom"><b>genIndex</b></td></tr>
|
|
|
|
</table>
|
|
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
|
<h3>template<class EOT><br>
|
|
class eoOneFifthMutation< EOT ></h3>
|
|
|
|
the dynamic version: just say it is updatable - and write the <a class="el" href="classeo_one_fifth_mutation.html#a3">update()</a> method! here the 1 fifth rule: count the proportion of successful mutations, and increase sigma if more than threshold (1/5 !)
|
|
<p>
|
|
|
|
<p>
|
|
Definition at line <a class="el" href="eo_normal_mutation_8h-source.html#l00177">177</a> of file <a class="el" href="eo_normal_mutation_8h-source.html">eoNormalMutation.h</a>.<hr><h2>Constructor & Destructor Documentation</h2>
|
|
<a class="anchor" name="a0" doxytag="eoOneFifthMutation::eoOneFifthMutation"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" colspan="4">
|
|
template<class EOT> </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_one_fifth_mutation.html">eoOneFifthMutation</a>< <a class="el" href="struct_dummy.html">EOT</a> >::<a class="el" href="classeo_one_fifth_mutation.html">eoOneFifthMutation</a> </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top"><a class="el" href="classeo_eval_func.html">eoEvalFunc</a>< <a class="el" href="struct_dummy.html">EOT</a> > & </td>
|
|
<td class="mdname" nowrap> <em>_eval</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>double & </td>
|
|
<td class="mdname" nowrap> <em>_sigmaInit</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>unsigned </td>
|
|
<td class="mdname" nowrap> <em>_windowSize</em> = <code>10</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>double </td>
|
|
<td class="mdname" nowrap> <em>_updateFactor</em> = <code>0.83</code>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap align="right"></td>
|
|
<td class="md"></td>
|
|
<td class="md" nowrap>double </td>
|
|
<td class="mdname" nowrap> <em>_threshold</em> = <code>0.2</code></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md"></td>
|
|
<td class="md">) </td>
|
|
<td class="md" colspan="2"><code> [inline]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
(Default) Constructor.
|
|
<p>
|
|
<dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>eval</em> </td><td>the evaluation function, needed to recompute the fitmess </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_sigmaInit</em> </td><td>the initial value for uniform mutation </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_windowSize</em> </td><td>the size of the window for statistics </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_threshold</em> </td><td>the threshold (the 1/5 - 0.2) </td></tr>
|
|
<tr><td valign="top"></td><td valign="top"><em>_updateFactor</em> </td><td>multiplicative update factor for sigma </td></tr>
|
|
</table>
|
|
</dl>
|
|
|
|
<p>
|
|
Definition at line <a class="el" href="eo_normal_mutation_8h-source.html#l00195">195</a> of file <a class="el" href="eo_normal_mutation_8h-source.html">eoNormalMutation.h</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<hr><h2>Member Function Documentation</h2>
|
|
<a class="anchor" name="a2" doxytag="eoOneFifthMutation::operator()"></a><p>
|
|
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
|
|
<tr>
|
|
<td class="mdRow">
|
|
<table cellpadding="0" cellspacing="0" border="0">
|
|
<tr>
|
|
<td class="md" colspan="4">
|
|
template<class EOT> </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="md" nowrap valign="top">bool <a class="el" href="classeo_one_fifth_mutation.html">eoOneFifthMutation</a>< <a class="el" href="struct_dummy.html">EOT</a> >::operator() </td>
|
|
<td class="md" valign="top">( </td>
|
|
<td class="md" nowrap valign="top"><a class="el" href="struct_dummy.html">EOT</a> & </td>
|
|
<td class="mdname1" valign="top" nowrap> <em>_eo</em> </td>
|
|
<td class="md" valign="top"> ) </td>
|
|
<td class="md" nowrap><code> [inline, virtual]</code></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing="5" cellpadding="0" border="0">
|
|
<tr>
|
|
<td>
|
|
|
|
</td>
|
|
<td>
|
|
|
|
<p>
|
|
Do it! calls the standard mutation, then checks for success and updates stats.
|
|
<p>
|
|
<dl compact><dt><b>Parameters:</b></dt><dd>
|
|
<table border="0" cellspacing="2" cellpadding="0">
|
|
<tr><td valign="top"></td><td valign="top"><em>_eo</em> </td><td>The chromosome undergoing the mutation </td></tr>
|
|
</table>
|
|
</dl>
|
|
|
|
<p>
|
|
Reimplemented from <a class="el" href="classeo_normal_mutation.html#a3">eoNormalMutation< EOT ></a>.
|
|
<p>
|
|
Definition at line <a class="el" href="eo_normal_mutation_8h-source.html#l00216">216</a> of file <a class="el" href="eo_normal_mutation_8h-source.html">eoNormalMutation.h</a>.
|
|
<p>
|
|
References <a class="el" href="_e_o_8h-source.html#l00060">EO< F >::fitness()</a>, <a class="el" href="_e_o_8h-source.html#l00081">EO< F >::invalid()</a>, <a class="el" href="_e_o_8h-source.html#l00067">EO< F >::invalidate()</a>, and <a class="el" href="eo_normal_mutation_8h-source.html#l00147">eoNormalMutation< EOT >::operator()()</a>. </td>
|
|
</tr>
|
|
</table>
|
|
<hr>The documentation for this class was generated from the following file:<ul>
|
|
<li><a class="el" href="eo_normal_mutation_8h-source.html">eoNormalMutation.h</a></ul>
|
|
<hr size="1"><address style="align: right;"><small>Generated on Thu Oct 19 05:06:52 2006 for EO by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address>
|
|
</body>
|
|
</html>
|