paradiseo/branches/paradiseo-moeo-1.0/doc/html/classmoeoIBEA.html
liefooga b1d6dd41c0 add doc
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@397 331e1502-861f-0410-8da2-ba01fb791d7f
2007-06-26 13:13:33 +00:00

498 lines
37 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>ParadisEO-MOEO: moeoIBEA&lt; MOEOT &gt; Class Template Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
<ul>
<li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<form action="search.php" method="get">
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
</tr>
</table>
</form>
</li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul></div>
<h1>moeoIBEA&lt; MOEOT &gt; Class Template Reference</h1><!-- doxytag: class="moeoIBEA" --><!-- doxytag: inherits="moeoEA" -->IBEA (Indicator-Based Evolutionary Algorithm) as described in: E.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>&gt;</code>
<p>
<p>Inheritance diagram for moeoIBEA&lt; MOEOT &gt;:
<p><center><img src="classmoeoIBEA.png" usemap="#moeoIBEA< MOEOT >_map" border="0" alt=""></center>
<map name="moeoIBEA< MOEOT >_map">
<area href="classmoeoEA.html" alt="moeoEA< MOEOT >" shape="rect" coords="75,168,215,192">
<area href="classmoeoAlgo.html" alt="moeoAlgo" shape="rect" coords="0,112,140,136">
<area doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_algo.html" alt="eoAlgo< MOEOT >" shape="rect" coords="150,112,290,136">
<area doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_u_f.html" alt="eoUF< A1, R >" shape="rect" coords="150,56,290,80">
<area doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_functor_base.html" alt="eoFunctorBase" shape="rect" coords="150,0,290,24">
</map>
<a href="classmoeoIBEA-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="220d16bade11304306f124f6014dc4b8"></a><!-- doxytag: member="moeoIBEA::ObjectiveVector" ref="220d16bade11304306f124f6014dc4b8" args="" -->
typedef MOEOT::ObjectiveVector&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The type of objective vector. <br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#ff425ab40d782131dc2fea3485bf20df">moeoIBEA</a> (unsigned int _maxGen, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;_eval, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>&lt; MOEOT &gt; &amp;_op, <a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;_metric, const double _kappa=0.05)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple ctor with a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>. <a href="#ff425ab40d782131dc2fea3485bf20df"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#cbc97868f6eb817d95127c43231c7540">moeoIBEA</a> (unsigned int _maxGen, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;_eval, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>&lt; MOEOT &gt; &amp;_op, <a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;_metric, const double _kappa=0.05)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Simple ctor with a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>. <a href="#cbc97868f6eb817d95127c43231c7540"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#b0c051de75326b11a391aaacdb324dac">moeoIBEA</a> (unsigned int _maxGen, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;_eval, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_quad_op.html">eoQuadOp</a>&lt; MOEOT &gt; &amp;_crossover, double _pCross, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_mon_op.html">eoMonOp</a>&lt; MOEOT &gt; &amp;_mutation, double _pMut, <a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;_metric, const double _kappa=0.05)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ctor with a crossover, a mutation and their corresponding rates. <a href="#b0c051de75326b11a391aaacdb324dac"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#9b59ebf11f896198264ab5594dbaaefd">moeoIBEA</a> (<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_continue.html">eoContinue</a>&lt; MOEOT &gt; &amp;_continuator, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;_eval, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>&lt; MOEOT &gt; &amp;_op, <a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;_metric, const double _kappa=0.05)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ctor with a continuator (instead of _maxGen) and a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>. <a href="#9b59ebf11f896198264ab5594dbaaefd"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#654c67d0bd74ea798580ec4c81435f92">moeoIBEA</a> (<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_continue.html">eoContinue</a>&lt; MOEOT &gt; &amp;_continuator, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;_eval, <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>&lt; MOEOT &gt; &amp;_op, <a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;_metric, const double _kappa=0.05)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ctor with a continuator (instead of _maxGen) and a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>. <a href="#654c67d0bd74ea798580ec4c81435f92"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#34e98caf16795ac05d2977f8d20151cd">operator()</a> (<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_pop.html">eoPop</a>&lt; MOEOT &gt; &amp;_pop)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Apply a few generation of evolution to the population _pop until the stopping criteria is verified. <a href="#34e98caf16795ac05d2977f8d20151cd"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70ecf0f84e1d4ba33b20fdfb2a3b3d02"></a><!-- doxytag: member="moeoIBEA::defaultGenContinuator" ref="70ecf0f84e1d4ba33b20fdfb2a3b3d02" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_continue.html">eoGenContinue</a>&lt; MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#70ecf0f84e1d4ba33b20fdfb2a3b3d02">defaultGenContinuator</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">a continuator based on the number of generations (used as default) <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d3772c044b41ea51f7aef80c0e12a75b"></a><!-- doxytag: member="moeoIBEA::continuator" ref="d3772c044b41ea51f7aef80c0e12a75b" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_continue.html">eoContinue</a>&lt; MOEOT &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#d3772c044b41ea51f7aef80c0e12a75b">continuator</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">stopping criteria <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a3fa636bc571c43a43eadddf5817da73"></a><!-- doxytag: member="moeoIBEA::popEval" ref="a3fa636bc571c43a43eadddf5817da73" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_pop_loop_eval.html">eoPopLoopEval</a>&lt; MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#a3fa636bc571c43a43eadddf5817da73">popEval</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">evaluation function used to evaluate the whole population <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b3ef8b89b356b575ae3bad1636b5faa"></a><!-- doxytag: member="moeoIBEA::select" ref="0b3ef8b89b356b575ae3bad1636b5faa" args="" -->
<a class="el" href="classmoeoDetTournamentSelect.html">moeoDetTournamentSelect</a>&lt; MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#0b3ef8b89b356b575ae3bad1636b5faa">select</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">binary tournament selection <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fed3304c930a10d27b0ec7e0c7974e40"></a><!-- doxytag: member="moeoIBEA::fitnessAssignment" ref="fed3304c930a10d27b0ec7e0c7974e40" args="" -->
<a class="el" href="classmoeoIndicatorBasedFitnessAssignment.html">moeoIndicatorBasedFitnessAssignment</a>&lt;<br>
MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#fed3304c930a10d27b0ec7e0c7974e40">fitnessAssignment</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">fitness assignment used in IBEA <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f31b1a42c2c3db0201ac7c5ed2c016f0"></a><!-- doxytag: member="moeoIBEA::dummyDiversityAssignment" ref="f31b1a42c2c3db0201ac7c5ed2c016f0" args="" -->
<a class="el" href="classmoeoDummyDiversityAssignment.html">moeoDummyDiversityAssignment</a>&lt;<br>
MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#f31b1a42c2c3db0201ac7c5ed2c016f0">dummyDiversityAssignment</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dummy diversity assignment <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="074ac1d52fa02e8f77b75ad46f0193f8"></a><!-- doxytag: member="moeoIBEA::replace" ref="074ac1d52fa02e8f77b75ad46f0193f8" args="" -->
<a class="el" href="classmoeoEnvironmentalReplacement.html">moeoEnvironmentalReplacement</a>&lt;<br>
MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#074ac1d52fa02e8f77b75ad46f0193f8">replace</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">elitist replacement <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb9d41ac2c472683a32b302bc518094d"></a><!-- doxytag: member="moeoIBEA::defaultSGAGenOp" ref="eb9d41ac2c472683a32b302bc518094d" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_s_g_a_gen_op.html">eoSGAGenOp</a>&lt; MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#eb9d41ac2c472683a32b302bc518094d">defaultSGAGenOp</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">an object for genetic operators (used as default) <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="33582dd65d7c5b90868d6719183a721e"></a><!-- doxytag: member="moeoIBEA::genBreed" ref="33582dd65d7c5b90868d6719183a721e" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_general_breeder.html">eoGeneralBreeder</a>&lt; MOEOT &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#33582dd65d7c5b90868d6719183a721e">genBreed</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">general breeder <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="670490da376ec266458d509354a7e101"></a><!-- doxytag: member="moeoIBEA::breed" ref="670490da376ec266458d509354a7e101" args="" -->
<a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_breed.html">eoBreed</a>&lt; MOEOT &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmoeoIBEA.html#670490da376ec266458d509354a7e101">breed</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">breeder <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class MOEOT&gt;<br>
class moeoIBEA&lt; MOEOT &gt;</h3>
IBEA (Indicator-Based Evolutionary Algorithm) as described in: E.
<p>
Zitzler, S. Künzli, "Indicator-Based Selection in Multiobjective Search", Proc. 8th International Conference on Parallel Problem Solving from Nature (PPSN VIII), pp. 832-842, Birmingham, UK (2004). This class builds the IBEA algorithm only by using the fine-grained components of the ParadisEO-MOEO framework.
<p>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00038">38</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="ff425ab40d782131dc2fea3485bf20df"></a><!-- doxytag: member="moeoIBEA::moeoIBEA" ref="ff425ab40d782131dc2fea3485bf20df" args="(unsigned int _maxGen, eoEvalFunc&lt; MOEOT &gt; &amp;_eval, eoGenOp&lt; MOEOT &gt; &amp;_op, moeoNormalizedSolutionVsSolutionBinaryMetric&lt; ObjectiveVector, double &gt; &amp;_metric, const double _kappa=0.05)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::<a class="el" href="classmoeoIBEA.html">moeoIBEA</a> </td>
<td>(</td>
<td class="paramtype">unsigned int&nbsp;</td>
<td class="paramname"> <em>_maxGen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_eval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_metric</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const double&nbsp;</td>
<td class="paramname"> <em>_kappa</em> = <code>0.05</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Simple ctor with a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>.
<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>_maxGen</em>&nbsp;</td><td>number of generations before stopping </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_eval</em>&nbsp;</td><td>evaluation function </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_op</em>&nbsp;</td><td>variation operator </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_metric</em>&nbsp;</td><td>metric </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_kappa</em>&nbsp;</td><td>scaling factor kappa </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00054">54</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
</div>
</div><p>
<a class="anchor" name="cbc97868f6eb817d95127c43231c7540"></a><!-- doxytag: member="moeoIBEA::moeoIBEA" ref="cbc97868f6eb817d95127c43231c7540" args="(unsigned int _maxGen, eoEvalFunc&lt; MOEOT &gt; &amp;_eval, eoTransform&lt; MOEOT &gt; &amp;_op, moeoNormalizedSolutionVsSolutionBinaryMetric&lt; ObjectiveVector, double &gt; &amp;_metric, const double _kappa=0.05)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::<a class="el" href="classmoeoIBEA.html">moeoIBEA</a> </td>
<td>(</td>
<td class="paramtype">unsigned int&nbsp;</td>
<td class="paramname"> <em>_maxGen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_eval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_metric</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const double&nbsp;</td>
<td class="paramname"> <em>_kappa</em> = <code>0.05</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Simple ctor with a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>.
<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>_maxGen</em>&nbsp;</td><td>number of generations before stopping </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_eval</em>&nbsp;</td><td>evaluation function </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_op</em>&nbsp;</td><td>variation operator </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_metric</em>&nbsp;</td><td>metric </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_kappa</em>&nbsp;</td><td>scaling factor kappa </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00068">68</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
</div>
</div><p>
<a class="anchor" name="b0c051de75326b11a391aaacdb324dac"></a><!-- doxytag: member="moeoIBEA::moeoIBEA" ref="b0c051de75326b11a391aaacdb324dac" args="(unsigned int _maxGen, eoEvalFunc&lt; MOEOT &gt; &amp;_eval, eoQuadOp&lt; MOEOT &gt; &amp;_crossover, double _pCross, eoMonOp&lt; MOEOT &gt; &amp;_mutation, double _pMut, moeoNormalizedSolutionVsSolutionBinaryMetric&lt; ObjectiveVector, double &gt; &amp;_metric, const double _kappa=0.05)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::<a class="el" href="classmoeoIBEA.html">moeoIBEA</a> </td>
<td>(</td>
<td class="paramtype">unsigned int&nbsp;</td>
<td class="paramname"> <em>_maxGen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_eval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_quad_op.html">eoQuadOp</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_crossover</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&nbsp;</td>
<td class="paramname"> <em>_pCross</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_mon_op.html">eoMonOp</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_mutation</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&nbsp;</td>
<td class="paramname"> <em>_pMut</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_metric</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const double&nbsp;</td>
<td class="paramname"> <em>_kappa</em> = <code>0.05</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Ctor with a crossover, a mutation and their corresponding rates.
<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>_maxGen</em>&nbsp;</td><td>number of generations before stopping </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_eval</em>&nbsp;</td><td>evaluation function </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_crossover</em>&nbsp;</td><td>crossover </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_pCross</em>&nbsp;</td><td>crossover probability </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_mutation</em>&nbsp;</td><td>mutation </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_pMut</em>&nbsp;</td><td>mutation probability </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_metric</em>&nbsp;</td><td>metric </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_kappa</em>&nbsp;</td><td>scaling factor kappa </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00085">85</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
</div>
</div><p>
<a class="anchor" name="9b59ebf11f896198264ab5594dbaaefd"></a><!-- doxytag: member="moeoIBEA::moeoIBEA" ref="9b59ebf11f896198264ab5594dbaaefd" args="(eoContinue&lt; MOEOT &gt; &amp;_continuator, eoEvalFunc&lt; MOEOT &gt; &amp;_eval, eoGenOp&lt; MOEOT &gt; &amp;_op, moeoNormalizedSolutionVsSolutionBinaryMetric&lt; ObjectiveVector, double &gt; &amp;_metric, const double _kappa=0.05)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::<a class="el" href="classmoeoIBEA.html">moeoIBEA</a> </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_continue.html">eoContinue</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_continuator</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_eval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_metric</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const double&nbsp;</td>
<td class="paramname"> <em>_kappa</em> = <code>0.05</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Ctor with a continuator (instead of _maxGen) and a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_gen_op.html">eoGenOp</a>.
<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>_continuator</em>&nbsp;</td><td>stopping criteria </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_eval</em>&nbsp;</td><td>evaluation function </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_op</em>&nbsp;</td><td>variation operator </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_metric</em>&nbsp;</td><td>metric </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_kappa</em>&nbsp;</td><td>scaling factor kappa </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00100">100</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
</div>
</div><p>
<a class="anchor" name="654c67d0bd74ea798580ec4c81435f92"></a><!-- doxytag: member="moeoIBEA::moeoIBEA" ref="654c67d0bd74ea798580ec4c81435f92" args="(eoContinue&lt; MOEOT &gt; &amp;_continuator, eoEvalFunc&lt; MOEOT &gt; &amp;_eval, eoTransform&lt; MOEOT &gt; &amp;_op, moeoNormalizedSolutionVsSolutionBinaryMetric&lt; ObjectiveVector, double &gt; &amp;_metric, const double _kappa=0.05)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::<a class="el" href="classmoeoIBEA.html">moeoIBEA</a> </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_continue.html">eoContinue</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_continuator</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_eval_func.html">eoEvalFunc</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_eval</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classmoeoNormalizedSolutionVsSolutionBinaryMetric.html">moeoNormalizedSolutionVsSolutionBinaryMetric</a>&lt; <a class="el" href="classmoeoIBEA.html#220d16bade11304306f124f6014dc4b8">ObjectiveVector</a>, double &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_metric</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const double&nbsp;</td>
<td class="paramname"> <em>_kappa</em> = <code>0.05</code></td><td>&nbsp;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Ctor with a continuator (instead of _maxGen) and a <a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_transform.html">eoTransform</a>.
<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>_continuator</em>&nbsp;</td><td>stopping criteria </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_eval</em>&nbsp;</td><td>evaluation function </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_op</em>&nbsp;</td><td>variation operator </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_metric</em>&nbsp;</td><td>metric </td></tr>
<tr><td valign="top"></td><td valign="top"><em>_kappa</em>&nbsp;</td><td>scaling factor kappa </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00114">114</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="34e98caf16795ac05d2977f8d20151cd"></a><!-- doxytag: member="moeoIBEA::operator()" ref="34e98caf16795ac05d2977f8d20151cd" args="(eoPop&lt; MOEOT &gt; &amp;_pop)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class MOEOT&gt; </div>
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classmoeoIBEA.html">moeoIBEA</a>&lt; MOEOT &gt;::operator() </td>
<td>(</td>
<td class="paramtype"><a class="elRef" doxygen="eo.doxytag:../../../paradiseo-eo/doc/html/" href="../../../paradiseo-eo/doc/html/classeo_pop.html">eoPop</a>&lt; MOEOT &gt; &amp;&nbsp;</td>
<td class="paramname"> <em>_pop</em> </td>
<td>&nbsp;)&nbsp;</td>
<td width="100%"><code> [inline, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
Apply a few generation of evolution to the population _pop until the stopping criteria is verified.
<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>_pop</em>&nbsp;</td><td>the population </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="moeoIBEA_8h-source.html#l00124">124</a> of file <a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a>.
<p>
References <a class="el" href="moeoIBEA_8h-source.html#l00164">moeoIBEA&lt; MOEOT &gt;::breed</a>, <a class="el" href="moeoIBEA_8h-source.html#l00148">moeoIBEA&lt; MOEOT &gt;::continuator</a>, <a class="el" href="moeoIBEA_8h-source.html#l00156">moeoIBEA&lt; MOEOT &gt;::dummyDiversityAssignment</a>, <a class="el" href="moeoIBEA_8h-source.html#l00154">moeoIBEA&lt; MOEOT &gt;::fitnessAssignment</a>, <a class="el" href="moeoIBEA_8h-source.html#l00150">moeoIBEA&lt; MOEOT &gt;::popEval</a>, and <a class="el" href="moeoIBEA_8h-source.html#l00158">moeoIBEA&lt; MOEOT &gt;::replace</a>.
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="moeoIBEA_8h-source.html">moeoIBEA.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Tue Jun 26 15:13:04 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.4.7 </small></address>
</body>
</html>