143 lines
10 KiB
TeX
143 lines
10 KiB
TeX
\hypertarget{classeo_one_to_one_breeder}{}\doxysection{eo\+One\+To\+One\+Breeder$<$ E\+OT $>$ Class Template Reference}
|
|
\label{classeo_one_to_one_breeder}\index{eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$eo\+One\+To\+One\+Breeder.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for eo\+One\+To\+One\+Breeder$<$ E\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=342pt]{classeo_one_to_one_breeder__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for eo\+One\+To\+One\+Breeder$<$ E\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=342pt]{classeo_one_to_one_breeder__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}{eo\+One\+To\+One\+Breeder}} (\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+op, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+eval, double \+\_\+p\+Replace=1.\+0, \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}} \+\_\+how\+Many=\mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}(1.\+0))
|
|
\item
|
|
void \mbox{\hyperlink{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}{operator()}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+parents, \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+offspring)
|
|
\item
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}\label{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}}
|
|
virtual std\+::string \mbox{\hyperlink{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}{class\+Name}} () const
|
|
\begin{DoxyCompactList}\small\item\em The class name. \end{DoxyCompactList}\item
|
|
\mbox{\hyperlink{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}{eo\+One\+To\+One\+Breeder}} (\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+op, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+eval, double \+\_\+p\+Replace=1.\+0, \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}} \+\_\+how\+Many=\mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}(1.\+0))
|
|
\item
|
|
void \mbox{\hyperlink{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}{operator()}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+parents, \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+offspring)
|
|
\item
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}\label{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}}
|
|
virtual std\+::string \mbox{\hyperlink{classeo_one_to_one_breeder_a5de0d2fad0664084eefc4e00e844cb06}{class\+Name}} () const
|
|
\begin{DoxyCompactList}\small\item\em The class name. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsection*{Additional Inherited Members}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$class E\+OT$>$\newline
|
|
class eo\+One\+To\+One\+Breeder$<$ E\+O\+T $>$}
|
|
|
|
\mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}}\+: transforms a population using
|
|
\begin{DoxyItemize}
|
|
\item an operator that M\+O\+D\+I\+F\+I\+ES only one parent from the populator (though it can use any number aside) and thus generates O\+NE offspring)
|
|
\item a local replacement between the parent and its offspring
|
|
\end{DoxyItemize}
|
|
|
|
Typically, Differential Evolution (Storn and Price 94) and Deb et al\textquotesingle{}s G3 can be built on this
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}\label{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}}
|
|
\index{eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}!eoOneToOneBreeder@{eoOneToOneBreeder}}
|
|
\index{eoOneToOneBreeder@{eoOneToOneBreeder}!eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoOneToOneBreeder()}{eoOneToOneBreeder()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::\mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+op, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+eval, }\item[{double}]{\+\_\+p\+Replace = {\ttfamily 1.0}, }\item[{\mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}}]{\+\_\+how\+Many = {\ttfamily \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}(1.0)} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Ctor\+:
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+op} & a general operator (must M\+O\+D\+I\+FY only O\+NE parent) \\
|
|
\hline
|
|
{\em \+\_\+eval} & an \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}} to evaluate the offspring \\
|
|
\hline
|
|
{\em \+\_\+p\+Replace} & probability that the best of parent/offspring wins \mbox{[}1\mbox{]} \\
|
|
\hline
|
|
{\em \+\_\+how\+Many} & \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}} offpsring to generate \mbox{[}100\%\mbox{]} \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}\label{classeo_one_to_one_breeder_abcf1be7974bae4718ffbffd9391b02cd}}
|
|
\index{eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}!eoOneToOneBreeder@{eoOneToOneBreeder}}
|
|
\index{eoOneToOneBreeder@{eoOneToOneBreeder}!eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoOneToOneBreeder()}{eoOneToOneBreeder()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::\mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+op, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+eval, }\item[{double}]{\+\_\+p\+Replace = {\ttfamily 1.0}, }\item[{\mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}}]{\+\_\+how\+Many = {\ttfamily \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}}(1.0)} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Ctor\+:
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+op} & a general operator (must M\+O\+D\+I\+FY only O\+NE parent) \\
|
|
\hline
|
|
{\em \+\_\+eval} & an \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}} to evaluate the offspring \\
|
|
\hline
|
|
{\em \+\_\+p\+Replace} & probability that the best of parent/offspring wins \mbox{[}1\mbox{]} \\
|
|
\hline
|
|
{\em \+\_\+how\+Many} & \mbox{\hyperlink{classeo_how_many}{eo\+How\+Many}} offpsring to generate \mbox{[}100\%\mbox{]} \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}\label{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}}
|
|
\index{eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+parents, }\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+offspring }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
The breeder\+: iteratively calls the gen\+Op O\+N\+CE on a selective populator after having recorded the parent Then does the replacement
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+parents} & the initial population \\
|
|
\hline
|
|
{\em \+\_\+offspring} & the resulting population (content -\/if any-\/ is lost) \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_b_f_aa03c40b95210569b826df79a2237a0d0}{eo\+B\+F$<$ const eo\+Pop$<$ E\+O\+T $>$ \&, eo\+Pop$<$ E\+O\+T $>$ \&, void $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}\label{classeo_one_to_one_breeder_a763bc424363b0c6c1e7b221d2451756b}}
|
|
\index{eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoOneToOneBreeder$<$ EOT $>$@{eoOneToOneBreeder$<$ EOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_one_to_one_breeder}{eo\+One\+To\+One\+Breeder}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+parents, }\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+offspring }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
The breeder\+: iteratively calls the gen\+Op O\+N\+CE on a selective populator after having recorded the parent Then does the replacement
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+parents} & the initial population \\
|
|
\hline
|
|
{\em \+\_\+offspring} & the resulting population (content -\/if any-\/ is lost) \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_b_f_aa03c40b95210569b826df79a2237a0d0}{eo\+B\+F$<$ const eo\+Pop$<$ E\+O\+T $>$ \&, eo\+Pop$<$ E\+O\+T $>$ \&, void $>$}}.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
deprecated/eo/src/eo\+One\+To\+One\+Breeder.\+h\end{DoxyCompactItemize}
|