\hypertarget{classmo_local_search}{}\doxysection{mo\+Local\+Search$<$ Neighbor $>$ Class Template Reference} \label{classmo_local_search}\index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} {\ttfamily \#include $<$mo\+Local\+Search.\+h$>$} Inheritance diagram for mo\+Local\+Search$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmo_local_search__inherit__graph} \end{center} \end{figure} Collaboration diagram for mo\+Local\+Search$<$ Neighbor $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmo_local_search__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classmo_local_search_aa7ec9ea9b9fc811b0856eac06c46f400}\label{classmo_local_search_aa7ec9ea9b9fc811b0856eac06c46f400}} typedef \mbox{\hyperlink{classmo_neighborhood}{mo\+Neighborhood}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ {\bfseries Neighborhood} \item \mbox{\Hypertarget{classmo_local_search_af095f3a25a4c0715144379dd4b22a123}\label{classmo_local_search_af095f3a25a4c0715144379dd4b22a123}} typedef \mbox{\hyperlink{classmo_neighborhood_explorer}{mo\+Neighborhood\+Explorer}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ {\bfseries Neighborhood\+Explorer} \item \mbox{\Hypertarget{classmo_local_search_a9bc78a5a4de63fc550b871caa92bc03e}\label{classmo_local_search_a9bc78a5a4de63fc550b871caa92bc03e}} typedef \mbox{\hyperlink{classeo_bit}{Neighbor\+::\+E\+OT}} {\bfseries E\+OT} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classmo_local_search_a997bf7dcff173a1d74c9b0bf945e7198}{mo\+Local\+Search}} (\mbox{\hyperlink{classmo_neighborhood_explorer}{Neighborhood\+Explorer}} \&\+\_\+search\+Expl, \mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \&\+\_\+cont, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&\+\_\+full\+Eval) \item virtual bool \mbox{\hyperlink{classmo_local_search_abeaca0f01da325fb59669c14a36b0458}{operator()}} (\mbox{\hyperlink{classeo_bit}{E\+OT}} \&\+\_\+solution) \item void \mbox{\hyperlink{classmo_local_search_ae259874247c49177cc30a95b32ba2d53}{set\+Continuator}} (\mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \&\+\_\+cont) \item \mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ $\ast$ \mbox{\hyperlink{classmo_local_search_a977f99ca7d98dd519ac92da72426f88a}{get\+Continuator}} () const \item \mbox{\hyperlink{classmo_neighborhood_explorer}{mo\+Neighborhood\+Explorer}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \& \mbox{\hyperlink{classmo_local_search_a7958f7c36f9566795f772a3e982ec383}{get\+Neighborhood\+Explorer}} () const \end{DoxyCompactItemize} \doxysubsection*{Protected Attributes} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classmo_local_search_ad4c313303d6d32bce0111f463044b2f3}\label{classmo_local_search_ad4c313303d6d32bce0111f463044b2f3}} \mbox{\hyperlink{classmo_neighborhood_explorer}{mo\+Neighborhood\+Explorer}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \& {\bfseries search\+Explorer} \item \mbox{\Hypertarget{classmo_local_search_ae1c355cbb93261b280de8eac89bb8fab}\label{classmo_local_search_ae1c355cbb93261b280de8eac89bb8fab}} \mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ $\ast$ {\bfseries cont} \item \mbox{\Hypertarget{classmo_local_search_acd806308f119d8ea8d4381d38a99b8b7}\label{classmo_local_search_acd806308f119d8ea8d4381d38a99b8b7}} \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \& {\bfseries full\+Eval} \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class Neighbor$>$\newline class mo\+Local\+Search$<$ Neighbor $>$} the main algorithm of the local search \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classmo_local_search_a997bf7dcff173a1d74c9b0bf945e7198}\label{classmo_local_search_a997bf7dcff173a1d74c9b0bf945e7198}} \index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}!moLocalSearch@{moLocalSearch}} \index{moLocalSearch@{moLocalSearch}!moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{moLocalSearch()}{moLocalSearch()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::\mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmo_neighborhood_explorer}{Neighborhood\+Explorer}} \&}]{\+\_\+search\+Expl, }\item[{\mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \&}]{\+\_\+cont, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ \mbox{\hyperlink{classeo_bit}{E\+OT}} $>$ \&}]{\+\_\+full\+Eval }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Constructor of a \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}} \begin{DoxyParams}{Parameters} {\em \+\_\+search\+Expl} & a neighborhood explorer \\ \hline {\em \+\_\+cont} & an external continuator (can be a checkpoint!) \\ \hline {\em \+\_\+full\+Eval} & a full evaluation function \\ \hline \end{DoxyParams} \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classmo_local_search_a977f99ca7d98dd519ac92da72426f88a}\label{classmo_local_search_a977f99ca7d98dd519ac92da72426f88a}} \index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}!getContinuator@{getContinuator}} \index{getContinuator@{getContinuator}!moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{getContinuator()}{getContinuator()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$\mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}}$>$$\ast$ \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::get\+Continuator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}} external continuator object This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \begin{DoxyReturn}{Returns} the external continuator \end{DoxyReturn} \mbox{\Hypertarget{classmo_local_search_a7958f7c36f9566795f772a3e982ec383}\label{classmo_local_search_a7958f7c36f9566795f772a3e982ec383}} \index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}!getNeighborhoodExplorer@{getNeighborhoodExplorer}} \index{getNeighborhoodExplorer@{getNeighborhoodExplorer}!moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{getNeighborhoodExplorer()}{getNeighborhoodExplorer()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ \mbox{\hyperlink{classmo_neighborhood_explorer}{mo\+Neighborhood\+Explorer}}$<$\mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}}$>$\& \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::get\+Neighborhood\+Explorer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}} to get the neighborhood explorer This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. \begin{DoxyReturn}{Returns} the neighborhood explorer \end{DoxyReturn} \mbox{\Hypertarget{classmo_local_search_abeaca0f01da325fb59669c14a36b0458}\label{classmo_local_search_abeaca0f01da325fb59669c14a36b0458}} \index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}!operator()@{operator()}} \index{operator()@{operator()}!moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ virtual bool \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}}$<$ \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]}} Run the local search on a solution \begin{DoxyParams}{Parameters} {\em \+\_\+solution} & the related solution \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classmo_local_search_ae259874247c49177cc30a95b32ba2d53}\label{classmo_local_search_ae259874247c49177cc30a95b32ba2d53}} \index{moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}!setContinuator@{setContinuator}} \index{setContinuator@{setContinuator}!moLocalSearch$<$ Neighbor $>$@{moLocalSearch$<$ Neighbor $>$}} \doxysubsubsection{\texorpdfstring{setContinuator()}{setContinuator()}} {\footnotesize\ttfamily template$<$class Neighbor $>$ \\ void \mbox{\hyperlink{classmo_local_search}{mo\+Local\+Search}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$\+::set\+Continuator (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmo_continuator}{mo\+Continuator}}$<$ \mbox{\hyperlink{classmo_bit_neighbor}{Neighbor}} $>$ \&}]{\+\_\+cont }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} Set an external continuator \begin{DoxyParams}{Parameters} {\em \+\_\+cont} & the external continuator \\ \hline \end{DoxyParams} The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item mo/src/algo/mo\+Local\+Search.\+h\end{DoxyCompactItemize}