Changed ALL names of links to class files in the documentation due to the change in
Doxygen naming convention
This commit is contained in:
parent
6dcc949ee5
commit
866ef81d43
7 changed files with 60 additions and 60 deletions
|
|
@ -58,7 +58,7 @@ and the interface for its operator() is
|
|||
|
||||
<b><tt><font color="#993300"><font size=+1>bool operator()(const eoPop<EOT>&
|
||||
)</font></font></tt></b>
|
||||
<p>which you could have guessed from the <a href="../../doc/html/class_eocontinue.html">inheritance
|
||||
<p>which you could have guessed from the <a href="../../doc/html/classeo_continue.html">inheritance
|
||||
diagram</a> for class <b><font color="#3366FF">eoContinue</font></b>, as
|
||||
you see there that <b><font color="#3366FF">eoContinue</font></b> derives
|
||||
from class <b><tt><font color="#993300"><font size=+1>eoUF<const eoPop<EOT>&,
|
||||
|
|
@ -88,7 +88,7 @@ when the stopping criterion <b><font color="#FF6600">is met!</font></b></li>
|
|||
<a NAME="existingContinue"></a><b><font color="#FF0000">Existing continuators:
|
||||
</font></b>Of
|
||||
course you can find out all existing (non-virtual!) subclasses of eoContinue
|
||||
by looking at its <a href="../../doc/html/class_eocontinue.html">inheritance
|
||||
by looking at its <a href="../../doc/html/classeo_continue.html">inheritance
|
||||
diagram</a>. But you might find it more convenient to have them listed
|
||||
here:
|
||||
<ul>
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ is
|
|||
<p><b><tt><font color="#993300">const EOT & operator()(const eoPop<EOT>&
|
||||
_parents)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoselectone.html">eoSelectOne</a></font></font></b>.,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_select_one.html">eoSelectOne</a></font></font></b>.,
|
||||
as you see there that <font color="#009900">eoSelectOne</font> derives
|
||||
from <tt><font color="#993300">class eoUF<const eoPop<EOT>&,
|
||||
const EOT&></font></tt>.
|
||||
|
|
@ -114,7 +114,7 @@ for its
|
|||
<p><b><tt><font color="#993300">void operator()(const eoPop<EOT>&
|
||||
_source, eoPop<EOT>& _dest)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoselect.html">eoSelect</a></font></font></b>.,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_select.html">eoSelect</a></font></font></b>.,
|
||||
as you see there that <font color="#009900">eoSelect</font> derives from
|
||||
<tt><font color="#993300">class
|
||||
eoBF<const eoPop<EOT>&, eoPop<EOT>&, void></font></tt>.
|
||||
|
|
@ -208,7 +208,7 @@ is
|
|||
<p><b><tt><font color="#993300">void operator()(eoPop<EOT>& _parents,
|
||||
eoPop<EOT>& _offspring)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoreplacement.html">eoReplacement</a></font></font></b>.,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_replacement.html">eoReplacement</a></font></font></b>.,
|
||||
as you see there that <font color="#009900">eoReplacement</font> derives
|
||||
from <tt><font color="#993300">class eoBF<eoPop<EOT>&, eoPop<EOT>&,
|
||||
void></font></tt>.
|
||||
|
|
@ -234,7 +234,7 @@ that offspring and parents are of the same size (but does not check!).</li>
|
|||
This is one the basic types of replacement in EO. It has two major steps,
|
||||
<font color="#FF6600">merging</font>
|
||||
both populations of parents and offspring, and <font color="#FF6600">reducing</font>
|
||||
this big population to the right size. It <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomegereduce.html">contains
|
||||
this big population to the right size. It <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_merge_reduce.html">contains
|
||||
two objects</a></font></font> of respective types <b><font color="#009900"><a href="#merge">eoMerge</a></font></b>
|
||||
and <b><font color="#009900"><a href="#reduce">eoReduce</a></font></b>
|
||||
and you can probably guess what each of them actually does :-)</li>
|
||||
|
|
@ -506,7 +506,7 @@ is
|
|||
<p><b><tt><font color="#993300">void operator()(const eoPop<EOT>&
|
||||
_parents, eoPop<EOT>& _offspring)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomerge.html">eoMerge</a></font></font></b>,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_merge.html">eoMerge</a></font></font></b>,
|
||||
as you see there that <font color="#009900">eoMerge</font> derives from
|
||||
<br><tt><font color="#993300">class eoBF<const eoPop<EOT>&, eoPop<EOT>&,
|
||||
void></font></tt>.
|
||||
|
|
@ -540,7 +540,7 @@ is
|
|||
<p><b><tt><font color="#993300">void operator()(eoPop<EOT>& _parents,
|
||||
unsigned int new_size)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoreduce.html">eoReduce</a></font></font></b>,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_reduce.html">eoReduce</a></font></font></b>,
|
||||
as you see there that <font color="#009900">eoReduce</font> derives from
|
||||
<br><tt><font color="#993300">class eoBF<eoPop<EOT>&, unsigned
|
||||
int, void></font></tt>.
|
||||
|
|
@ -610,7 +610,7 @@ is
|
|||
<center>
|
||||
<p><b><tt><font color="#993300">unsigned int operator()(unsigned int _pop_size)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eohowmany.html">eoHowMany</a></font></font></b>,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_how_many.html">eoHowMany</a></font></font></b>,
|
||||
as you see there that <b><tt><font color="#993300">eoHowMany</font></tt></b>
|
||||
derives from
|
||||
<br><tt><font color="#993300">class eoUF<unsigned int, unsigned int></font></tt>.
|
||||
|
|
@ -641,7 +641,7 @@ is
|
|||
<p><b><tt><font color="#993300">void operator()(eoPop<EOT>& _source,
|
||||
eoPop<EOT>& _dest)</font></tt></b></center>
|
||||
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eosurviveanddie.html">eoSurviveAndDie</a></font></font></b>,
|
||||
<p>which you could have guessed from the inheritance tree for class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_survive_and_die.html">eoSurviveAndDie</a></font></font></b>,
|
||||
as you see there that <b><tt><font color="#993300">eoSurviveAndDie</font></tt></b>
|
||||
derives from <tt><font color="#993300">class eoBF<eoPop<EOT>&,
|
||||
eoPop<EOT>&, void></font></tt>.
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ the representation-dependent file <b><tt><font color="#993300"><font size=+1>ga.
|
|||
containing the bitstring representation and operators. More details about
|
||||
<a href="eoRepresentation.html#bitstring">what is available for bitstrings
|
||||
here</a>.<br>
|
||||
You then say that you will be handling <b><font face="Arial,Helvetica"><a href="../../doc/html/class_eobin.html">Bitstring
|
||||
You then say that you will be handling <b><font face="Arial,Helvetica"><a href="../../doc/html/classeo_bit.html">Bitstring
|
||||
genotypes</a></font></b>, whose fitness is a double. This makes Indi derive
|
||||
from the <a href="eoProgramming.html#STL">STL class</a> <font color="#993300">vector<bool></font></li>
|
||||
|
||||
|
|
@ -121,7 +121,7 @@ the representation-dependent file <b><tt><font color="#993300"><font size=+1>es.
|
|||
containing the bitstring representation and operators. More details about
|
||||
<a href="eoRepresentation.html#real">what is available for real-values
|
||||
here</a>.<br>
|
||||
You then say that you will be handling <b><font face="Arial,Helvetica"><a href="../../doc/html/class_eoreal.html">Real-valued
|
||||
You then say that you will be handling <b><font face="Arial,Helvetica"><a href="../../doc/html/classeo_real.html">Real-valued
|
||||
genotypes</a></font></b>, whose fitness is a double. This makes Indi derive
|
||||
from the <a href="eoProgramming.html#STL">STL class</a> <font color="#993300">vector<double></font></li>
|
||||
|
||||
|
|
@ -191,12 +191,12 @@ vector <b><tt><font color="#993300">v.</font></tt></b></li>
|
|||
<ul>
|
||||
<li>
|
||||
<a href="FirstBitGA.html#init">Bit</a> <b><tt><font color="#990000">rng.flip()</font></tt></b>
|
||||
return a <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eorng.html">random
|
||||
return a <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_rng.html">random
|
||||
boolean</a></font></font></li>
|
||||
|
||||
<li>
|
||||
<a href="FirstRealGA.html#init">Real</a> <b><tt><font color="#990000">rng.uniform()</font></tt></b>
|
||||
returns a <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eorng.html">real
|
||||
returns a <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_rng.html">real
|
||||
value uniformly drawn in [0,1].</a></font></font></li>
|
||||
|
||||
<br> </ul>
|
||||
|
|
@ -209,7 +209,7 @@ individuals are first, and display it. Note that an eoPop has a </font><b><tt><f
|
|||
method, which means that a simple </font><b><tt><font color="#990000">os
|
||||
<< pop </font></tt></b><font color="#000000">streams the </font><b><tt><font color="#990000">pop</font></tt></b><font color="#000000">
|
||||
onto the ostream </font><b><tt><font color="#990000">os</font></tt></b><font color="#000000">.
|
||||
This is true for </font><font color="#FF6600">all objects of of class </font><font color="#000000"><b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoprintable.html">eoPrintable</a></font></font></b>
|
||||
This is true for </font><font color="#FF6600">all objects of of class </font><font color="#000000"><b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_printable.html">eoPrintable</a></font></font></b>
|
||||
(most EO objects) through the method </font><b><tt><font color="#990000">printOn</font></tt></b><font color="#000000">
|
||||
(which is then called by the </font><b><tt><font color="#990000"><<</font></tt></b><font color="#000000">
|
||||
operator).</font></li>
|
||||
|
|
@ -230,8 +230,8 @@ has been chosen as a robust selection, and the generational replacement
|
|||
in the simple algorithm considered here, individuals undergo </font><font color="#CC33CC">crossover</font><font color="#000000">
|
||||
and </font><font color="#CC33CC">mutation</font><font color="#000000">.
|
||||
In EO, these operators are (<a href="eoProgramming.html#functors">functor</a>)
|
||||
objects of class</font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoquadraticop.html">eoQuadOp</a></font></font></b>
|
||||
(binary operator that modifies both its arguments) and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>
|
||||
objects of class</font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_quad_op.html">eoQuadOp</a></font></font></b>
|
||||
(binary operator that modifies both its arguments) and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>
|
||||
(unary operator). These operators are applied in turn to all selected
|
||||
parents, according to user-defined probabilities. These probabilities
|
||||
are defined with all other <a href="#parametres">parameters</a>, and will
|
||||
|
|
@ -242,8 +242,8 @@ corresponding pages</a>, or to their respective documentation pages.</font></li>
|
|||
<br>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="FirstBitGA.html#operators">Bit</a> The crossover <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eobincrossover.html">eo1PtBitXover</a></font></font></b>
|
||||
is the standard <font color="#CC33CC">1-point crossover</font>, and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eobinmutation.html">eoBitMutation</a></font></font></b>
|
||||
<a href="FirstBitGA.html#operators">Bit</a> The crossover <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo1_pt_bit_crossover.html">eo1PtBitXover</a></font></font></b>
|
||||
is the standard <font color="#CC33CC">1-point crossover</font>, and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_bit_mutation.html">eoBitMutation</a></font></font></b>
|
||||
is the standard <font color="#FF6600">bit-flip mutation</font> that randomly
|
||||
flips all bits with a given probability <b><tt>P_MUT_PER_BIT.</tt></b></li>
|
||||
|
||||
|
|
@ -259,10 +259,10 @@ bit, which is specific of the bit-flip mutation. Hence, to run the
|
|||
same algorithm as Goldberg's SGA, the mutation probability (at individual
|
||||
level) is 1, and the probability of flipping each bit is <b><tt>P_MUT_PER_BIT.</tt></b>
|
||||
<li>
|
||||
<a href="FirstRealGA.html#operators">Real</a> The crossover <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eosegmentcrossover.html">eoSegmentCrossover</a></font></font></b>
|
||||
<a href="FirstRealGA.html#operators">Real</a> The crossover <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_segment_crossover.html">eoSegmentCrossover</a></font></font></b>
|
||||
is the standard <font color="#CC33CC">segment crossover</font> for real-valued
|
||||
vectors, that chooses a point randomly on the segment between both parents
|
||||
(also termed <font color="#CC33CC">BLX-0</font>). <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eouniformmutation.html">eoUniformMutation</a></font></font></b>
|
||||
(also termed <font color="#CC33CC">BLX-0</font>). <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_uniform_mutation.html">eoUniformMutation</a></font></font></b>
|
||||
is the <font color="#CC33CC">uniform mutation</font> for real-valued vectors
|
||||
that chooses a new value for each variable uniformly on an interval centered
|
||||
on the parent value. The width of the interval is an <font color="#FF6600">internal
|
||||
|
|
@ -275,7 +275,7 @@ parameter</font> of the object, here called <b><tt>EPSILON</tt></b>.</li>
|
|||
Specify a </font><font color="#3366FF">maximum number of generations</font><font color="#000000">
|
||||
to run (<a href="FirstBitGA.html#stop">Bit</a> - <a href="FirstRealGA.html#stop">Real</a>):
|
||||
the simplest of all stopping criteria at the moment, using an object of
|
||||
a sub-class of class </font><b><font face="Arial,Helvetica"><font color="#3366FF"><font size=+1><a href="../../doc/html/class_eocontinue.html">eoContinue</a></font></font></font></b><font color="#000000">.</font></li>
|
||||
a sub-class of class </font><b><font face="Arial,Helvetica"><font color="#3366FF"><font size=+1><a href="../../doc/html/classeo_continue.html">eoContinue</a></font></font></font></b><font color="#000000">.</font></li>
|
||||
|
||||
<br>
|
||||
<li>
|
||||
|
|
@ -388,7 +388,7 @@ give bad results!</li>
|
|||
select;</font></tt></b></ul>
|
||||
Note that all these classes of eoObjects are derived from the abstract
|
||||
class
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoselectone.html">eoSelectOne.</a></font></font></b>
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_select_one.html">eoSelectOne.</a></font></font></b>
|
||||
To find out exactly how each procedure selects the individuals, read the
|
||||
corresponding <a href="eoEngine.html#selection">component-based page</a>.
|
||||
<p>
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@ on a <a href="FirstBitEA.html#init">boolean generator</a> or a <a href="FirstRea
|
|||
generator</a> -see <a href="../../doc/html/class_random_generator.html">random_generators.h</a>)
|
||||
that is then used in the constructor of the population to build the individuals.
|
||||
You can also use different initializers and call them in turn through the
|
||||
call to <a href="../../doc/html/class_eopop.html#a2">pop.append()</a> function
|
||||
call to <a href="../../doc/html/classeo_pop.html#a2">pop.append()</a> function
|
||||
(see <a href="#exercise2">Exercise 2</a>).</font></li>
|
||||
|
||||
<br>
|
||||
|
|
@ -133,10 +133,10 @@ choosing among them according to
|
|||
rates.</font></b><font color="#CC33CC"> </font><font color="#000000">The
|
||||
class </font><font color="#CC33CC"><b>eoPropCombinedxxxOp</b>,
|
||||
</font><font color="#000000">where
|
||||
xxx is either Mon (for mutations, of class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b></font><font color="#CC33CC">)</font><font color="#000000">
|
||||
or Quad (for crossovers, of class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoquadraticop.html">eoQuadOp</a></font></font></b>),
|
||||
xxx is either Mon (for mutations, of class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b></font><font color="#CC33CC">)</font><font color="#000000">
|
||||
or Quad (for crossovers, of class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_quad_op.html">eoQuadOp</a></font></font></b>),
|
||||
is derived from the corresponding eoxxxOp class. When applying the eoPropCombinedxxxOp,
|
||||
one of the eoxxxOp it contains is chosen by a <a href="../../doc/html/class_eorng.html#a12">roulette
|
||||
one of the eoxxxOp it contains is chosen by a <a href="../../doc/html/classeo_rng.html#a12">roulette
|
||||
wheel,</a> according to their respective rates, and is applied to the arguments.
|
||||
For more details on these classes, go to the <a href="eoOperators.html#crossover">algorithm-based
|
||||
corresponding pages</a>, or to their respective documentation pages.</font></li>
|
||||
|
|
@ -240,7 +240,7 @@ to select one individual from a population, its <b><tt><font color="#660000">ope
|
|||
returning a single individual) into an object of the <font color="#FF6600">eoSelectPerc</font>
|
||||
(perc stands for percentage) which allows to select a ... percentage of
|
||||
a population (his <b><tt><font color="#660000">operator()</font></tt></b>
|
||||
returns a population). This was done internally in the <a href="../../doc/html/class_eosga.html#a0">constructor
|
||||
returns a population). This was done internally in the <a href="../../doc/html/classeo_s_g_a.html#a0">constructor
|
||||
of eoSGA</a> - see lesson1.</ul>
|
||||
|
||||
<hr WIDTH="100%"><a NAME="Exercise1"></a><b><font size=+2><font color="#000099">Exercise
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ you want to handle (i.e. i</font><b><tt><font color="#660000">integer,
|
|||
double, yourPrivateClass</font></tt></b><font color="#000000">, ...). In
|
||||
this lesson, we will not go into details: e.g. we will not tell you that
|
||||
the
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eovalueparam.html">eoValueParam</a></font></font></b>
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_value_param.html">eoValueParam</a></font></font></b>
|
||||
is actually a templatized sub-class of abstract class eoParam (oops, I
|
||||
said it!), nor will we deal with parameters outside their use from an eoParser.
|
||||
See the parameter section of the Component-Based tutorial, or wait until
|
||||
|
|
@ -267,7 +267,7 @@ class. </font><b><tt><font color="#3366FF">eoState</font></tt></b><font color="#
|
|||
objects maintain references to </font><b><tt><font color="#660000">eoObjects</font></tt></b><font color="#000000">
|
||||
that have both an input method (</font><b><tt><font color="#3366FF">readFrom</font></tt></b><font color="#000000">)
|
||||
and an output method (</font><b><tt><font color="#3366FF">printOn</font></tt></b><font color="#000000">),
|
||||
i.e. that derive from the base class </font><b><font face="Arial,Helvetica"><font color="#660000"><font size=+1><a href="../../doc/html/class_eopersistent.html">eoPersistent</a></font></font></font></b><font color="#000000">.
|
||||
i.e. that derive from the base class </font><b><font face="Arial,Helvetica"><font color="#660000"><font size=+1><a href="../../doc/html/classeo_persistent.html">eoPersistent</a></font></font></font></b><font color="#000000">.
|
||||
You must first </font><b><tt><font color="#3366FF"><a href="SecondBitEA.html#register">register</a></font></tt></b><font color="#000000">
|
||||
object into a state, and can then save them to a (text) file, and later
|
||||
read them from that file using the </font><b><tt><font color="#3366FF">load</font></tt></b><font color="#000000">
|
||||
|
|
@ -319,7 +319,7 @@ compute whatever is needed over that population. </font><b><tt><font color="#336
|
|||
objects are </font><font color="#FF6600">templatized</font><font color="#000000">
|
||||
over the type of what they compute (e.g. </font><b><tt><font color="#660000">double</font></tt></b><font color="#000000">,
|
||||
or </font><b><tt><font color="#660000">pair<double></font></tt></b><font color="#000000">,
|
||||
or ...). But looking at the <a href="../../doc/html/class_eostat.html">inheritance
|
||||
or ...). But looking at the <a href="../../doc/html/classeo_stat.html">inheritance
|
||||
diagram</a> of the </font><b><tt><font color="#3366FF">eoStat</font></tt></b><font color="#000000">
|
||||
class, you find that </font><b><tt><font color="#3366FF">eoStat</font></tt></b><font color="#000000">
|
||||
objects are also </font><b><tt><font color="#3366FF">eoValueParam</font></tt></b><font color="#000000">
|
||||
|
|
|
|||
|
|
@ -87,29 +87,29 @@ the genotype argument has been modified or not.
|
|||
<ul>
|
||||
<li>
|
||||
<b><font color="#FF0000">Base classes</font></b>: all variation operators
|
||||
in EO derive from the base (pure abstract) class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoop.html">eoOp</a></font></font></b>
|
||||
in EO derive from the base (pure abstract) class <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_op.html">eoOp</a></font></font></b>
|
||||
(as usual, click to see the inheritance diagram). Four (also abstract)
|
||||
classes derive from <b><font color="#CC33CC">eoOp</font></b>, namely <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>
|
||||
(for <a href="#mutation">mutations</a>), <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eobinop.html">eoBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoquadop.html">eoQuadOp</a></font></font></b>
|
||||
(for <a href="#crossover">crossover</a>) and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eogenop.html">eoGenOp</a></font></font></b>
|
||||
classes derive from <b><font color="#CC33CC">eoOp</font></b>, namely <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>
|
||||
(for <a href="#mutation">mutations</a>), <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_bin_op.html">eoBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_quad_op.html">eoQuadOp</a></font></font></b>
|
||||
(for <a href="#crossover">crossover</a>) and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_gen_op.html">eoGenOp</a></font></font></b>
|
||||
for <a href="#general">all other operators</a>.</li>
|
||||
|
||||
<li>
|
||||
<b><font color="#FF0000">Combined classes</font></b>: those classes combine
|
||||
variation operators, and are variation operators by themselves: the simple
|
||||
variation operators can be combined into the corresponding <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoproportionalcombinedmonop.html">eoProportionalCombinedMonOp</a></font></font></b>,
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoproportionalcombinedbinop.html">eoProportionalCombinedBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eoproportionalcombinedquadop.html">eoProportionalCombinedQuadOp</a></font></font></b>.
|
||||
variation operators can be combined into the corresponding <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_prop_combined_mon_op.html">eoProportionalCombinedMonOp</a></font></font></b>,
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_prop_combined_bin_op.html">eoProportionalCombinedBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_pro_combined_quad_op.html">eoProportionalCombinedQuadOp</a></font></font></b>.
|
||||
The general operators <b><font color="#CC33CC">eoGenOp</font></b> can be
|
||||
combined into some <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/class_eoopcontainer.html">eoOpContainer</a></font></font></font></b>,
|
||||
abstract class with two implementations, <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/class_eoproportionalopcontainer.html">eoProportionalOp</a></font></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/class_eosequentialopcontainer.html">eoSequentialOp</a></font></font></font></b></li>
|
||||
combined into some <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/classeo_op_container.html">eoOpContainer</a></font></font></font></b>,
|
||||
abstract class with two implementations, <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/classeo_proportional_op.html">eoProportionalOp</a></font></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font color="#000000"><font size=+1><a href="../../doc/html/classeo_sequential_op.html">eoSequentialOp</a></font></font></font></b></li>
|
||||
|
||||
<li>
|
||||
<b><font color="#FF0000">Related classes</font></b>: General operators
|
||||
of class <b><font color="#CC33CC">eoGenOp</font></b> can only be used through
|
||||
the <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eopopulator.html">eoPopulator</a></font></font></b>
|
||||
the <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_populator.html">eoPopulator</a></font></font></b>
|
||||
class.</li>
|
||||
</ul>
|
||||
|
||||
|
|
@ -122,8 +122,8 @@ former type (2 --> 2) is termed quadratic crossover operator, and is implemanted
|
|||
in the <b><font color="#CC33CC">eoQuadOp</font></b> class; the latter type
|
||||
(2 --> 1) is termed binary operator and is implemanted in class <b><font color="#CC33CC">eoBinOp</font></b>.
|
||||
Both classes are, as usual, templatized by the type of individual they
|
||||
can handle (see documentation for <b><font face="Arial,Helvetica"><font size=+1><a href="doc/html/class_eobinop.html">eoBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="doc/html/class_eoquadop.html">eoQuadOp</a></font></font></b>).
|
||||
can handle (see documentation for <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_bin_op.html">eoBinOp</a></font></font></b>
|
||||
and <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_quad_op.html">eoQuadOp</a></font></font></b>).
|
||||
<p><b><font color="#FF0000">Note:</font></b> Whereas it is straightforward
|
||||
to create a binary crossover operator from a quadratic one (by discarding
|
||||
the changes on the second parent), the reverse might prove impossible (imagine
|
||||
|
|
@ -207,7 +207,7 @@ operators: </font></font><font color="#FF0000"><font size=+2>Mutation</font></fo
|
|||
<br>Mutation operators modify one single individual. The corresponding
|
||||
EO class is called <b><font color="#CC33CC">eoMonOp</font></b>. and it
|
||||
si as usual templatized by the type of individual it can handle (see documentation
|
||||
for <b><font face="Arial,Helvetica"><font size=+1><a href="doc/html/class_eomonop.html">eoMonOp</a></font></font></b>).
|
||||
for <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>).
|
||||
<p><b><font color="#FF0000">Interfaces</font></b>:
|
||||
<br>The general approach in EO about simple variation operators is to perform
|
||||
<b><font color="#FF6600">in-place
|
||||
|
|
@ -280,7 +280,7 @@ ways to get the parents they will involve, e.g. they can use a different
|
|||
selector for each of the parents they need to select.
|
||||
<p>The corresponding EO class is called <b><font color="#CC33CC">eoGenOp</font></b>.
|
||||
and it is as usual templatized by the type of individual it can handle
|
||||
(see documentation for <b><font face="Arial,Helvetica"><font size=+1><a href="doc/html/class_eomonop.html">eoGenOp</a></font></font></b>
|
||||
(see documentation for <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoGenOp</a></font></font></b>
|
||||
:-)
|
||||
<p><a NAME="interface"></a><b><font color="#FF0000">Interface</font></b>:
|
||||
<br>All the work a general operator is done within the <b><tt><font color="#993300">apply()</font></tt></b>
|
||||
|
|
@ -504,7 +504,7 @@ mainly behaves like an <b><font color="#FF6600">iterator</font></b> over
|
|||
a population (hence the name, <b><font color="#FF6600">Popul</font></b>ation-Iter<b><font color="#FF6600">ator</font></b>).
|
||||
<p><a NAME="populator_interface"></a>The <b><font color="#FF6600">basic
|
||||
interface</font></b> of an <b><font color="#999900">eoPopulator</font></b>
|
||||
(see also <a href="../../doc/html/class_eogenop.html">the documentation</a>,
|
||||
(see also <a href="../../doc/html/classeo_gen_op.html">the documentation</a>,
|
||||
of course) is the following:
|
||||
<ul>
|
||||
<li>
|
||||
|
|
|
|||
|
|
@ -71,12 +71,12 @@ a hierarchy of functions with defaults behaviors and specialized sub-functions</
|
|||
<li>
|
||||
...</li>
|
||||
</ul>
|
||||
Functors are so intimately linked to EO that a base class (<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eofunctorbase.html">eoFunctorBase</a></font></font></b>)
|
||||
Functors are so intimately linked to EO that a base class (<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_functor_base.html">eoFunctorBase</a></font></font></b>)
|
||||
has been designed to hold all functors. This base class is itself divided
|
||||
into three derived class. These classes tell you immediately what kind
|
||||
of arguments the <b><tt><font color="#993300">operator()</font></tt></b>
|
||||
method requires and what kind of result it produces. See <a href="#notations">EO
|
||||
conventions</a>, and the <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eofunctorbase.html">inheritance
|
||||
conventions</a>, and the <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_functor_base.html">inheritance
|
||||
diagram of class eoFunctorBase</a>.</font></font></b>
|
||||
<br>For a more complete introduction to functors, with detailed discussion,
|
||||
go to the <a href="http://www.sgi.com/tech/stl/functors.html">STL
|
||||
|
|
@ -118,7 +118,7 @@ method.</font>
|
|||
is for arity-zero functors, i.e. their </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method does not require any argument. It has a single template parameter,
|
||||
the return type of the </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonitor.html">eoMonitor</a></font></font></b> <font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_monitor.html">eoMonitor</a></font></font></b> <font color="#000000">
|
||||
are </font><b><tt><font color="#FF6600">eoF</font></tt></b><font color="#000000">'s
|
||||
that return an </font><b><tt><font color="#993300">eoMonitor &</font></tt></b><font color="#000000">.</font></li>
|
||||
|
||||
|
|
@ -127,7 +127,7 @@ that return an </font><b><tt><font color="#993300">eoMonitor &</font></tt></
|
|||
is for unary functors, i.e. their </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method requires one argument. It has two template parameters, the type
|
||||
of the argument and the return type of the </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
are </font><b><tt><font color="#FF6600">eoUF</font></tt></b><font color="#000000">'s
|
||||
that take as argument an </font><b><tt><font color="#993300">EOT &</font></tt></b><font color="#000000">
|
||||
and return </font><b><tt><font color="#993300">void</font></tt></b><font color="#000000">
|
||||
|
|
@ -138,14 +138,14 @@ and return </font><b><tt><font color="#993300">void</font></tt></b><font color="
|
|||
is for binary functors, i.e. their </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method requires two arguments. It has three template parameters, the types
|
||||
of the arguments and the return type of the </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eobinop.html">eoBinOp</a></font></font></b>'s<font color="#000000">
|
||||
method. For instance, </font> <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_bin_op.html">eoBinOp</a></font></font></b>'s<font color="#000000">
|
||||
are </font><b><tt><font color="#FF6600">eoBF</font></tt></b><font color="#000000">'s
|
||||
that take as arguments a </font><b><tt><font color="#993300">const EOT
|
||||
&</font></tt></b><font color="#000000"> and an </font><b><tt><font color="#993300">EOT
|
||||
&</font></tt></b><font color="#000000">, and return </font><b><tt><font color="#993300">void</font></tt></b><font color="#000000">
|
||||
.</font></li>
|
||||
</ul>
|
||||
<font color="#000000">Now go back to the </font><b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eofunctorbase.html">inheritance
|
||||
<font color="#000000">Now go back to the </font><b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_functor_base.html">inheritance
|
||||
diagram of class eoFunctorBase</a></font></font></b><font color="#000000">,
|
||||
and guess the interface for all functors!</font>
|
||||
<p><b><font color="#FF0000">Note</font></b><font color="#000000">: for
|
||||
|
|
@ -153,7 +153,7 @@ obvious simplicity reasons, we very often omit the reference to the </font><b><t
|
|||
e.g. when we say above:</font>
|
||||
<ul>
|
||||
<li>
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
are </font><b><tt><font color="#FF6600">eoUF</font></tt></b><font color="#000000">'s
|
||||
that take as argument an </font><b><tt><font color="#993300">EOT &</font></tt></b><font color="#000000">
|
||||
and return </font><b><tt><font color="#993300">void</font></tt></b></li>
|
||||
|
|
@ -161,7 +161,7 @@ and return </font><b><tt><font color="#993300">void</font></tt></b></li>
|
|||
<font color="#000000">it actually means</font>
|
||||
<ul>
|
||||
<li>
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
<b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>'s<font color="#000000">
|
||||
are </font><b><tt><font color="#FF6600">eoUF</font></tt></b><font color="#000000">'s,
|
||||
their </font><b><tt><font color="#993300">operator()</font></tt></b><font color="#000000">
|
||||
method takes as argument an </font><b><tt><font color="#993300">EOT &</font></tt></b><font color="#000000">
|
||||
|
|
@ -334,8 +334,8 @@ related number, e.g. calling time(0), as done for instance in <a href="SecondBit
|
|||
As RNGs produce, by definition, integers that are uniformly distributed
|
||||
between 0 and some maximal number, EO provides you with random numbers
|
||||
following <b><font color="#FF6600">different probability distribution</font></b>
|
||||
(e.g. floating point following <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eorng.html#a8">normal
|
||||
distribution</a></font></font>). See the <a href="../../doc/html/class_eorng.html">complete
|
||||
(e.g. floating point following <font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_rng.html#a8">normal
|
||||
distribution</a></font></font>). See the <a href="../../doc/html/classeo_rng.html">complete
|
||||
list of RNG primitives</a>.
|
||||
<p>EO also provides <a href="../../doc/html/rnd_generators_h-source.html">random_generators</a>
|
||||
that can be used in STL call to generate series of random numbers, as in
|
||||
|
|
@ -388,8 +388,8 @@ above).</li>
|
|||
The name of the EO template should be EOT. This allows quick understanding
|
||||
of the inheritance diagrams for <a href="#functors">functors</a>. and immediate
|
||||
perception of the arguments and return types of the functors oeprator()
|
||||
method (as in <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eomonop.html">eoMonOp</a></font></font></b>
|
||||
or <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/class_eobinop.html">eoBinOp</a></font></font></b>).</li>
|
||||
method (as in <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_mon_op.html">eoMonOp</a></font></font></b>
|
||||
or <b><font face="Arial,Helvetica"><font size=+1><a href="../../doc/html/classeo_bin_op.html">eoBinOp</a></font></font></b>).</li>
|
||||
|
||||
<br>
|
||||
<li>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue