📄 eoonemaxevalfunc.html
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="GENERATOR" content="Mozilla/4.78 [en] (X11; U; Linux 2.4.7-10 i686) [Netscape]"> <title>Templates/eoOneMaxEvalFunc.h</title></head><body text="#000000" bgcolor="#C3C2B4" link="#0000EE" vlink="#551A8B" alink="#FF0000"><a href="eoLesson5.html">Back to Lesson 5</a>- <a href="eoTutorial.html">Tutorial main page </a>- <a href="eoTopDown.html">Top-Downpage</a> - <a href="eoBottomUp.html">Bottom-up page</a> - <a href="eoProgramming.html">Programminghints</a> - <font face="Arial,Helvetica"><a href="doc/html/index.html">EOdocumentation</a></font><br><hr WIDTH="100%"><!-- -------------- End of header ------------------ --><!-- ----------------------------------------------- --><center><h1><font color="#FF0000">Templates/eoOneMaxEvalFunc.h</font></h1></center>The places where you have to put some code are on <b><font color="#FF6666">pinkbackground</font></b>.. Only the the <a href="eoTutorial.html#colors">charactercolors have the usual meaning</a>.<br><a NAME="start"></a><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr NOSAVE><td NOSAVE><tt><font color="#993300">/** -*- mode: c++; c-indent-level:4; c++-member-init-indent: 8; comment-column: 35; -*-</font></tt><p><tt><font color="#993300">The above line is usefulin Emacs-like editors</font></tt><br><tt><font color="#993300">*/</font></tt><p><tt><font color="#993300">/*</font></tt><br><tt><font color="#993300">Template for evaluator in EO, a functor thatcomputes the fitness of an EO</font></tt><br><tt><font color="#993300">==========================================================================</font></tt><br><tt><font color="#993300">*/</font></tt><p><b><tt><font color="#993300">#ifndef _eoOneMaxEvalFunc_h</font></tt></b><br><b><tt><font color="#993300">#define _eoOneMaxEvalFunc_h</font></tt></b><p><tt><font color="#993300">// include whatever general include you need</font></tt><br><b><tt><font color="#993300">#include <stdexcept></font></tt></b><br><b><tt><font color="#993300">#include <fstream></font></tt></b><p><tt><font color="#993300">// include the base definition of eoEvalFunc</font></tt><br><b><tt><font color="#993300">#include "eoEvalFunc.h"</font></tt></b><p><tt><font color="#993300">/** </font></tt><br><tt><font color="#993300"> Always write a comment in this formatbefore class definition</font></tt><br><tt><font color="#993300"> if you want the class to be documentedby Doxygen</font></tt><br><tt><font color="#993300">*/</font></tt></td></tr></table><a NAME="eval"></a><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr><td><b><tt><font color="#CC0000">template <class EOT></font></tt></b><br><b><tt><font color="#CC0000">class eoOneMaxEvalFunc : public eoEvalFunc<EOT></font></tt></b><br><b><tt><font color="#CC0000">{</font></tt></b><br><b><tt><font color="#CC0000">public:</font></tt></b><br><tt><font color="#CC0000">/// Ctor - no requirement</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#FFCCCC" NOSAVE ><tr><td><a NAME="constructor"></a><tt><font color="#CC0000">// START eventuallyadd or modify the anyVariable argument</font></tt><br><b><tt><font color="#CC0000"> eoOneMaxEvalFunc()</font></tt></b><br><tt><font color="#CC0000"><b> </b> // eoOneMaxEvalFunc(varType _anyVariable) : anyVariable(_anyVariable) </font></tt><br><tt><font color="#CC0000">// END eventually add or modify the anyVariableargument</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr><td><b><tt><font color="#CC0000"> {</font></tt></b></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#FFCCCC" NOSAVE ><tr><td><tt><font color="#CC0000"><b> </b> //START Code of Ctor of an eoOneMaxEvalFunc object</font></tt><br><tt><font color="#CC0000"><b> </b> //END Code of Ctor of an eoOneMaxEvalFunc object</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr><td><b><tt><font color="#CC0000"> }</font></tt></b><p><tt><font color="#CC0000"><b> </b> /** Actually compute the fitness</font></tt><br><tt><font color="#CC0000"> *</font></tt><br><tt><font color="#CC0000"> * @param EOT & _eo the EOobject to evaluate</font></tt><br><tt><font color="#CC0000"> * it should stay templatized to be usable </font></tt><br><tt><font color="#CC0000"> * with any fitness type</font></tt><br><tt><font color="#CC0000"> */</font></tt><br><b><tt><font color="#CC0000"> void operator()(EOT & _eo)</font></tt></b><br><b><tt><font color="#CC0000"> {</font></tt></b><br><tt><font color="#CC0000"><b> </b> //test for invalid to avoid recomputing fitness of unmodified individuals</font></tt><br><b><tt><font color="#CC0000"> if (_eo.invalid())</font></tt></b><br><b><tt><font color="#CC0000"> {</font></tt></b><br><tt><font color="#CC0000"><b>double fit; </b>// to hold fitness value</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#FFCCCC" NOSAVE ><tr><td><a NAME="operator"></a><tt><font color="#CC0000"><b> </b>// START Code of computation of fitness of the eoOneMax object</font></tt><br><tt><font color="#CC0000">// fit = blablabla</font></tt><br><tt><font color="#CC0000"><b> </b> //END Code of computation of fitness of the eoOneMax object</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr><td><b><tt><font color="#CC0000">_eo.fitness(fit);</font></tt></b><br><b><tt><font color="#CC0000"> }</font></tt></b><br><b><tt><font color="#CC0000"> }</font></tt></b><p><b><tt><font color="#CC0000">private:</font></tt></b></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#FFCCCC" NOSAVE ><tr><td><a NAME="data"></a><tt><font color="#CC0000">// START Private dataof an eoOneMaxEvalFunc object</font></tt><br><tt><font color="#CC0000"><b> </b> // varType anyVariable; // for example ...</font></tt><br><tt><font color="#CC0000">// END Private data ofan eoOneMaxEvalFunc object</font></tt></td></tr></table><table BORDER=0 CELLSPACING=0 COLS=1 WIDTH="100%" BGCOLOR="#CCCCCC" NOSAVE ><tr><td><b><tt><font color="#CC0000">};</font></tt></b><br><b><tt><font color="#CC0000">#endif</font></tt></b></td></tr></table><hr WIDTH="100%"><a href="eoLesson5.html">Back to Lesson 5</a> - <a href="eoTutorial.html">Tutorialmain page </a>- <a href="eoTopDown.html">Top-Down page</a> - <a href="eoBottomUp.html">Bottom-uppage</a> - <a href="eoProgramming.html">Programming hints</a> - <font face="Arial,Helvetica"><a href="doc/html/index.html">EOdocumentation</a></font><hr><address><a href="mailto:marc.schoenauer@inria.fr">Marc Schoenauer</a></address><br><!-- Created: Nov 2000 --><!-- hhmts start -->Last modified: Fri May3 06:14:25 2002<!-- hhmts end --></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -