\hypertarget{classeo_constricted_variable_weight_velocity}{}\doxysection{eo\+Constricted\+Variable\+Weight\+Velocity$<$ P\+OT $>$ Class Template Reference} \label{classeo_constricted_variable_weight_velocity}\index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} {\ttfamily \#include $<$eo\+Constricted\+Variable\+Weight\+Velocity.\+h$>$} Inheritance diagram for eo\+Constricted\+Variable\+Weight\+Velocity$<$ P\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=334pt]{classeo_constricted_variable_weight_velocity__inherit__graph} \end{center} \end{figure} Collaboration diagram for eo\+Constricted\+Variable\+Weight\+Velocity$<$ P\+OT $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classeo_constricted_variable_weight_velocity__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_ab4e3d17c01f96f33a328f5748675fb2b}\label{classeo_constricted_variable_weight_velocity_ab4e3d17c01f96f33a328f5748675fb2b}} typedef P\+O\+T\+::\+Particle\+Velocity\+Type {\bfseries Velocity\+Type} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_ab4e3d17c01f96f33a328f5748675fb2b}\label{classeo_constricted_variable_weight_velocity_ab4e3d17c01f96f33a328f5748675fb2b}} typedef P\+O\+T\+::\+Particle\+Velocity\+Type {\bfseries Velocity\+Type} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, 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_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, 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_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng) \item void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}{operator()}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice) \item void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}{update\+Neighborhood}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice) \item \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, 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_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, 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_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&\+\_\+topology, const Velocity\+Type \&\+\_\+coeff, \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&\+\_\+weight\+Updater, const Velocity\+Type \&\+\_\+c1, const Velocity\+Type \&\+\_\+c2, \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \&\+\_\+gen=rng) \item void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}{operator()}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice) \item void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}{update\+Neighborhood}} (P\+OT \&\+\_\+po, unsigned \+\_\+indice) \end{DoxyCompactItemize} \doxysubsection*{Protected Attributes} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_ae6f353f7c6e0158ec4b9597d3b491c2e}\label{classeo_constricted_variable_weight_velocity_ae6f353f7c6e0158ec4b9597d3b491c2e}} \mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \& {\bfseries topology} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_abb108b5e979716e59e772c1bbb695a59}\label{classeo_constricted_variable_weight_velocity_abb108b5e979716e59e772c1bbb695a59}} const Velocity\+Type \& {\bfseries coeff} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_af3adac63cb5fb865b65c07fc7d828428}\label{classeo_constricted_variable_weight_velocity_af3adac63cb5fb865b65c07fc7d828428}} \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \& {\bfseries weight\+Updater} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a9472a21a39aa7395c739f267558b9336}\label{classeo_constricted_variable_weight_velocity_a9472a21a39aa7395c739f267558b9336}} const Velocity\+Type \& {\bfseries c1} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_aca45f253d9314b7deb188b9d38e55718}\label{classeo_constricted_variable_weight_velocity_aca45f253d9314b7deb188b9d38e55718}} const Velocity\+Type \& {\bfseries c2} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a75f9db8db1fabbcd4a48a619a1178085}\label{classeo_constricted_variable_weight_velocity_a75f9db8db1fabbcd4a48a619a1178085}} \mbox{\hyperlink{classeo_real_vector_bounds}{eo\+Real\+Vector\+Bounds}} \& {\bfseries bounds} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a71dc36ca172a763c4c2c6ad6852c6753}\label{classeo_constricted_variable_weight_velocity_a71dc36ca172a763c4c2c6ad6852c6753}} \mbox{\hyperlink{classeo_real_bound_modifier}{eo\+Real\+Bound\+Modifier}} \& {\bfseries bnds\+Modifier} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a2da35bab03a96a465967e2346cfd0b86}\label{classeo_constricted_variable_weight_velocity_a2da35bab03a96a465967e2346cfd0b86}} Velocity\+Type {\bfseries weight} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a962a42594cbfb1aa7718d39bc474699f}\label{classeo_constricted_variable_weight_velocity_a962a42594cbfb1aa7718d39bc474699f}} \mbox{\hyperlink{classeo_rng}{eo\+Rng}} \& {\bfseries gen} \item \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_af4ccc1e7def74d83a990873234337eef}\label{classeo_constricted_variable_weight_velocity_af4ccc1e7def74d83a990873234337eef}} \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\+Variable\+Weight\+Velocity$<$ P\+O\+T $>$} Inertia variable + constriction velocity for particle swarm optimization. Derivated from abstract \mbox{\hyperlink{classeo_velocity}{eo\+Velocity}}, At step t\+: v(t+1)= K $\ast$ ( w$\ast$v(t) + c1$\ast$r1$\ast$ (xbest(t)-\/x(t)) + c2$\ast$r2$\ast$ (gbest(t) -\/ x(t))) w is updated each time the velocity performer is called and K is fixed (ci given and Ri chosen at random in \mbox{[}0;1\mbox{]}). \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}\label{classeo_constricted_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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 \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}\label{classeo_constricted_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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 \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}\label{classeo_constricted_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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$\ast$ \\ \hline {\em \+\_\+coeff} & -\/ The constriction coefficient \\ \hline {\em \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}\label{classeo_constricted_variable_weight_velocity_a9d62a80a2608da618dbe3b6ed64df87c}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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 \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}\label{classeo_constricted_variable_weight_velocity_a8f00d339d58dbecb02c97cad85b5b5d1}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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 \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}\label{classeo_constricted_variable_weight_velocity_a4e923acdc003247c6cc1a9732c8708f3}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}} \index{eoConstrictedVariableWeightVelocity@{eoConstrictedVariableWeightVelocity}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{eoConstrictedVariableWeightVelocity()}{eoConstrictedVariableWeightVelocity()}\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}}$<$ P\+OT $>$\+::\mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+Velocity}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_topology}{eo\+Topology}}$<$ P\+OT $>$ \&}]{\+\_\+topology, }\item[{const Velocity\+Type \&}]{\+\_\+coeff, }\item[{\mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}}$<$ Velocity\+Type $>$ \&}]{\+\_\+weight\+Updater, }\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$\ast$ \\ \hline {\em \+\_\+coeff} & -\/ The constriction coefficient \\ \hline {\em \+\_\+weight\+Updater} & -\/ An \mbox{\hyperlink{classeo_weight_updater}{eo\+Weight\+Updater}} used to update the inertia weight \\ \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_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}\label{classeo_constricted_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!operator()@{operator()}} \index{operator()@{operator()}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+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 update the weight with the weight\+Updater (use the dummy updater if there\textquotesingle{}s no updater provided) \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_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}\label{classeo_constricted_variable_weight_velocity_a21385fa595fe01442d9452113268f7a4}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!operator()@{operator()}} \index{operator()@{operator()}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+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 update the weight with the weight\+Updater (use the dummy updater if there\textquotesingle{}s no updater provided) \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_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}\label{classeo_constricted_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!updateNeighborhood@{updateNeighborhood}} \index{updateNeighborhood@{updateNeighborhood}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{updateNeighborhood()}{updateNeighborhood()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+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. Reimplemented from \mbox{\hyperlink{classeo_velocity_a5e2310d90e8bc72782f4c865706b4549}{eo\+Velocity$<$ P\+O\+T $>$}}. \mbox{\Hypertarget{classeo_constricted_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}\label{classeo_constricted_variable_weight_velocity_abbf7fb28e7b4a65e33d6154c3e996889}} \index{eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}!updateNeighborhood@{updateNeighborhood}} \index{updateNeighborhood@{updateNeighborhood}!eoConstrictedVariableWeightVelocity$<$ POT $>$@{eoConstrictedVariableWeightVelocity$<$ POT $>$}} \doxysubsubsection{\texorpdfstring{updateNeighborhood()}{updateNeighborhood()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$class P\+OT $>$ \\ void \mbox{\hyperlink{classeo_constricted_variable_weight_velocity}{eo\+Constricted\+Variable\+Weight\+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. 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\+Variable\+Weight\+Velocity.\+h\end{DoxyCompactItemize}