\hypertarget{classeo_one_fifth_mutation}{}\doxysection{eo\+One\+Fifth\+Mutation$<$ E\+OT $>$ Class Template Reference} \label{classeo_one_fifth_mutation}\index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} {\ttfamily \#include $<$eo\+Normal\+Mutation.\+h$>$} Inheritance diagram for eo\+One\+Fifth\+Mutation$<$ E\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classeo_one_fifth_mutation__inherit__graph} \end{center} \end{figure} Collaboration diagram for eo\+One\+Fifth\+Mutation$<$ E\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classeo_one_fifth_mutation__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_one_fifth_mutation_a43acc559bc5bccfd718fa30a536c0464}\label{classeo_one_fifth_mutation_a43acc559bc5bccfd718fa30a536c0464}} typedef E\+O\+T\+::\+Fitness {\bfseries Fitness} \item \mbox{\Hypertarget{classeo_one_fifth_mutation_a43acc559bc5bccfd718fa30a536c0464}\label{classeo_one_fifth_mutation_a43acc559bc5bccfd718fa30a536c0464}} typedef E\+O\+T\+::\+Fitness {\bfseries Fitness} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}{eo\+One\+Fifth\+Mutation}} (\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+eval, double \&\+\_\+sigma\+Init, unsigned \+\_\+window\+Size=10, double \+\_\+update\+Factor=0.\+83, double \+\_\+threshold=0.\+2) \item virtual std\+::string \mbox{\hyperlink{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}{class\+Name}} () const \item bool \mbox{\hyperlink{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}{operator()}} (\mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo) \item void \mbox{\hyperlink{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}{update}} () \item \mbox{\hyperlink{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}{eo\+One\+Fifth\+Mutation}} (\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&\+\_\+eval, double \&\+\_\+sigma\+Init, unsigned \+\_\+window\+Size=10, double \+\_\+update\+Factor=0.\+83, double \+\_\+threshold=0.\+2) \item virtual std\+::string \mbox{\hyperlink{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}{class\+Name}} () const \item bool \mbox{\hyperlink{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}{operator()}} (\mbox{\hyperlink{struct_dummy}{E\+OT}} \&\+\_\+eo) \item void \mbox{\hyperlink{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}{update}} () \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class E\+OT$>$\newline class eo\+One\+Fifth\+Mutation$<$ E\+O\+T $>$} the dynamic version\+: just say it is updatable -\/ and write the \mbox{\hyperlink{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}{update()}} method! here the 1 fifth rule\+: count the proportion of successful mutations, and increase sigma if more than threshold (1/5 !) \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}\label{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!eoOneFifthMutation@{eoOneFifthMutation}} \index{eoOneFifthMutation@{eoOneFifthMutation}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{eoOneFifthMutation()}{eoOneFifthMutation()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::\mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+eval, }\item[{double \&}]{\+\_\+sigma\+Init, }\item[{unsigned}]{\+\_\+window\+Size = {\ttfamily 10}, }\item[{double}]{\+\_\+update\+Factor = {\ttfamily 0.83}, }\item[{double}]{\+\_\+threshold = {\ttfamily 0.2} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} (Default) Constructor. \begin{DoxyParams}{Parameters} {\em \+\_\+eval} & the evaluation function, needed to recompute the fitmess \\ \hline {\em \+\_\+sigma\+Init} & the initial value for uniform mutation \\ \hline {\em \+\_\+window\+Size} & the size of the window for statistics \\ \hline {\em \+\_\+update\+Factor} & multiplicative update factor for sigma \\ \hline {\em \+\_\+threshold} & the threshold (the 1/5 -\/ 0.\+2) \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}\label{classeo_one_fifth_mutation_a31ab961810a6a9bfab893f212e71878a}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!eoOneFifthMutation@{eoOneFifthMutation}} \index{eoOneFifthMutation@{eoOneFifthMutation}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{eoOneFifthMutation()}{eoOneFifthMutation()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::\mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$ \&}]{\+\_\+eval, }\item[{double \&}]{\+\_\+sigma\+Init, }\item[{unsigned}]{\+\_\+window\+Size = {\ttfamily 10}, }\item[{double}]{\+\_\+update\+Factor = {\ttfamily 0.83}, }\item[{double}]{\+\_\+threshold = {\ttfamily 0.2} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} (Default) Constructor. \begin{DoxyParams}{Parameters} {\em \+\_\+eval} & the evaluation function, needed to recompute the fitmess \\ \hline {\em \+\_\+sigma\+Init} & the initial value for uniform mutation \\ \hline {\em \+\_\+window\+Size} & the size of the window for statistics \\ \hline {\em \+\_\+update\+Factor} & multiplicative update factor for sigma \\ \hline {\em \+\_\+threshold} & the threshold (the 1/5 -\/ 0.\+2) \\ \hline \end{DoxyParams} \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}\label{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!className@{className}} \index{className@{className}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{className()}{className()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ virtual std\+::string \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} The class name Reimplemented from \mbox{\hyperlink{classeo_normal_mutation_aa62c50771eb3b0d179ed2763f4ecc732}{eo\+Normal\+Mutation$<$ E\+O\+T $>$}}. \mbox{\Hypertarget{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}\label{classeo_one_fifth_mutation_a4a2eb0b65b139fd9e16afb4defa1a403}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!className@{className}} \index{className@{className}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{className()}{className()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ virtual std\+::string \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} The class name Reimplemented from \mbox{\hyperlink{classeo_normal_mutation_aa62c50771eb3b0d179ed2763f4ecc732}{eo\+Normal\+Mutation$<$ E\+O\+T $>$}}. \mbox{\Hypertarget{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}\label{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!operator()@{operator()}} \index{operator()@{operator()}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ bool \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_dummy}{E\+OT}} \&}]{\+\_\+eo }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Do it! calls the standard mutation, then checks for success and updates stats \begin{DoxyParams}{Parameters} {\em \+\_\+eo} & The chromosome undergoing the mutation \\ \hline \end{DoxyParams} Reimplemented from \mbox{\hyperlink{classeo_normal_mutation_a63e4863e5ad3a37d442fdf27c30310e0}{eo\+Normal\+Mutation$<$ E\+O\+T $>$}}. \mbox{\Hypertarget{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}\label{classeo_one_fifth_mutation_a42566feb8d16f1a5d884cb80f9b48b12}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!operator()@{operator()}} \index{operator()@{operator()}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ bool \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_dummy}{E\+OT}} \&}]{\+\_\+eo }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Do it! calls the standard mutation, then checks for success and updates stats \begin{DoxyParams}{Parameters} {\em \+\_\+eo} & The chromosome undergoing the mutation \\ \hline \end{DoxyParams} Reimplemented from \mbox{\hyperlink{classeo_normal_mutation_a63e4863e5ad3a37d442fdf27c30310e0}{eo\+Normal\+Mutation$<$ E\+O\+T $>$}}. \mbox{\Hypertarget{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}\label{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!update@{update}} \index{update@{update}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{update()}{update()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ void \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::update (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} the method that will be called every generation if the object is added to the checkpoint Implements \mbox{\hyperlink{classeo_updatable}{eo\+Updatable}}. \mbox{\Hypertarget{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}\label{classeo_one_fifth_mutation_aabf50f4bfef012bb77658cafe580e8ca}} \index{eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}!update@{update}} \index{update@{update}!eoOneFifthMutation$<$ EOT $>$@{eoOneFifthMutation$<$ EOT $>$}} \doxysubsubsection{\texorpdfstring{update()}{update()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class E\+OT $>$ \\ void \mbox{\hyperlink{classeo_one_fifth_mutation}{eo\+One\+Fifth\+Mutation}}$<$ \mbox{\hyperlink{struct_dummy}{E\+OT}} $>$\+::update (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} the method that will be called every generation if the object is added to the checkpoint Implements \mbox{\hyperlink{classeo_updatable}{eo\+Updatable}}. The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item deprecated/eo/src/es/eo\+Normal\+Mutation.\+h\end{DoxyCompactItemize}