\hypertarget{classmoeo_v_f_a_s}{}\doxysection{moeo\+V\+F\+AS$<$ M $>$ Class Template Reference} \label{classmoeo_v_f_a_s}\index{moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}} Variable fitness assignment search (vfas) {\ttfamily \#include $<$moeo\+V\+F\+A\+S.\+h$>$} Inheritance diagram for moeo\+V\+F\+AS$<$ M $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmoeo_v_f_a_s__inherit__graph} \end{center} \end{figure} Collaboration diagram for moeo\+V\+F\+AS$<$ M $>$\+: \nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=350pt]{classmoeo_v_f_a_s__coll__graph} \end{center} \end{figure} \doxysubsection*{Public Types} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{classmoeo_v_f_a_s_afdb14f0628ccf97afc9da8b0c0cb6f1c}\label{classmoeo_v_f_a_s_afdb14f0628ccf97afc9da8b0c0cb6f1c}} typedef M\+::\+E\+O\+Type {\bfseries M\+O\+E\+OT} \item \mbox{\Hypertarget{classmoeo_v_f_a_s_a2cdbbaff2c6a600e01d50917fc7a5a4f}\label{classmoeo_v_f_a_s_a2cdbbaff2c6a600e01d50917fc7a5a4f}} typedef M\+O\+E\+O\+T\+::\+Objective\+Vector {\bfseries Objective\+Vector} \item \mbox{\Hypertarget{classmoeo_v_f_a_s_a805ecb7254b1bf02ba394d3ddd9a5ebc}\label{classmoeo_v_f_a_s_a805ecb7254b1bf02ba394d3ddd9a5ebc}} typedef M\+O\+E\+O\+T\+::\+Fitness {\bfseries Fitness} \end{DoxyCompactItemize} \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classmoeo_v_f_a_s_aeeec42003e4f849d5e08b34eeeff1c92}{moeo\+V\+F\+AS}} (\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&\+\_\+algorithm, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continue, \mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&\+\_\+select, std\+::vector$<$ double $>$ \&\+\_\+weights, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&\+\_\+wstrat) \item \mbox{\hyperlink{classmoeo_v_f_a_s_af33f4d5827ab32b45f0be9237f29a0ba}{moeo\+V\+F\+AS}} (\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&\+\_\+algorithm, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continue, \mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&\+\_\+select, std\+::vector$<$ double $>$ \&\+\_\+weights, Objective\+Vector \&\+\_\+ref\+Point, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&\+\_\+wstrat, \mbox{\hyperlink{classmoeo_variable_ref_point_strategy}{moeo\+Variable\+Ref\+Point\+Strategy}}$<$ M\+O\+E\+OT $>$ \&\+\_\+rstrat) \item \mbox{\hyperlink{classmoeo_v_f_a_s_a28a8a031ace5617cac14f30b32d0006d}{moeo\+V\+F\+AS}} (\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&\+\_\+algorithm, \mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continue, \mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&\+\_\+select, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&\+\_\+wstrat) \item virtual void \mbox{\hyperlink{classmoeo_v_f_a_s_a16dbf58e691d94895df34346faa97b2e}{operator()}} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop) \end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} \subsubsection*{template$<$class M$>$\newline class moeo\+V\+F\+A\+S$<$ M $>$} Variable fitness assignment search (vfas) Search using multiple fitness assignment to search solution to a multi objective problem \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classmoeo_v_f_a_s_aeeec42003e4f849d5e08b34eeeff1c92}\label{classmoeo_v_f_a_s_aeeec42003e4f849d5e08b34eeeff1c92}} \index{moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}!moeoVFAS@{moeoVFAS}} \index{moeoVFAS@{moeoVFAS}!moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}} \doxysubsubsection{\texorpdfstring{moeoVFAS()}{moeoVFAS()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} {\footnotesize\ttfamily template$<$class M $>$ \\ \mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}}$<$ M $>$\+::\mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+algorithm, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continue, }\item[{\mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+select, }\item[{std\+::vector$<$ double $>$ \&}]{\+\_\+weights, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+wstrat }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} constructor using a mo\+Algo and a vector of weight take a base vector of weight, and modify it to relaunch the algo with a diferent fitness use a select\+One to determine which moeot should be the base for the algo launch use a \mbox{\hyperlink{classeo_pop}{eo\+Pop}} to keep result from each iteration \begin{DoxyParams}{Parameters} {\em \+\_\+algorithm} & The solution based heuristic to use. It should at least use the fitness value at some point. \\ \hline {\em \+\_\+continue} & The stopping criterion. \\ \hline {\em \+\_\+select} & a selector to choose on which moeot we use the algorithm \\ \hline {\em \+\_\+weights} & a vector containing the base weights, which will be changed at each iteration. \\ \hline {\em \+\_\+eval} & The evaluation function. \\ \hline {\em \+\_\+wstrat} & the strategy to change weights (should be constructed with the same weights as the fitness) \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classmoeo_v_f_a_s_af33f4d5827ab32b45f0be9237f29a0ba}\label{classmoeo_v_f_a_s_af33f4d5827ab32b45f0be9237f29a0ba}} \index{moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}!moeoVFAS@{moeoVFAS}} \index{moeoVFAS@{moeoVFAS}!moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}} \doxysubsubsection{\texorpdfstring{moeoVFAS()}{moeoVFAS()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} {\footnotesize\ttfamily template$<$class M $>$ \\ \mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}}$<$ M $>$\+::\mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+algorithm, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continue, }\item[{\mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+select, }\item[{std\+::vector$<$ double $>$ \&}]{\+\_\+weights, }\item[{Objective\+Vector \&}]{\+\_\+ref\+Point, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+wstrat, }\item[{\mbox{\hyperlink{classmoeo_variable_ref_point_strategy}{moeo\+Variable\+Ref\+Point\+Strategy}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+rstrat }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} constructor using a mo\+Algo an Objective\+Vector and a vector of weight take a base vector of weight, and modify it to relaunch the algo with a diferent fitness use a select\+One to determine which moeot should be the base for the algo launch use a \mbox{\hyperlink{classeo_pop}{eo\+Pop}} to keep result from each iteration \begin{DoxyParams}{Parameters} {\em \+\_\+algorithm} & The solution based heuristic to use. It should at least use the fitness value at some point. \\ \hline {\em \+\_\+continue} & The stopping criterion. \\ \hline {\em \+\_\+select} & a selector to choose on which moeot we use the algorithm \\ \hline {\em \+\_\+weights} & a vector containing the base weights, which will be changed at each iteration. \\ \hline {\em \+\_\+ref\+Point} & a reference point changed at each iteration \\ \hline {\em \+\_\+eval} & The evaluation function. \\ \hline {\em \+\_\+wstrat} & the strategy to change weights (should be constructed with the same weights as the fitness) \\ \hline {\em \+\_\+rstrat} & the strategy to change the reference point \\ \hline \end{DoxyParams} \mbox{\Hypertarget{classmoeo_v_f_a_s_a28a8a031ace5617cac14f30b32d0006d}\label{classmoeo_v_f_a_s_a28a8a031ace5617cac14f30b32d0006d}} \index{moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}!moeoVFAS@{moeoVFAS}} \index{moeoVFAS@{moeoVFAS}!moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}} \doxysubsubsection{\texorpdfstring{moeoVFAS()}{moeoVFAS()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} {\footnotesize\ttfamily template$<$class M $>$ \\ \mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}}$<$ M $>$\+::\mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmoeo_sol_algo}{moeo\+Sol\+Algo}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+algorithm, }\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continue, }\item[{\mbox{\hyperlink{classmoeo_select_one}{moeo\+Select\+One}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+select, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classmoeo_variable_weight_strategy}{moeo\+Variable\+Weight\+Strategy}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+wstrat }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} constructor without the weights \begin{DoxyParams}{Parameters} {\em \+\_\+algorithm} & The solution based heuristic to use. It should at least use the fitness value at some point. \\ \hline {\em \+\_\+continue} & The stopping criterion. \\ \hline {\em \+\_\+select} & a selector to choose on which moeot we use the algorithm \\ \hline {\em \+\_\+eval} & The evaluation function. \\ \hline {\em \+\_\+wstrat} & the strategy to change weights (should be constructed with the same weights as the fitness) \\ \hline \end{DoxyParams} \doxysubsection{Member Function Documentation} \mbox{\Hypertarget{classmoeo_v_f_a_s_a16dbf58e691d94895df34346faa97b2e}\label{classmoeo_v_f_a_s_a16dbf58e691d94895df34346faa97b2e}} \index{moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}!operator()@{operator()}} \index{operator()@{operator()}!moeoVFAS$<$ M $>$@{moeoVFAS$<$ M $>$}} \doxysubsubsection{\texorpdfstring{operator()()}{operator()()}} {\footnotesize\ttfamily template$<$class M $>$ \\ virtual void \mbox{\hyperlink{classmoeo_v_f_a_s}{moeo\+V\+F\+AS}}$<$ M $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}} launch the algorithm \begin{DoxyParams}{Parameters} {\em \+\_\+pop} & the initial population on which algo will be launched \\ \hline \end{DoxyParams} Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ eo\+Pop$<$ M\+::\+E\+O\+Type $>$ \&, void $>$}}. The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item moeo/src/scalar\+Stuffs/algo/moeo\+V\+F\+A\+S.\+h\end{DoxyCompactItemize}