update docs

git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@166 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
liefooga 2007-01-16 14:51:25 +00:00
commit 011075c26a
134 changed files with 696 additions and 696 deletions

View file

@ -62,7 +62,7 @@
<a name="l00039"></a>00039 <span class="comment"> * NB: this function is almost cut-and-pasted from EO/make_algo_pareto.h and integrates MOEO features</span>
<a name="l00040"></a>00040 <span class="comment"> */</span>
<a name="l00041"></a>00041 <span class="keyword">template</span> &lt; <span class="keyword">class</span> EOT &gt;
<a name="l00042"></a>00042 eoAlgo &lt; EOT &gt; &amp;do_make_algo_MOEO (<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parser.html">eoParser</a> &amp; _parser, <a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_state.html">eoState</a> &amp; _state,
<a name="l00042"></a>00042 eoAlgo &lt; EOT &gt; &amp;do_make_algo_MOEO (<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parser.html">eoParser</a> &amp; _parser, <a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_state.html">eoState</a> &amp; _state,
<a name="l00043"></a>00043 eoEvalFunc &lt; EOT &gt; &amp;_eval,
<a name="l00044"></a>00044 eoContinue &lt; EOT &gt; &amp;_continue,
<a name="l00045"></a>00045 eoGenOp &lt; EOT &gt; &amp;_op,
@ -77,21 +77,21 @@
<a name="l00054"></a>00054
<a name="l00055"></a>00055
<a name="l00056"></a>00056 <span class="comment">/* the selection criteria */</span>
<a name="l00057"></a>00057 string &amp; selStr = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"NSGA-II"</span>), <span class="stringliteral">"selCrit"</span>,
<a name="l00057"></a>00057 string &amp; selStr = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"NSGA-II"</span>), <span class="stringliteral">"selCrit"</span>,
<a name="l00058"></a>00058 <span class="stringliteral">"Multi-objective selection criterion: NSGA, NSGA-II, IBEA, ParetoRanking, ParetoSharing"</span>,
<a name="l00059"></a>00059 <span class="charliteral">'S'</span>, <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00060"></a>00060 <span class="keywordtype">double</span> nicheSize = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (1.0, <span class="stringliteral">"nicheSize"</span>,
<a name="l00060"></a>00060 <span class="keywordtype">double</span> nicheSize = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (1.0, <span class="stringliteral">"nicheSize"</span>,
<a name="l00061"></a>00061 <span class="stringliteral">"Size of niche for NSGA-I or ParetoSharing"</span>,
<a name="l00062"></a>00062 <span class="charliteral">'n'</span>,
<a name="l00063"></a>00063 <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00064"></a>00064 <span class="keywordtype">double</span> kappa =
<a name="l00065"></a>00065 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (0.05, <span class="stringliteral">"kappa"</span>, <span class="stringliteral">"Scaling factor kappa for IBEA"</span>, <span class="charliteral">'k'</span>,
<a name="l00065"></a>00065 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (0.05, <span class="stringliteral">"kappa"</span>, <span class="stringliteral">"Scaling factor kappa for IBEA"</span>, <span class="charliteral">'k'</span>,
<a name="l00066"></a>00066 <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00067"></a>00067 string &amp; indStr =
<a name="l00068"></a>00068 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"Epsilon"</span>), <span class="stringliteral">"indicator"</span>,
<a name="l00068"></a>00068 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"Epsilon"</span>), <span class="stringliteral">"indicator"</span>,
<a name="l00069"></a>00069 <span class="stringliteral">"Binary quality indicator for IBEA : Epsilon, Hypervolume"</span>,
<a name="l00070"></a>00070 <span class="charliteral">'I'</span>, <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00071"></a>00071 <span class="keywordtype">double</span> rho = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (1.1, <span class="stringliteral">"rho"</span>,
<a name="l00071"></a>00071 <span class="keywordtype">double</span> rho = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (1.1, <span class="stringliteral">"rho"</span>,
<a name="l00072"></a>00072 <span class="stringliteral">"reference point for the hypervolume calculation (must not be smaller than 1)"</span>,
<a name="l00073"></a>00073 <span class="charliteral">'r'</span>, <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00074"></a>00074 <span class="comment">// the eoPerf2Worth object</span>
@ -119,7 +119,7 @@
<a name="l00096"></a>00096 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (selStr == string (<span class="stringliteral">"ParetoRanking"</span>))
<a name="l00097"></a>00097 { <span class="comment">// Pareto Ranking</span>
<a name="l00098"></a>00098 eoDominanceMap &lt; EOT &gt; &amp;dominance =
<a name="l00099"></a>00099 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (<span class="keyword">new</span> eoDominanceMap &lt; EOT &gt;);
<a name="l00099"></a>00099 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (<span class="keyword">new</span> eoDominanceMap &lt; EOT &gt;);
<a name="l00100"></a>00100 p2w = <span class="keyword">new</span> eoParetoRanking &lt; EOT &gt; (dominance);
<a name="l00101"></a>00101 }
<a name="l00102"></a>00102 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (selStr == string (<span class="stringliteral">"ParetoSharing"</span>))
@ -132,7 +132,7 @@
<a name="l00109"></a>00109 <span class="keywordflow">throw</span> std::runtime_error (stmp.c_str ());
<a name="l00110"></a>00110 }
<a name="l00111"></a>00111 <span class="comment">// store </span>
<a name="l00112"></a>00112 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (p2w);
<a name="l00112"></a>00112 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (p2w);
<a name="l00113"></a>00113
<a name="l00114"></a>00114
<a name="l00115"></a>00115
@ -140,10 +140,10 @@
<a name="l00117"></a>00117
<a name="l00118"></a>00118 <span class="comment">/* the selector */</span>
<a name="l00119"></a>00119 eoValueParam &lt; eoParamParamType &gt; &amp;selectionParam =
<a name="l00120"></a>00120 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_param_param_type.html">eoParamParamType</a> (<span class="stringliteral">"DetTour(2)"</span>), <span class="stringliteral">"selection"</span>,
<a name="l00120"></a>00120 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_param_param_type.html">eoParamParamType</a> (<span class="stringliteral">"DetTour(2)"</span>), <span class="stringliteral">"selection"</span>,
<a name="l00121"></a>00121 <span class="stringliteral">"Selection: Roulette, DetTour(T), StochTour(t) or Random"</span>,
<a name="l00122"></a>00122 <span class="charliteral">'s'</span>, <span class="stringliteral">"Evolution Engine"</span>);
<a name="l00123"></a>00123 <a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_param_param_type.html">eoParamParamType</a> &amp; ppSelect = selectionParam.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_value_param.html#a2">value</a> (); <span class="comment">// pair&lt; string , vector&lt;string&gt; &gt;</span>
<a name="l00123"></a>00123 <a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_param_param_type.html">eoParamParamType</a> &amp; ppSelect = selectionParam.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_value_param.html#a2">value</a> (); <span class="comment">// pair&lt; string , vector&lt;string&gt; &gt;</span>
<a name="l00124"></a>00124 <span class="comment">// the select object</span>
<a name="l00125"></a>00125 eoSelectOne &lt; EOT &gt; *select;
<a name="l00126"></a>00126 <span class="keywordflow">if</span> (ppSelect.first == string (<span class="stringliteral">"DetTour"</span>))
@ -189,17 +189,17 @@
<a name="l00166"></a>00166 <span class="keywordflow">throw</span> std::runtime_error (stmp.c_str ());
<a name="l00167"></a>00167 }
<a name="l00168"></a>00168 <span class="comment">// store </span>
<a name="l00169"></a>00169 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (select);
<a name="l00169"></a>00169 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (select);
<a name="l00170"></a>00170
<a name="l00171"></a>00171
<a name="l00172"></a>00172
<a name="l00173"></a>00173
<a name="l00174"></a>00174
<a name="l00175"></a>00175 <span class="comment">/* elitism */</span>
<a name="l00176"></a>00176 <span class="keywordtype">bool</span> useElitism = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<span class="keyword">false</span>, <span class="stringliteral">"elitism"</span>,
<a name="l00176"></a>00176 <span class="keywordtype">bool</span> useElitism = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<span class="keyword">false</span>, <span class="stringliteral">"elitism"</span>,
<a name="l00177"></a>00177 <span class="stringliteral">"Use elitism in the selection process (individuals from the archive are randomly selected)"</span>,
<a name="l00178"></a>00178 <span class="charliteral">'E'</span>, <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00179"></a>00179 <span class="keywordtype">double</span> ratioFromPop = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (0.8, <span class="stringliteral">"ratio"</span>,
<a name="l00179"></a>00179 <span class="keywordtype">double</span> ratioFromPop = _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (0.8, <span class="stringliteral">"ratio"</span>,
<a name="l00180"></a>00180 <span class="stringliteral">"Ratio from the population for elitism (must not be greater than 1)"</span>,
<a name="l00181"></a>00181 <span class="charliteral">'\0'</span>,
<a name="l00182"></a>00182 <span class="stringliteral">"Evolution Engine"</span>).value ();
@ -210,7 +210,7 @@
<a name="l00187"></a>00187 <span class="keyword">new</span> moeoSelectOneFromPopAndArch &lt; EOT &gt; (*selectPop, _arch,
<a name="l00188"></a>00188 ratioFromPop);
<a name="l00189"></a>00189 <span class="comment">// store </span>
<a name="l00190"></a>00190 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (select);
<a name="l00190"></a>00190 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (select);
<a name="l00191"></a>00191 }
<a name="l00192"></a>00192
<a name="l00193"></a>00193
@ -219,7 +219,7 @@
<a name="l00196"></a>00196
<a name="l00197"></a>00197 <span class="comment">/* the number of offspring */</span>
<a name="l00198"></a>00198 eoValueParam &lt; eoHowMany &gt; &amp;offspringRateParam =
<a name="l00199"></a>00199 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_how_many.html">eoHowMany</a> (1.0), <span class="stringliteral">"nbOffspring"</span>,
<a name="l00199"></a>00199 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_how_many.html">eoHowMany</a> (1.0), <span class="stringliteral">"nbOffspring"</span>,
<a name="l00200"></a>00200 <span class="stringliteral">"Nb of offspring (percentage or absolute)"</span>, <span class="charliteral">'O'</span>,
<a name="l00201"></a>00201 <span class="stringliteral">"Evolution Engine"</span>);
<a name="l00202"></a>00202
@ -229,7 +229,7 @@
<a name="l00206"></a>00206
<a name="l00207"></a>00207 <span class="comment">/* the replacement */</span>
<a name="l00208"></a>00208 string &amp; repStr =
<a name="l00209"></a>00209 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"Plus"</span>), <span class="stringliteral">"replacement"</span>,
<a name="l00209"></a>00209 _parser.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_parameter_loader.html#a3">createParam</a> (string (<span class="stringliteral">"Plus"</span>), <span class="stringliteral">"replacement"</span>,
<a name="l00210"></a>00210 <span class="stringliteral">"Replacement: Plus, DistinctPlus or Generational"</span>,
<a name="l00211"></a>00211 <span class="charliteral">'R'</span>, <span class="stringliteral">"Evolution Engine"</span>).value ();
<a name="l00212"></a>00212 eoReplacement &lt; EOT &gt; *replace;
@ -251,7 +251,7 @@
<a name="l00228"></a>00228 <span class="keywordflow">throw</span> std::runtime_error (stmp.c_str ());
<a name="l00229"></a>00229 }
<a name="l00230"></a>00230 <span class="comment">// store</span>
<a name="l00231"></a>00231 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (replace);
<a name="l00231"></a>00231 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (replace);
<a name="l00232"></a>00232
<a name="l00233"></a>00233
<a name="l00234"></a>00234
@ -259,19 +259,19 @@
<a name="l00236"></a>00236
<a name="l00237"></a>00237 <span class="comment">// the general breeder</span>
<a name="l00238"></a>00238 eoGeneralBreeder &lt; EOT &gt; *breed =
<a name="l00239"></a>00239 <span class="keyword">new</span> eoGeneralBreeder &lt; EOT &gt; (*select, _op, offspringRateParam.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_value_param.html#a2">value</a> ());
<a name="l00240"></a>00240 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (breed);
<a name="l00239"></a>00239 <span class="keyword">new</span> eoGeneralBreeder &lt; EOT &gt; (*select, _op, offspringRateParam.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_value_param.html#a2">value</a> ());
<a name="l00240"></a>00240 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (breed);
<a name="l00241"></a>00241
<a name="l00242"></a>00242 <span class="comment">// the eoEasyEA</span>
<a name="l00243"></a>00243 eoAlgo &lt; EOT &gt; *algo =
<a name="l00244"></a>00244 <span class="keyword">new</span> eoEasyEA &lt; EOT &gt; (_continue, _eval, *breed, *replace);
<a name="l00245"></a>00245 _state.<a class="codeRef" doxygen="eo.doxytag:../../../workspace/paradiseo-eo/doc/doc/html/" href="../../../workspace/paradiseo-eo/doc/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (algo);
<a name="l00245"></a>00245 _state.<a class="codeRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_store.html#a2">storeFunctor</a> (algo);
<a name="l00246"></a>00246 <span class="comment">// that's it!</span>
<a name="l00247"></a>00247 <span class="keywordflow">return</span> *algo;
<a name="l00248"></a>00248 }
<a name="l00249"></a>00249
<a name="l00250"></a>00250 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by&nbsp;
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Tue Jan 16 15:49:53 2007 for ParadisEO-MOEO by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address>
</body>