147 lines
9.9 KiB
TeX
147 lines
9.9 KiB
TeX
\hypertarget{classmo_neighbor}{}\doxysection{mo\+Neighbor$<$ E\+O\+Type, Fitness $>$ Class Template Reference}
|
|
\label{classmo_neighbor}\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$mo\+Neighbor.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for mo\+Neighbor$<$ E\+O\+Type, Fitness $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=236pt]{classmo_neighbor__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for mo\+Neighbor$<$ E\+O\+Type, Fitness $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=236pt]{classmo_neighbor__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classmo_neighbor_a1dc4890c2b45e90db425aea68181627b}\label{classmo_neighbor_a1dc4890c2b45e90db425aea68181627b}}
|
|
typedef E\+O\+Type {\bfseries E\+OT}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classmo_neighbor_a230b9adb0fb16db50a754606c74e0dfd}{mo\+Neighbor}} ()
|
|
\item
|
|
\mbox{\hyperlink{classmo_neighbor_ae4ed0421f011b3bb404c08f6c4e51b5b}{mo\+Neighbor}} (const \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&\+\_\+neighbor)
|
|
\item
|
|
virtual \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \& \mbox{\hyperlink{classmo_neighbor_a7ecdaf6f6adbcb1182bd0be2de1e2def}{operator=}} (const \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&\+\_\+neighbor)
|
|
\item
|
|
virtual void \mbox{\hyperlink{classmo_neighbor_a8f7c2d49ae656a7da9611fc59dc8a80f}{move}} (E\+OT \&\+\_\+solution)=0
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classmo_neighbor_a1891af5404194c2c814010cec036edf6}{equals}} (\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&\+\_\+neighbor)
|
|
\item
|
|
virtual std\+::string \mbox{\hyperlink{classmo_neighbor_add2e6ebf5482d5275748ca2abb332b60}{class\+Name}} () const
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$class E\+O\+Type, class Fitness = typename E\+O\+Type\+::\+Fitness$>$\newline
|
|
class mo\+Neighbor$<$ E\+O\+Type, Fitness $>$}
|
|
|
|
Container of the neighbor informations
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classmo_neighbor_a230b9adb0fb16db50a754606c74e0dfd}\label{classmo_neighbor_a230b9adb0fb16db50a754606c74e0dfd}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!moNeighbor@{moNeighbor}}
|
|
\index{moNeighbor@{moNeighbor}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{moNeighbor()}{moNeighbor()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Default Constructor \mbox{\Hypertarget{classmo_neighbor_ae4ed0421f011b3bb404c08f6c4e51b5b}\label{classmo_neighbor_ae4ed0421f011b3bb404c08f6c4e51b5b}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!moNeighbor@{moNeighbor}}
|
|
\index{moNeighbor@{moNeighbor}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{moNeighbor()}{moNeighbor()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}} (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&}]{\+\_\+neighbor }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Copy Constructor
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+neighbor} & to copy \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classmo_neighbor_add2e6ebf5482d5275748ca2abb332b60}\label{classmo_neighbor_add2e6ebf5482d5275748ca2abb332b60}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!className@{className}}
|
|
\index{className@{className}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{className()}{className()}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
virtual std\+::string \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::class\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Return the class Name \begin{DoxyReturn}{Returns}
|
|
the class name as a std\+::string
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_object_a1c02745db786e7bb46dea93b560fe685}{eo\+Object}}.
|
|
|
|
|
|
|
|
Reimplemented in \mbox{\hyperlink{classmo_index_neighbor_a5677017fdc29481fd851261935063db4}{mo\+Index\+Neighbor$<$ E\+O\+T, typename E\+O\+T\+::\+Fitness $>$}}, \mbox{\hyperlink{classmo_index_neighbor_a5677017fdc29481fd851261935063db4}{mo\+Index\+Neighbor$<$ eo\+Bit$<$ Fitness $>$ $>$}}, \mbox{\hyperlink{classmo_index_neighbor_a5677017fdc29481fd851261935063db4}{mo\+Index\+Neighbor$<$ Solution, Objective\+Vector $>$}}, \mbox{\hyperlink{classmo_index_neighbor_a5677017fdc29481fd851261935063db4}{mo\+Index\+Neighbor$<$ eo\+Bit$<$ double $>$ $>$}}, and \mbox{\hyperlink{classmo_bit_neighbor_a34e921c45d1a1201820b235fc66efdc3}{mo\+Bit\+Neighbor$<$ double $>$}}.
|
|
|
|
\mbox{\Hypertarget{classmo_neighbor_a1891af5404194c2c814010cec036edf6}\label{classmo_neighbor_a1891af5404194c2c814010cec036edf6}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!equals@{equals}}
|
|
\index{equals@{equals}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{equals()}{equals()}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
virtual bool \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::equals (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&}]{\+\_\+neighbor }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
\mbox{\hyperlink{struct_test}{Test}} equality between two neighbors
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+neighbor} & a neighbor \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
if \+\_\+neighbor and this one are equals
|
|
\end{DoxyReturn}
|
|
\mbox{\Hypertarget{classmo_neighbor_a8f7c2d49ae656a7da9611fc59dc8a80f}\label{classmo_neighbor_a8f7c2d49ae656a7da9611fc59dc8a80f}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!move@{move}}
|
|
\index{move@{move}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{move()}{move()}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
virtual void \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::move (\begin{DoxyParamCaption}\item[{E\+OT \&}]{\+\_\+solution }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
|
|
|
|
Move a solution
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+solution} & the related solution \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Implemented in \mbox{\hyperlink{classmo_dummy_backable_neighbor_ac15760efd5a0189f4a0a2eb9fdc9bf21}{mo\+Dummy\+Backable\+Neighbor}}, \mbox{\hyperlink{class_sol_neighbor_a4f359bbbc0a2ae36d6971615073edb25}{Sol\+Neighbor}}, \mbox{\hyperlink{classmo_dummy_neighbor_test_ad2eb0e44de03898c8c2e0efb40ae3d4c}{mo\+Dummy\+Neighbor\+Test}}, \mbox{\hyperlink{classmo_bits_neighbor_a5f37e2c30e608b7471fe348ad325423b}{mo\+Bits\+Neighbor$<$ E\+O\+T, Fitness $>$}}, \mbox{\hyperlink{classmo_indexed_swap_neighbor_ac51e5bb143de63ab7bea090adcf0e8db}{mo\+Indexed\+Swap\+Neighbor$<$ E\+O\+T, Fitness $>$}}, \mbox{\hyperlink{classmo_bit_neighbor_ad30d6e4116a44380d7cfac887e32e8a0}{mo\+Bit\+Neighbor$<$ Fitness $>$}}, \mbox{\hyperlink{classmo_bit_neighbor_ad30d6e4116a44380d7cfac887e32e8a0}{mo\+Bit\+Neighbor$<$ double $>$}}, \mbox{\hyperlink{classmo_shift_neighbor_a2b1ec2bcc0ff2361ee641446a8618e79}{mo\+Shift\+Neighbor$<$ E\+O\+T, Fitness $>$}}, \mbox{\hyperlink{classmo_dummy_neighbor_a0e01035ed808a35b594eea148bb93b3b}{mo\+Dummy\+Neighbor$<$ E\+O\+T, Fitness $>$}}, \mbox{\hyperlink{classmo_swap_neighbor_ab847d478f2ac2754764cf31134233461}{mo\+Swap\+Neighbor$<$ E\+O\+T, Fitness $>$}}, and \mbox{\hyperlink{classmo_two_opt_ex_neighbor_a21688544b4a32c7ba8bbd7c7a1a92c88}{mo\+Two\+Opt\+Ex\+Neighbor$<$ E\+O\+T, Fitness $>$}}.
|
|
|
|
\mbox{\Hypertarget{classmo_neighbor_a7ecdaf6f6adbcb1182bd0be2de1e2def}\label{classmo_neighbor_a7ecdaf6f6adbcb1182bd0be2de1e2def}}
|
|
\index{moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}!operator=@{operator=}}
|
|
\index{operator=@{operator=}!moNeighbor$<$ EOType, Fitness $>$@{moNeighbor$<$ EOType, Fitness $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}}
|
|
{\footnotesize\ttfamily template$<$class E\+O\+Type , class Fitness = typename E\+O\+Type\+::\+Fitness$>$ \\
|
|
virtual \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$E\+OT, Fitness$>$\& \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+O\+Type, Fitness $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classmo_neighbor}{mo\+Neighbor}}$<$ E\+OT, Fitness $>$ \&}]{\+\_\+neighbor }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Assignment operator
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+neighbor} & the neighbor to assign \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
a neighbor equal to the other
|
|
\end{DoxyReturn}
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
mo/src/neighborhood/mo\+Neighbor.\+h\end{DoxyCompactItemize}
|