\hypertarget{classmo_double_incr_evaluation}{}\doxysection{mo\+Double\+Incr\+Evaluation$<$ Neighbor $>$ Class Template Reference} \label{classmo_double_incr_evaluation}\index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} {\ttfamily \#include $<$mo\+Double\+Incr\+Evaluation.\+h$>$} Inheritance diagram for mo\+Double\+Incr\+Evaluation$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=334pt]{classmo_double_incr_evaluation__inherit__graph} \end{center} \end{figure} Collaboration diagram for mo\+Double\+Incr\+Evaluation$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=334pt]{classmo_double_incr_evaluation__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classmo_double_incr_evaluation_ace976ae5fe574f0d1e151d379ff8f660}\label{classmo_double_incr_evaluation_ace976ae5fe574f0d1e151d379ff8f660}} typedef \mbox{\hyperlink{classeo_bit}{Neighbor\+::\+E\+OT}} {\bfseries E\+OT} \item \mbox{\Hypertarget{classmo_double_incr_evaluation_a1fdef78b8c8f6e0d97862e41894b1858}\label{classmo_double_incr_evaluation_a1fdef78b8c8f6e0d97862e41894b1858}} typedef E\+O\+T\+::\+Fitness {\bfseries Fitness} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classmo_double_incr_evaluation_ad25683a2c8bacb1e66f1b9b200869c4c}{mo\+Double\+Incr\+Evaluation}} (unsigned int \+\_\+neighborhood\+Size) \item \mbox{\hyperlink{classmo_double_incr_evaluation_ad5ba57e2aaf00b68dc3249f0fb89405f}{$\sim$mo\+Double\+Incr\+Evaluation}} () \item virtual void \mbox{\hyperlink{classmo_double_incr_evaluation_ae0a0e80fc061e96e65b40b07b3070f6a}{init}} () \item \mbox{\Hypertarget{classmo_double_incr_evaluation_a90d92fddaa9efaf541f2180eca34542e}\label{classmo_double_incr_evaluation_a90d92fddaa9efaf541f2180eca34542e}} virtual void \mbox{\hyperlink{classmo_double_incr_evaluation_a90d92fddaa9efaf541f2180eca34542e}{operator()}} () \begin{DoxyCompactList}\small\item\em The pure virtual function that needs to be implemented by the subclass. \end{DoxyCompactList}\item virtual void \mbox{\hyperlink{classmo_double_incr_evaluation_a87b2e25ce6e1d579315577898f5caa15}{operator()}} (\mbox{\hyperlink{classeo_bit}{E\+OT}} \&\+\_\+solution) \end{DoxyCompactItemize} \doxysubsection*{Public Attributes} \begin{DoxyCompactItemize} \item Fitness $\ast$ \mbox{\hyperlink{classmo_double_incr_evaluation_a2d32d58f3ff4fd9fd4daef9efbfd3722}{delta\+Fitness}} \end{DoxyCompactItemize} \doxysubsection*{Protected Attributes} \begin{DoxyCompactItemize} \item unsigned int \mbox{\hyperlink{classmo_double_incr_evaluation_aa19b276b16b288722f4581993d232f2a}{neighborhood\+Size}} \item bool \mbox{\hyperlink{classmo_double_incr_evaluation_aecb066ac11d7236b8f35e3bcf661c7e6}{first\+Eval}} \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class Neighbor$>$\newline class mo\+Double\+Incr\+Evaluation$<$ Neighbor $>$} Base class for the double incremental evaluation of the neighborhood The sizes of the neighborhoods are equal \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classmo_double_incr_evaluation_ad25683a2c8bacb1e66f1b9b200869c4c}\label{classmo_double_incr_evaluation_ad25683a2c8bacb1e66f1b9b200869c4c}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!moDoubleIncrEvaluation@{moDoubleIncrEvaluation}} \index{moDoubleIncrEvaluation@{moDoubleIncrEvaluation}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{moDoubleIncrEvaluation()}{moDoubleIncrEvaluation()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::\mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}} (\begin{DoxyParamCaption}\item[{unsigned int}]{\+\_\+neighborhood\+Size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Constructor \begin{DoxyParams}{Parameters} {\em \+\_\+neighborhood\+Size} & the size of the neighborhood \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classmo_double_incr_evaluation_ad5ba57e2aaf00b68dc3249f0fb89405f}\label{classmo_double_incr_evaluation_ad5ba57e2aaf00b68dc3249f0fb89405f}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!````~moDoubleIncrEvaluation@{$\sim$moDoubleIncrEvaluation}} \index{````~moDoubleIncrEvaluation@{$\sim$moDoubleIncrEvaluation}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{$\sim$moDoubleIncrEvaluation()}{~moDoubleIncrEvaluation()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::$\sim$\mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Destructor \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classmo_double_incr_evaluation_ae0a0e80fc061e96e65b40b07b3070f6a}\label{classmo_double_incr_evaluation_ae0a0e80fc061e96e65b40b07b3070f6a}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!init@{init}} \index{init@{init}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{init()}{init()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ virtual void \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::init (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Initialisation of the evaluation process The first evaluation will be a simple incremental evaluation Reimplemented from \mbox{\hyperlink{classmo_updater_a75d678281397954494f10716469fdf09}{mo\+Updater}}. \mbox{\Hypertarget{classmo_double_incr_evaluation_a87b2e25ce6e1d579315577898f5caa15}\label{classmo_double_incr_evaluation_a87b2e25ce6e1d579315577898f5caa15}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!operator()@{operator()}} \index{operator()@{operator()}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ virtual void \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_bit}{E\+OT}} \&}]{\+\_\+solution }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} Evaluation of the neighborhood Here nothing to do \begin{DoxyParams}{Parameters} {\em \+\_\+solution} & the current solution \\ \hline \end{DoxyParams} Reimplemented in \mbox{\hyperlink{classmo_u_b_q_pdouble_incr_evaluation_af3f338f28fd3e9d54a34b8d53c49c55c}{mo\+U\+B\+Q\+Pdouble\+Incr\+Evaluation$<$ Neighbor $>$}}. \doxysubsection{Member Data Documentation} \mbox{\Hypertarget{classmo_double_incr_evaluation_a2d32d58f3ff4fd9fd4daef9efbfd3722}\label{classmo_double_incr_evaluation_a2d32d58f3ff4fd9fd4daef9efbfd3722}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!deltaFitness@{deltaFitness}} \index{deltaFitness@{deltaFitness}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{deltaFitness}{deltaFitness}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ Fitness$\ast$ \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::delta\+Fitness} the delta of fitness for each neighbors The fitness of the neighbor i is given by \+: fitness(solution) + delta\+Fitness\mbox{[}i\mbox{]} \mbox{\Hypertarget{classmo_double_incr_evaluation_aecb066ac11d7236b8f35e3bcf661c7e6}\label{classmo_double_incr_evaluation_aecb066ac11d7236b8f35e3bcf661c7e6}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!firstEval@{firstEval}} \index{firstEval@{firstEval}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{firstEval}{firstEval}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ bool \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::first\+Eval\hspace{0.3cm}{\ttfamily [protected]}} flag \+: true when it is the first evaluation \mbox{\Hypertarget{classmo_double_incr_evaluation_aa19b276b16b288722f4581993d232f2a}\label{classmo_double_incr_evaluation_aa19b276b16b288722f4581993d232f2a}} \index{moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}!neighborhoodSize@{neighborhoodSize}} \index{neighborhoodSize@{neighborhoodSize}!moDoubleIncrEvaluation$<$ Neighbor $>$@{moDoubleIncrEvaluation$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{neighborhoodSize}{neighborhoodSize}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ unsigned int \mbox{\hyperlink{classmo_double_incr_evaluation}{mo\+Double\+Incr\+Evaluation}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::neighborhood\+Size\hspace{0.3cm}{\ttfamily [protected]}} the neighborhood size The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item mo/src/eval/mo\+Double\+Incr\+Evaluation.\+h\end{DoxyCompactItemize}