335 lines
27 KiB
TeX
335 lines
27 KiB
TeX
\hypertarget{classeo_constricted_velocity}{}\doxysection{eo\+Constricted\+Velocity$<$ P\+OT $>$ Class Template Reference}
|
|
\label{classeo_constricted_velocity}\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$eo\+Constricted\+Velocity.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for eo\+Constricted\+Velocity$<$ P\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=334pt]{classeo_constricted_velocity__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for eo\+Constricted\+Velocity$<$ P\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classeo_constricted_velocity__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_afbad598da453612d3501ae4cd958c548}\label{classeo_constricted_velocity_afbad598da453612d3501ae4cd958c548}}
|
|
typedef P\+O\+T\+::\+Particle\+Velocity\+Type {\bfseries Velocity\+Type}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_afbad598da453612d3501ae4cd958c548}\label{classeo_constricted_velocity_afbad598da453612d3501ae4cd958c548}}
|
|
typedef P\+O\+T\+::\+Particle\+Velocity\+Type {\bfseries Velocity\+Type}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&\+\_\+bounds, \mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \&\+\_\+bnds\+Modifier, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&\+\_\+bounds, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
void \mbox{\hyperlink{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}{operator()}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice)
|
|
\item
|
|
void \mbox{\hyperlink{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}{update\+Neighborhood}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice)
|
|
\item
|
|
\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \& \mbox{\hyperlink{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}{get\+Topology}} ()
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&\+\_\+bounds, \mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \&\+\_\+bnds\+Modifier, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&\+\_\+bounds, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
\mbox{\hyperlink{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}{eo\+Constricted\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng)
|
|
\item
|
|
void \mbox{\hyperlink{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}{operator()}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice)
|
|
\item
|
|
void \mbox{\hyperlink{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}{update\+Neighborhood}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice)
|
|
\item
|
|
\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \& \mbox{\hyperlink{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}{get\+Topology}} ()
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Protected Attributes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_ae2a81a953f79bc32ff4082a887664c38}\label{classeo_constricted_velocity_ae2a81a953f79bc32ff4082a887664c38}}
|
|
\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \& {\bfseries topology}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_ade5b4e1e0a5e3866816fca3e00013a88}\label{classeo_constricted_velocity_ade5b4e1e0a5e3866816fca3e00013a88}}
|
|
const Velocity\+Type \& {\bfseries c1}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a1b7d54410672d4096b94cfc17e3cff4e}\label{classeo_constricted_velocity_a1b7d54410672d4096b94cfc17e3cff4e}}
|
|
const Velocity\+Type \& {\bfseries c2}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a45ec9b596a1fbccf53e7bd861360cbca}\label{classeo_constricted_velocity_a45ec9b596a1fbccf53e7bd861360cbca}}
|
|
const Velocity\+Type \& {\bfseries coeff}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_ae79107b5585ca4065c0a61d8429e8164}\label{classeo_constricted_velocity_ae79107b5585ca4065c0a61d8429e8164}}
|
|
\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \& {\bfseries gen}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_ac5a8a490ff0d3d231924d7be39dd31b4}\label{classeo_constricted_velocity_ac5a8a490ff0d3d231924d7be39dd31b4}}
|
|
\mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \& {\bfseries bounds}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a138ef59e532fc49d55036edb3ff4e01c}\label{classeo_constricted_velocity_a138ef59e532fc49d55036edb3ff4e01c}}
|
|
\mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \& {\bfseries bnds\+Modifier}
|
|
\item
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_ac8a33c04e38f92a16ea6da3fa946fbf0}\label{classeo_constricted_velocity_ac8a33c04e38f92a16ea6da3fa946fbf0}}
|
|
\mbox{\hyperlink{classeo_dummy_real_bound_modifier}{eo\+Dummy\+Real\+Bound\+Modifier}} {\bfseries dummy\+Modifier}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Additional Inherited Members}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$class P\+OT$>$\newline
|
|
class eo\+Constricted\+Velocity$<$ P\+O\+T $>$}
|
|
|
|
Constricted velocity performer for particle swarm optimization. Derivated from abstract \mbox{\hyperlink{classeo_velocity}{eo\+Velocity}}, At step t+1 \+: v(t+1)= C $\ast$ \mbox{[} v(t) + c1$\ast$r1 $\ast$ (xbest(t)-\/x(t)) + c2$\ast$r2 $\ast$ (gbest(t) -\/ x(t)) \mbox{]} C is fixed for all the particles and all the generations. Default C = 2 $\ast$ k / abs(2 -\/ P -\/ sqrt (P$\ast$(P-\/4))) (ci and C given;P=c1$\ast$r1 + c2$\ast$r2 ; Ri chosen at random $\ast$ in \mbox{[}0;1\mbox{]})
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}\label{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&}]{\+\_\+bounds, }\item[{\mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \&}]{\+\_\+bnds\+Modifier, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Full constructor\+: Bounds and bound modifier required
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+bounds} & -\/ An \mbox{\hyperlink{classeo_real_base_vector_bounds}{eo\+Real\+Base\+Vector\+Bounds}}\+: real bounds for real velocities. If the velocities are not real, they won\textquotesingle{}t be bounded by default. Should have a eo\+Bounds ? \\
|
|
\hline
|
|
{\em \+\_\+bnds\+Modifier} & -\/ An \mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} used to modify the bounds (for real bounds only). \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}\label{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&}]{\+\_\+bounds, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Constructor\+: No bound updater required $<$-\/$>$ fixed bounds
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+bounds} & -\/ An \mbox{\hyperlink{classeo_real_base_vector_bounds}{eo\+Real\+Base\+Vector\+Bounds}}\+: real bounds for real velocities. If the velocities are not real, they won\textquotesingle{}t be bounded by default. Should have a eo\+Bounds ? \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}\label{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Constructor\+: Neither bounds nor bound updater required $<$-\/$>$ free velocity
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}\label{classeo_constricted_velocity_a8b0e6c4d47891563b3faeb1e3f11dd25}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&}]{\+\_\+bounds, }\item[{\mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \&}]{\+\_\+bnds\+Modifier, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Full constructor\+: Bounds and bound modifier required
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+bounds} & -\/ An \mbox{\hyperlink{classeo_real_base_vector_bounds}{eo\+Real\+Base\+Vector\+Bounds}}\+: real bounds for real velocities. If the velocities are not real, they won\textquotesingle{}t be bounded by default. Should have a eo\+Bounds ? \\
|
|
\hline
|
|
{\em \+\_\+bnds\+Modifier} & -\/ An \mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} used to modify the bounds (for real bounds only). \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}\label{classeo_constricted_velocity_a0bef9dc4b41f968707ea55212a3d1401}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \&}]{\+\_\+bounds, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Constructor\+: No bound updater required $<$-\/$>$ fixed bounds
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+bounds} & -\/ An \mbox{\hyperlink{classeo_real_base_vector_bounds}{eo\+Real\+Base\+Vector\+Bounds}}\+: real bounds for real velocities. If the velocities are not real, they won\textquotesingle{}t be bounded by default. Should have a eo\+Bounds ? \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}\label{classeo_constricted_velocity_a1cab8d4d0e4bb2e5af4e51477aebcd65}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!eoConstrictedVelocity@{eoConstrictedVelocity}}
|
|
\index{eoConstrictedVelocity@{eoConstrictedVelocity}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{eoConstrictedVelocity()}{eoConstrictedVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{const Velocity\+Type \&}]{\+\_\+c1, }\item[{const Velocity\+Type \&}]{\+\_\+c2, }\item[{\mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&}]{\+\_\+gen = {\ttfamily rng} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Constructor\+: Neither bounds nor bound updater required $<$-\/$>$ free velocity
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+topology} & -\/ The topology to get the global/local/other best \\
|
|
\hline
|
|
{\em \+\_\+coeff} & -\/ The constriction coefficient \\
|
|
\hline
|
|
{\em \+\_\+c1} & -\/ The first learning factor used for the particle\textquotesingle{}s best. Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+c2} & -\/ The second learning factor used for the local/global best(s). Type must be P\+O\+T\+::\+Particle\+Velocity\+Type \\
|
|
\hline
|
|
{\em \+\_\+gen} & -\/ The eo random generator, default=rng \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}\label{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!getTopology@{getTopology}}
|
|
\index{getTopology@{getTopology}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{getTopology()}{getTopology()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$P\+OT$>$\& \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::get\+Topology (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
eo\+Topology$<$\+P\+O\+T$>$ get\+Topology\begin{DoxyReturn}{Returns}
|
|
topology
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_velocity}{eo\+Velocity$<$ P\+O\+T $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}\label{classeo_constricted_velocity_a959138865d08916203d695b0c5103dd7}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!getTopology@{getTopology}}
|
|
\index{getTopology@{getTopology}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{getTopology()}{getTopology()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$P\+OT$>$\& \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::get\+Topology (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
eo\+Topology$<$\+P\+O\+T$>$ get\+Topology\begin{DoxyReturn}{Returns}
|
|
topology
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_velocity}{eo\+Velocity$<$ P\+O\+T $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}\label{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::operator() (\begin{DoxyParamCaption}\item[{P\+OT \&}]{\+\_\+po, }\item[{unsigned}]{\+\_\+indice }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Evaluate the new velocities of the given particle. Need an indice to identify the particle into the topology. Steps are \+:
|
|
\begin{DoxyItemize}
|
|
\item evaluate r1 and r2, the customed learning factors
|
|
\item adjust the size of the bounds (even if dummy)
|
|
\item modify the bounds with the bounds modifier (use the dummy modifier if there\textquotesingle{}s no modifier provided)
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+po} & -\/ A particle \\
|
|
\hline
|
|
{\em \+\_\+indice} & -\/ The indice (into the topology) of the given particle \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
\end{DoxyItemize}
|
|
|
|
Implements \mbox{\hyperlink{classeo_b_f_aa03c40b95210569b826df79a2237a0d0}{eo\+B\+F$<$ P\+O\+T \&, unsigned, void $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}\label{classeo_constricted_velocity_af5d931c8338d40270c638354da86b18a}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::operator() (\begin{DoxyParamCaption}\item[{P\+OT \&}]{\+\_\+po, }\item[{unsigned}]{\+\_\+indice }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Evaluate the new velocities of the given particle. Need an indice to identify the particle into the topology. Steps are \+:
|
|
\begin{DoxyItemize}
|
|
\item evaluate r1 and r2, the customed learning factors
|
|
\item adjust the size of the bounds (even if dummy)
|
|
\item modify the bounds with the bounds modifier (use the dummy modifier if there\textquotesingle{}s no modifier provided)
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+po} & -\/ A particle \\
|
|
\hline
|
|
{\em \+\_\+indice} & -\/ The indice (into the topology) of the given particle \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
\end{DoxyItemize}
|
|
|
|
Implements \mbox{\hyperlink{classeo_b_f_aa03c40b95210569b826df79a2237a0d0}{eo\+B\+F$<$ P\+O\+T \&, unsigned, void $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}\label{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!updateNeighborhood@{updateNeighborhood}}
|
|
\index{updateNeighborhood@{updateNeighborhood}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{updateNeighborhood()}{updateNeighborhood()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::update\+Neighborhood (\begin{DoxyParamCaption}\item[{P\+OT \&}]{\+\_\+po, }\item[{unsigned}]{\+\_\+indice }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Update the neighborhood of a particle.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classeo_velocity_a5e2310d90e8bc72782f4c865706b4549}{eo\+Velocity$<$ P\+O\+T $>$}}.
|
|
|
|
\mbox{\Hypertarget{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}\label{classeo_constricted_velocity_a32564a70ed86e69b5f9b716a9f42a6f0}}
|
|
\index{eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}!updateNeighborhood@{updateNeighborhood}}
|
|
\index{updateNeighborhood@{updateNeighborhood}!eoConstrictedVelocity$<$ POT $>$@{eoConstrictedVelocity$<$ POT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{updateNeighborhood()}{updateNeighborhood()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class P\+OT $>$ \\
|
|
void \mbox{\hyperlink{classeo_constricted_velocity}{eo\+Constricted\+Velocity}}$<$ P\+OT $>$\+::update\+Neighborhood (\begin{DoxyParamCaption}\item[{P\+OT \&}]{\+\_\+po, }\item[{unsigned}]{\+\_\+indice }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
|
|
|
|
Update the neighborhood of a particle.
|
|
|
|
Reimplemented from \mbox{\hyperlink{classeo_velocity_a5e2310d90e8bc72782f4c865706b4549}{eo\+Velocity$<$ P\+O\+T $>$}}.
|
|
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
deprecated/eo/src/eo\+Constricted\+Velocity.\+h\end{DoxyCompactItemize}
|