\hypertarget{classmo_mon_op_perturb}{}\doxysection{mo\+Mon\+Op\+Perturb$<$ Neighbor $>$ Class Template Reference} \label{classmo_mon_op_perturb}\index{moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}} {\ttfamily \#include $<$mo\+Mon\+Op\+Perturb.\+h$>$} Inheritance diagram for mo\+Mon\+Op\+Perturb$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmo_mon_op_perturb__inherit__graph} \end{center} \end{figure} Collaboration diagram for mo\+Mon\+Op\+Perturb$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmo_mon_op_perturb__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classmo_mon_op_perturb_a2932b46150a3fa30a1394efed86ac089}\label{classmo_mon_op_perturb_a2932b46150a3fa30a1394efed86ac089}} typedef \mbox{\hyperlink{classeo_bit}{Neighbor\+::\+E\+OT}} {\bfseries E\+OT} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classmo_mon_op_perturb_aa994c848e97b15ebb8a81365be25ebc1}{mo\+Mon\+Op\+Perturb}} (\mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&\+\_\+mon\+Op, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&\+\_\+full\+Eval, unsigned int \+\_\+nb\+Perturbation=1) \item \mbox{\hyperlink{classmo_mon_op_perturb_a6a118ae1da2ee2ceeedb8c323657418b}{mo\+Mon\+Op\+Perturb}} (\mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&\+\_\+mon\+Op, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&\+\_\+full\+Eval, unsigned int \+\_\+nb\+Perturbation\+Min, unsigned int \+\_\+nb\+Perturbation\+Max) \item bool \mbox{\hyperlink{classmo_mon_op_perturb_abddd466e35bb662b5c75351f76a474a6}{operator()}} (\mbox{\hyperlink{classeo_bit}{E\+OT}} \&\+\_\+solution) \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class Neighbor$>$\newline class mo\+Mon\+Op\+Perturb$<$ Neighbor $>$} Perturbation operator using only a \mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}} \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classmo_mon_op_perturb_aa994c848e97b15ebb8a81365be25ebc1}\label{classmo_mon_op_perturb_aa994c848e97b15ebb8a81365be25ebc1}} \index{moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}!moMonOpPerturb@{moMonOpPerturb}} \index{moMonOpPerturb@{moMonOpPerturb}!moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{moMonOpPerturb()}{moMonOpPerturb()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_mon_op_perturb}{mo\+Mon\+Op\+Perturb}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::\mbox{\hyperlink{classmo_mon_op_perturb}{mo\+Mon\+Op\+Perturb}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&}]{\+\_\+mon\+Op, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&}]{\+\_\+full\+Eval, }\item[{unsigned int}]{\+\_\+nb\+Perturbation = {\ttfamily 1} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Constructor \begin{DoxyParams}{Parameters} {\em \+\_\+mon\+Op} & an \mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}} (pertubation operator) \\ \hline {\em \+\_\+full\+Eval} & a full evaluation function \\ \hline {\em \+\_\+nb\+Perturbation} & number of operator executions for perturbation \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classmo_mon_op_perturb_a6a118ae1da2ee2ceeedb8c323657418b}\label{classmo_mon_op_perturb_a6a118ae1da2ee2ceeedb8c323657418b}} \index{moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}!moMonOpPerturb@{moMonOpPerturb}} \index{moMonOpPerturb@{moMonOpPerturb}!moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{moMonOpPerturb()}{moMonOpPerturb()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_mon_op_perturb}{mo\+Mon\+Op\+Perturb}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::\mbox{\hyperlink{classmo_mon_op_perturb}{mo\+Mon\+Op\+Perturb}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&}]{\+\_\+mon\+Op, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&}]{\+\_\+full\+Eval, }\item[{unsigned int}]{\+\_\+nb\+Perturbation\+Min, }\item[{unsigned int}]{\+\_\+nb\+Perturbation\+Max }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Constructor with random value at each iteration of the number of perturbation moves \begin{DoxyParams}{Parameters} {\em \+\_\+mon\+Op} & an \mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}} (pertubation operator) \\ \hline {\em \+\_\+full\+Eval} & a full evaluation function \\ \hline {\em \+\_\+nb\+Perturbation\+Min} & minimum number of operator executions for perturbation \\ \hline {\em \+\_\+nb\+Perturbation\+Max} & maximum number of operator executions for perturbation \\ \hline \end{DoxyParams} \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classmo_mon_op_perturb_abddd466e35bb662b5c75351f76a474a6}\label{classmo_mon_op_perturb_abddd466e35bb662b5c75351f76a474a6}} \index{moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}!operator()@{operator()}} \index{operator()@{operator()}!moMonOpPerturb$<$ Neighbor $>$@{moMonOpPerturb$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ bool \mbox{\hyperlink{classmo_mon_op_perturb}{mo\+Mon\+Op\+Perturb}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_bit}{E\+OT}} \&}]{\+\_\+solution }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Apply mon\+Op on the solution \begin{DoxyParams}{Parameters} {\em \+\_\+solution} & to perturb \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} value of mon\+Op \end{DoxyReturn} The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item mo/src/perturb/mo\+Mon\+Op\+Perturb.\+h\end{DoxyCompactItemize}