paradiseo/Doxygen doc/latex/classeo_vector_particle.tex
aaziz-alaoui e79679b3c9 adding the problem configuration interface to irace interface
problem_config_mapping created
2020-10-01 15:55:30 +02:00

232 lines
18 KiB
TeX

\hypertarget{classeo_vector_particle}{}\doxysection{eo\+Vector\+Particle$<$ FitT, Position\+Type, Velocity\+Type $>$ Class Template Reference}
\label{classeo_vector_particle}\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
{\ttfamily \#include $<$eo\+Vector\+Particle.\+h$>$}
Inheritance diagram for eo\+Vector\+Particle$<$ FitT, Position\+Type, Velocity\+Type $>$\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classeo_vector_particle__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for eo\+Vector\+Particle$<$ FitT, Position\+Type, Velocity\+Type $>$\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classeo_vector_particle__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Types}
\begin{DoxyCompactItemize}
\item
\mbox{\Hypertarget{classeo_vector_particle_a9412418df7ef01115a36d5c2c5754a07}\label{classeo_vector_particle_a9412418df7ef01115a36d5c2c5754a07}}
typedef Position\+Type {\bfseries Atom\+Type}
\item
\mbox{\Hypertarget{classeo_vector_particle_ae58377e4ccc597f6cc84cb7bc01594df}\label{classeo_vector_particle_ae58377e4ccc597f6cc84cb7bc01594df}}
typedef Velocity\+Type {\bfseries Particle\+Velocity\+Type}
\item
\mbox{\Hypertarget{classeo_vector_particle_a9412418df7ef01115a36d5c2c5754a07}\label{classeo_vector_particle_a9412418df7ef01115a36d5c2c5754a07}}
typedef Position\+Type {\bfseries Atom\+Type}
\item
\mbox{\Hypertarget{classeo_vector_particle_ae58377e4ccc597f6cc84cb7bc01594df}\label{classeo_vector_particle_ae58377e4ccc597f6cc84cb7bc01594df}}
typedef Velocity\+Type {\bfseries Particle\+Velocity\+Type}
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}{eo\+Vector\+Particle}} (unsigned \+\_\+size=0, Position\+Type \+\_\+position=Position\+Type(), Velocity\+Type \+\_\+velocity=Velocity\+Type(), Position\+Type \+\_\+best\+Positions=Position\+Type())
\item
\mbox{\Hypertarget{classeo_vector_particle_a231f376f2c33499e0bcf582fe1911b3b}\label{classeo_vector_particle_a231f376f2c33499e0bcf582fe1911b3b}}
void {\bfseries position} (const std\+::vector$<$ Position\+Type $>$ \&\+\_\+v)
\item
void \mbox{\hyperlink{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}{resize}} (unsigned \+\_\+size)
\item
void \mbox{\hyperlink{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}{resize\+Best\+Positions}} (unsigned \+\_\+size)
\item
void \mbox{\hyperlink{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}{resize\+Velocities}} (unsigned \+\_\+size)
\item
\mbox{\Hypertarget{classeo_vector_particle_a4504e63096baa25138121f844a31325b}\label{classeo_vector_particle_a4504e63096baa25138121f844a31325b}}
bool \mbox{\hyperlink{classeo_vector_particle_a4504e63096baa25138121f844a31325b}{operator$<$}} (const \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$ \&\+\_\+eo) const
\begin{DoxyCompactList}\small\item\em to avoid conflicts between EA and P\+SO \end{DoxyCompactList}\item
virtual void \mbox{\hyperlink{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}{print\+On}} (std\+::ostream \&os) const
\item
\mbox{\hyperlink{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}{eo\+Vector\+Particle}} (unsigned \+\_\+size=0, Position\+Type \+\_\+position=Position\+Type(), Velocity\+Type \+\_\+velocity=Velocity\+Type(), Position\+Type \+\_\+best\+Positions=Position\+Type())
\item
\mbox{\Hypertarget{classeo_vector_particle_a231f376f2c33499e0bcf582fe1911b3b}\label{classeo_vector_particle_a231f376f2c33499e0bcf582fe1911b3b}}
void {\bfseries position} (const std\+::vector$<$ Position\+Type $>$ \&\+\_\+v)
\item
void \mbox{\hyperlink{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}{resize}} (unsigned \+\_\+size)
\item
void \mbox{\hyperlink{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}{resize\+Best\+Positions}} (unsigned \+\_\+size)
\item
void \mbox{\hyperlink{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}{resize\+Velocities}} (unsigned \+\_\+size)
\item
\mbox{\Hypertarget{classeo_vector_particle_a4504e63096baa25138121f844a31325b}\label{classeo_vector_particle_a4504e63096baa25138121f844a31325b}}
bool \mbox{\hyperlink{classeo_vector_particle_a4504e63096baa25138121f844a31325b}{operator$<$}} (const \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$ \&\+\_\+eo) const
\begin{DoxyCompactList}\small\item\em to avoid conflicts between EA and P\+SO \end{DoxyCompactList}\item
virtual void \mbox{\hyperlink{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}{print\+On}} (std\+::ostream \&os) const
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item
\mbox{\Hypertarget{classeo_vector_particle_aa0c4a494dfc91738d8462ca343a9f0c4}\label{classeo_vector_particle_aa0c4a494dfc91738d8462ca343a9f0c4}}
std\+::vector$<$ Position\+Type $>$ {\bfseries best\+Positions}
\item
\mbox{\Hypertarget{classeo_vector_particle_adf8b0a22a4aa543d85ac8de6ec5e0119}\label{classeo_vector_particle_adf8b0a22a4aa543d85ac8de6ec5e0119}}
std\+::vector$<$ Particle\+Velocity\+Type $>$ {\bfseries velocities}
\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
\subsubsection*{template$<$class FitT, class Position\+Type, class Velocity\+Type$>$\newline
class eo\+Vector\+Particle$<$ Fit\+T, Position\+Type, Velocity\+Type $>$}
Main class for particle representation of particle swarm optimization. The positions, velocities and the best positions associated to the particle are stored as vectors. Inheriting from \mbox{\hyperlink{class_p_o}{PO}} and std\+::vector, tree templates arguments are required\+: the fitness type (which is also the type of the particle\textquotesingle{}s best fitness), the position type and the velocity type.
\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}\label{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!eoVectorParticle@{eoVectorParticle}}
\index{eoVectorParticle@{eoVectorParticle}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{eoVectorParticle()}{eoVectorParticle()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
\mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::\mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}} (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size = {\ttfamily 0}, }\item[{Position\+Type}]{\+\_\+position = {\ttfamily PositionType~()}, }\item[{Velocity\+Type}]{\+\_\+velocity = {\ttfamily VelocityType~()}, }\item[{Position\+Type}]{\+\_\+best\+Positions = {\ttfamily PositionType~()} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Default constructor.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & Length of the tree vectors (we expect the same size), default is 0 \\
\hline
{\em \+\_\+position} & \\
\hline
{\em \+\_\+velocity} & \\
\hline
{\em \+\_\+best\+Positions} & \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}\label{classeo_vector_particle_a1f7b87dcc1672e2342f2a3b6365a1015}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!eoVectorParticle@{eoVectorParticle}}
\index{eoVectorParticle@{eoVectorParticle}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{eoVectorParticle()}{eoVectorParticle()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
\mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::\mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}} (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size = {\ttfamily 0}, }\item[{Position\+Type}]{\+\_\+position = {\ttfamily PositionType~()}, }\item[{Velocity\+Type}]{\+\_\+velocity = {\ttfamily VelocityType~()}, }\item[{Position\+Type}]{\+\_\+best\+Positions = {\ttfamily PositionType~()} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Default constructor.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & Length of the tree vectors (we expect the same size), default is 0 \\
\hline
{\em \+\_\+position} & \\
\hline
{\em \+\_\+velocity} & \\
\hline
{\em \+\_\+best\+Positions} & \\
\hline
\end{DoxyParams}
\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}\label{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!printOn@{printOn}}
\index{printOn@{printOn}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{printOn()}{printOn()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
virtual void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::print\+On (\begin{DoxyParamCaption}\item[{std\+::ostream \&}]{os }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
Print-\/on a vector-\/particle
Reimplemented from \mbox{\hyperlink{class_p_o_a5bd1f1a689831ff9ec892305d4cf34f6}{P\+O$<$ Fit\+T $>$}}.
\mbox{\Hypertarget{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}\label{classeo_vector_particle_a12e7b867a2e894285c064a127cec7054}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!printOn@{printOn}}
\index{printOn@{printOn}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{printOn()}{printOn()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
virtual void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::print\+On (\begin{DoxyParamCaption}\item[{std\+::ostream \&}]{os }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
Print-\/on a vector-\/particle
Reimplemented from \mbox{\hyperlink{class_p_o_a5bd1f1a689831ff9ec892305d4cf34f6}{P\+O$<$ Fit\+T $>$}}.
\mbox{\Hypertarget{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}\label{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resize@{resize}}
\index{resize@{resize}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resize()}{resize()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the tree vectors of the particle\+: positions, velocities and best\+Positions
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for positions, velocities and best\+Positions \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}\label{classeo_vector_particle_a121368b9c30257f81db4e831d05c5376}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resize@{resize}}
\index{resize@{resize}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resize()}{resize()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the tree vectors of the particle\+: positions, velocities and best\+Positions
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for positions, velocities and best\+Positions \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}\label{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resizeBestPositions@{resizeBestPositions}}
\index{resizeBestPositions@{resizeBestPositions}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resizeBestPositions()}{resizeBestPositions()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize\+Best\+Positions (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the best positions.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for the best positions. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}\label{classeo_vector_particle_a5303ac285f96950f0974dab6f9da4b34}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resizeBestPositions@{resizeBestPositions}}
\index{resizeBestPositions@{resizeBestPositions}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resizeBestPositions()}{resizeBestPositions()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize\+Best\+Positions (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the best positions.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for the best positions. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}\label{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resizeVelocities@{resizeVelocities}}
\index{resizeVelocities@{resizeVelocities}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resizeVelocities()}{resizeVelocities()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize\+Velocities (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the velocities.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for the velocities. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}\label{classeo_vector_particle_a74da94fc81a141e0b8337bcc7d3d7700}}
\index{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}!resizeVelocities@{resizeVelocities}}
\index{resizeVelocities@{resizeVelocities}!eoVectorParticle$<$ FitT, PositionType, VelocityType $>$@{eoVectorParticle$<$ FitT, PositionType, VelocityType $>$}}
\doxysubsubsection{\texorpdfstring{resizeVelocities()}{resizeVelocities()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily template$<$class FitT , class Position\+Type , class Velocity\+Type $>$ \\
void \mbox{\hyperlink{classeo_vector_particle}{eo\+Vector\+Particle}}$<$ \mbox{\hyperlink{classeo_scalar_fitness}{FitT}}, Position\+Type, Velocity\+Type $>$\+::resize\+Velocities (\begin{DoxyParamCaption}\item[{unsigned}]{\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Resize the velocities.
\begin{DoxyParams}{Parameters}
{\em \+\_\+size} & The new size for the velocities. \\
\hline
\end{DoxyParams}
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
deprecated/eo/src/eo\+Vector\+Particle.\+h\end{DoxyCompactItemize}