213 lines
19 KiB
TeX
213 lines
19 KiB
TeX
\hypertarget{classedo_algo_adaptive}{}\doxysection{edo\+Algo\+Adaptive$<$ D $>$ Class Template Reference}
|
|
\label{classedo_algo_adaptive}\index{edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$edo\+Algo\+Adaptive.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for edo\+Algo\+Adaptive$<$ D $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=318pt]{classedo_algo_adaptive__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for edo\+Algo\+Adaptive$<$ D $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classedo_algo_adaptive__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}\label{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}}
|
|
typedef D\+::\+E\+O\+Type \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}}
|
|
\begin{DoxyCompactList}\small\item\em Alias for the type E\+OT. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a44cc6874ab34229b932b700ee6b3230c}\label{classedo_algo_adaptive_a44cc6874ab34229b932b700ee6b3230c}}
|
|
typedef E\+O\+Type\+::\+Atom\+Type \mbox{\hyperlink{classedo_algo_adaptive_a44cc6874ab34229b932b700ee6b3230c}{Atom\+Type}}
|
|
\begin{DoxyCompactList}\small\item\em Alias for the atom type. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a2e4e2cb9c953cfd07453b94e46db62db}\label{classedo_algo_adaptive_a2e4e2cb9c953cfd07453b94e46db62db}}
|
|
typedef E\+O\+Type\+::\+Fitness \mbox{\hyperlink{classedo_algo_adaptive_a2e4e2cb9c953cfd07453b94e46db62db}{Fitness}}
|
|
\begin{DoxyCompactList}\small\item\em Alias for the fitness. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classedo_algo_adaptive_af17307e014c6cdc238d98402385b33a3}{edo\+Algo\+Adaptive}} (D \&distrib, \mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&evaluator, \mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&selector, \mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&estimator, \mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&estimator\+\_\+init, \mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&sampler, \mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&replacor, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&pop\+\_\+continuator, \mbox{\hyperlink{classedo_continue}{edo\+Continue}}$<$ D $>$ \&distribution\+\_\+continuator)
|
|
\item
|
|
\mbox{\hyperlink{classedo_algo_adaptive_a86bda47984012eb50fb7ec38e15d4695}{edo\+Algo\+Adaptive}} (D \&distrib, \mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&evaluator, \mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&selector, \mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&estimator, \mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&sampler, \mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&replacor, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&pop\+\_\+continuator, \mbox{\hyperlink{classedo_continue}{edo\+Continue}}$<$ D $>$ \&distribution\+\_\+continuator)
|
|
\item
|
|
\mbox{\hyperlink{classedo_algo_adaptive_a7c6122b37e5bf13445caa532fba8ba47}{edo\+Algo\+Adaptive}} (D \&distrib, \mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&evaluator, \mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&selector, \mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&estimator, \mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&sampler, \mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&replacor, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&pop\+\_\+continuator)
|
|
\begin{DoxyCompactList}\small\item\em constructor without an \mbox{\hyperlink{classedo_continue}{edo\+Continue}} \end{DoxyCompactList}\item
|
|
void \mbox{\hyperlink{classedo_algo_adaptive_acc0fa6c131f85fe91fe308e24331f4d2}{operator()}} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&pop)
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Protected Attributes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a500037bb8893febc71ce50cbec3abd91}\label{classedo_algo_adaptive_a500037bb8893febc71ce50cbec3abd91}}
|
|
D \& \mbox{\hyperlink{classedo_algo_adaptive_a500037bb8893febc71ce50cbec3abd91}{\+\_\+distrib}}
|
|
\begin{DoxyCompactList}\small\item\em The distribution that you want to update. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_acc3cb7a890a2a689d511260ca460098d}\label{classedo_algo_adaptive_acc3cb7a890a2a689d511260ca460098d}}
|
|
\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_acc3cb7a890a2a689d511260ca460098d}{\+\_\+evaluator}}
|
|
\begin{DoxyCompactList}\small\item\em A full evaluation function. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a931d69d30a865cebf4924181421ba927}\label{classedo_algo_adaptive_a931d69d30a865cebf4924181421ba927}}
|
|
\mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a931d69d30a865cebf4924181421ba927}{\+\_\+selector}}
|
|
\begin{DoxyCompactList}\small\item\em A E\+O\+Type selector. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a17c59900e0d476f2e305afee2478b90e}\label{classedo_algo_adaptive_a17c59900e0d476f2e305afee2478b90e}}
|
|
\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a17c59900e0d476f2e305afee2478b90e}{\+\_\+estimator}}
|
|
\begin{DoxyCompactList}\small\item\em A E\+O\+Type estimator. It is going to estimate distribution parameters. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a6e35e4fe0ec37d08879e0bc5b03c2966}\label{classedo_algo_adaptive_a6e35e4fe0ec37d08879e0bc5b03c2966}}
|
|
\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a6e35e4fe0ec37d08879e0bc5b03c2966}{\+\_\+estimator\+\_\+init}}
|
|
\begin{DoxyCompactList}\small\item\em A E\+O\+Type estimator. Called before the main loop. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a09f16fb19ac498bb6a6771e484e050b6}\label{classedo_algo_adaptive_a09f16fb19ac498bb6a6771e484e050b6}}
|
|
\mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a09f16fb19ac498bb6a6771e484e050b6}{\+\_\+sampler}}
|
|
\begin{DoxyCompactList}\small\item\em A D sampler. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a9efb33ecce9d50fd959d9e585c293dc1}\label{classedo_algo_adaptive_a9efb33ecce9d50fd959d9e585c293dc1}}
|
|
\mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a9efb33ecce9d50fd959d9e585c293dc1}{\+\_\+replacor}}
|
|
\begin{DoxyCompactList}\small\item\em A E\+O\+Type replacor. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a2b956009cad4c68fafc2491880c2eb2a}\label{classedo_algo_adaptive_a2b956009cad4c68fafc2491880c2eb2a}}
|
|
\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_a2b956009cad4c68fafc2491880c2eb2a}{\+\_\+pop\+\_\+continuator}}
|
|
\begin{DoxyCompactList}\small\item\em A E\+O\+Type population continuator. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_ade8cd8abb0e656e6f7e22ec95e54f730}\label{classedo_algo_adaptive_ade8cd8abb0e656e6f7e22ec95e54f730}}
|
|
\mbox{\hyperlink{classedo_dummy_continue}{edo\+Dummy\+Continue}}$<$ D $>$ \mbox{\hyperlink{classedo_algo_adaptive_ade8cd8abb0e656e6f7e22ec95e54f730}{\+\_\+dummy\+\_\+continue}}
|
|
\begin{DoxyCompactList}\small\item\em A D continuator that always return true. \end{DoxyCompactList}\item
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_ae1fbf682b91f061fbff18a270f9128c3}\label{classedo_algo_adaptive_ae1fbf682b91f061fbff18a270f9128c3}}
|
|
\mbox{\hyperlink{classedo_continue}{edo\+Continue}}$<$ D $>$ \& \mbox{\hyperlink{classedo_algo_adaptive_ae1fbf682b91f061fbff18a270f9128c3}{\+\_\+distribution\+\_\+continuator}}
|
|
\begin{DoxyCompactList}\small\item\em A D continuator. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
\doxysubsection*{Additional Inherited Members}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$typename D$>$\newline
|
|
class edo\+Algo\+Adaptive$<$ D $>$}
|
|
|
|
A generic stochastic search template for algorithms that need a distribution parameter.
|
|
|
|
An adaptive algorithm will directly updates a distribution, it must thus be instanciated with an \mbox{\hyperlink{classedo_distrib}{edo\+Distrib}} at hand. Thus, this distribution object should be instanciated appart. The reference to this distribution is generally also needed by at least one of the algorithm\textquotesingle{}s operator, generally for algorithms that shares the same algorithms across operators and/or iterations.
|
|
|
|
If you no operator needs to update the distribution, then it is simpler to use an \mbox{\hyperlink{classedo_algo_stateless}{edo\+Algo\+Stateless}} .
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_af17307e014c6cdc238d98402385b33a3}\label{classedo_algo_adaptive_af17307e014c6cdc238d98402385b33a3}}
|
|
\index{edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}!edoAlgoAdaptive@{edoAlgoAdaptive}}
|
|
\index{edoAlgoAdaptive@{edoAlgoAdaptive}!edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}}
|
|
\doxysubsubsection{\texorpdfstring{edoAlgoAdaptive()}{edoAlgoAdaptive()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
|
|
{\footnotesize\ttfamily template$<$typename D $>$ \\
|
|
\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}}$<$ D $>$\+::\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}} (\begin{DoxyParamCaption}\item[{D \&}]{distrib, }\item[{\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{evaluator, }\item[{\mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{selector, }\item[{\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&}]{estimator, }\item[{\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&}]{estimator\+\_\+init, }\item[{\mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&}]{sampler, }\item[{\mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{replacor, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{pop\+\_\+continuator, }\item[{\mbox{\hyperlink{classedo_continue}{edo\+Continue}}$<$ D $>$ \&}]{distribution\+\_\+continuator }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Takes all operators.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em distrib} & A distribution to use, if you want to update this parameter (e.\+g. C\+M\+A-\/\+ES) instead of replacing it (e.\+g. an E\+DA) \\
|
|
\hline
|
|
{\em evaluator} & Evaluate a population \\
|
|
\hline
|
|
{\em selector} & Selection of the best candidate solutions in the population \\
|
|
\hline
|
|
{\em estimator} & Estimation of the distribution parameters \\
|
|
\hline
|
|
{\em estimator\+\_\+init} & Estimation of the distribution parameters, called before the main loop. \\
|
|
\hline
|
|
{\em sampler} & Generate feasible solutions using the distribution \\
|
|
\hline
|
|
{\em replacor} & Replace old solutions by new ones \\
|
|
\hline
|
|
{\em pop\+\_\+continuator} & Stopping criterion based on the population features \\
|
|
\hline
|
|
{\em distribution\+\_\+continuator} & Stopping criterion based on the distribution features \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a86bda47984012eb50fb7ec38e15d4695}\label{classedo_algo_adaptive_a86bda47984012eb50fb7ec38e15d4695}}
|
|
\index{edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}!edoAlgoAdaptive@{edoAlgoAdaptive}}
|
|
\index{edoAlgoAdaptive@{edoAlgoAdaptive}!edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}}
|
|
\doxysubsubsection{\texorpdfstring{edoAlgoAdaptive()}{edoAlgoAdaptive()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
|
|
{\footnotesize\ttfamily template$<$typename D $>$ \\
|
|
\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}}$<$ D $>$\+::\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}} (\begin{DoxyParamCaption}\item[{D \&}]{distrib, }\item[{\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{evaluator, }\item[{\mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{selector, }\item[{\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&}]{estimator, }\item[{\mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&}]{sampler, }\item[{\mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{replacor, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{pop\+\_\+continuator, }\item[{\mbox{\hyperlink{classedo_continue}{edo\+Continue}}$<$ D $>$ \&}]{distribution\+\_\+continuator }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Without the initialization estimator (set the same estimator everywhere).
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em distrib} & A distribution to use, if you want to update this parameter (e.\+g\+MA-\/ES) instead of replacing it (e.\+g. an E\+DA) \\
|
|
\hline
|
|
{\em evaluator} & Evaluate a population \\
|
|
\hline
|
|
{\em selector} & Selection of the best candidate solutions in the population \\
|
|
\hline
|
|
{\em estimator} & Estimation of the distribution parameters \\
|
|
\hline
|
|
{\em sampler} & Generate feasible solutions using the distribution \\
|
|
\hline
|
|
{\em replacor} & Replace old solutions by new ones \\
|
|
\hline
|
|
{\em pop\+\_\+continuator} & Stopping criterion based on the population features \\
|
|
\hline
|
|
{\em distribution\+\_\+continuator} & Stopping criterion based on the distribution features \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_a7c6122b37e5bf13445caa532fba8ba47}\label{classedo_algo_adaptive_a7c6122b37e5bf13445caa532fba8ba47}}
|
|
\index{edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}!edoAlgoAdaptive@{edoAlgoAdaptive}}
|
|
\index{edoAlgoAdaptive@{edoAlgoAdaptive}!edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}}
|
|
\doxysubsubsection{\texorpdfstring{edoAlgoAdaptive()}{edoAlgoAdaptive()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
|
|
{\footnotesize\ttfamily template$<$typename D $>$ \\
|
|
\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}}$<$ D $>$\+::\mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}} (\begin{DoxyParamCaption}\item[{D \&}]{distrib, }\item[{\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{evaluator, }\item[{\mbox{\hyperlink{classeo_select}{eo\+Select}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{selector, }\item[{\mbox{\hyperlink{classedo_estimator}{edo\+Estimator}}$<$ D $>$ \&}]{estimator, }\item[{\mbox{\hyperlink{classedo_sampler}{edo\+Sampler}}$<$ D $>$ \&}]{sampler, }\item[{\mbox{\hyperlink{classeo_replacement}{eo\+Replacement}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{replacor, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{pop\+\_\+continuator }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
constructor without an \mbox{\hyperlink{classedo_continue}{edo\+Continue}}
|
|
|
|
Takes algo operators, all are mandatory
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em distrib} & A distribution to use, if you want to update this parameter (e.\+g\+MA-\/ES) instead of replacing it (e.\+g. an E\+DA) \\
|
|
\hline
|
|
{\em evaluator} & Evaluate a population \\
|
|
\hline
|
|
{\em selector} & Selection of the best candidate solutions in the population \\
|
|
\hline
|
|
{\em estimator} & Estimation of the distribution parameters \\
|
|
\hline
|
|
{\em sampler} & Generate feasible solutions using the distribution \\
|
|
\hline
|
|
{\em replacor} & Replace old solutions by new ones \\
|
|
\hline
|
|
{\em pop\+\_\+continuator} & Stopping criterion based on the population features \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classedo_algo_adaptive_acc0fa6c131f85fe91fe308e24331f4d2}\label{classedo_algo_adaptive_acc0fa6c131f85fe91fe308e24331f4d2}}
|
|
\index{edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!edoAlgoAdaptive$<$ D $>$@{edoAlgoAdaptive$<$ D $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}}
|
|
{\footnotesize\ttfamily template$<$typename D $>$ \\
|
|
void \mbox{\hyperlink{classedo_algo_adaptive}{edo\+Algo\+Adaptive}}$<$ D $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ \mbox{\hyperlink{classedo_algo_adaptive_a440978fc8e1a2735a22401fe4a03d43d}{E\+O\+Type}} $>$ \&}]{pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Call the algorithm
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em pop} & the population of candidate solutions \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
void
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ eo\+Pop$<$ D\+::\+E\+O\+Type $>$ \&, void $>$}}.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
edo/src/edo\+Algo\+Adaptive.\+h\end{DoxyCompactItemize}
|