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

339 lines
26 KiB
TeX

\hypertarget{classmoeo_n_s_g_a}{}\doxysection{moeo\+N\+S\+GA$<$ M\+O\+E\+OT $>$ Class Template Reference}
\label{classmoeo_n_s_g_a}\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
{\ttfamily \#include $<$moeo\+N\+S\+G\+A.\+h$>$}
Inheritance diagram for moeo\+N\+S\+GA$<$ M\+O\+E\+OT $>$\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=348pt]{classmoeo_n_s_g_a__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for moeo\+N\+S\+GA$<$ M\+O\+E\+OT $>$\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classmoeo_n_s_g_a__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Classes}
\begin{DoxyCompactItemize}
\item
class \mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_eval}{Dummy\+Eval}}
\item
class \mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_select}{Dummy\+Select}}
\item
class \mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_transform}{Dummy\+Transform}}
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classmoeo_n_s_g_a_a7c7b4bb55b7ee74da780f20a943809fd}{moeo\+N\+S\+GA}} (unsigned int \+\_\+max\+Gen, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classeo_quad_op}{eo\+Quad\+Op}}$<$ M\+O\+E\+OT $>$ \&\+\_\+crossover, double \+\_\+p\+Cross, \mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ M\+O\+E\+OT $>$ \&\+\_\+mutation, double \+\_\+p\+Mut, double \+\_\+niche\+Size=0.\+5)
\item
\mbox{\hyperlink{classmoeo_n_s_g_a_a5f8a315499cb7e65911af0c7587144d8}{moeo\+N\+S\+GA}} (\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continuator, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \&\+\_\+op, double \+\_\+niche\+Size=0.\+5)
\item
\mbox{\hyperlink{classmoeo_n_s_g_a_a7f9b8318abdcd8569f1102067183834b}{moeo\+N\+S\+GA}} (\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continuator, \mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop\+Eval, \mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \&\+\_\+op, double \+\_\+niche\+Size=0.\+5)
\item
\mbox{\hyperlink{classmoeo_n_s_g_a_af2cbd42f833951b0e570bd42a687413b}{moeo\+N\+S\+GA}} (\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continuator, \mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+eval, \mbox{\hyperlink{classeo_transform}{eo\+Transform}}$<$ M\+O\+E\+OT $>$ \&\+\_\+transform, double \+\_\+niche\+Size=0.\+5)
\item
\mbox{\hyperlink{classmoeo_n_s_g_a_aa7b6161f8474400dec44fd71a226696b}{moeo\+N\+S\+GA}} (\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&\+\_\+continuator, \mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop\+Eval, \mbox{\hyperlink{classeo_transform}{eo\+Transform}}$<$ M\+O\+E\+OT $>$ \&\+\_\+transform, double \+\_\+niche\+Size=0.\+5)
\item
virtual void \mbox{\hyperlink{classmoeo_n_s_g_a_a632676ceb299f3318c116b2b2b386b0d}{operator()}} (\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop)
\end{DoxyCompactItemize}
\doxysubsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{classeo_gen_continue}{eo\+Gen\+Continue}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a6dbb57c19ff00085df8397cebcce066d}{default\+Gen\+Continuator}}
\item
\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \& \mbox{\hyperlink{classmoeo_n_s_g_a_aef67320e3820548b333577b33430fcbe}{continuator}}
\item
\mbox{\Hypertarget{classmoeo_n_s_g_a_a1a1d68525a5157e6fe27756aea4752ba}\label{classmoeo_n_s_g_a_a1a1d68525a5157e6fe27756aea4752ba}}
\mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_eval}{moeo\+N\+S\+G\+A\+::\+Dummy\+Eval}} {\bfseries default\+Eval}
\item
\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \& \mbox{\hyperlink{classmoeo_n_s_g_a_a87345f8077934415a6f3155d19385857}{eval}}
\item
\mbox{\hyperlink{classeo_pop_loop_eval}{eo\+Pop\+Loop\+Eval}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a8cc5104b7020dfd7102a26dd52a4040f}{default\+Pop\+Eval}}
\item
\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \& \mbox{\hyperlink{classmoeo_n_s_g_a_a0836d3025e44aea04788591504b96b83}{pop\+Eval}}
\item
\mbox{\Hypertarget{classmoeo_n_s_g_a_af4629b804461b35c6e72ef94c1d44d34}\label{classmoeo_n_s_g_a_af4629b804461b35c6e72ef94c1d44d34}}
\mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_select}{moeo\+N\+S\+G\+A\+::\+Dummy\+Select}} {\bfseries default\+Select}
\item
\mbox{\hyperlink{classmoeo_det_tournament_select}{moeo\+Det\+Tournament\+Select}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_affd95fab4aed24fc866334c28e77a666}{select}}
\item
\mbox{\hyperlink{classeo_select_many}{eo\+Select\+Many}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a704e83818f394be387d4e763f65fb7e7}{select\+Many}}
\item
\mbox{\hyperlink{classeo_select_transform}{eo\+Select\+Transform}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_adfe6470d8533e2f09e1bde04013e1060}{select\+Transform}}
\item
\mbox{\hyperlink{classeo_quad_clone_op}{eo\+Quad\+Clone\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a32a1b0efe480b7512f52287fa93897e1}{default\+Quad\+Op}}
\item
\mbox{\hyperlink{classeo_mon_clone_op}{eo\+Mon\+Clone\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_aafcaf88ba19e1416e077f318272182e0}{default\+Mon\+Op}}
\item
\mbox{\hyperlink{classeo_s_g_a_gen_op}{eo\+S\+G\+A\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a879b4451e77b627705280373ff0a26ab}{default\+S\+G\+A\+Gen\+Op}}
\item
\mbox{\Hypertarget{classmoeo_n_s_g_a_ae49824c1d44491dedc28ecaec4217e06}\label{classmoeo_n_s_g_a_ae49824c1d44491dedc28ecaec4217e06}}
\mbox{\hyperlink{classmoeo_n_s_g_a_1_1_dummy_transform}{moeo\+N\+S\+G\+A\+::\+Dummy\+Transform}} {\bfseries default\+Transform}
\item
\mbox{\hyperlink{classeo_general_breeder}{eo\+General\+Breeder}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a3ee7a5ea8ed71859ea544741de9989f2}{gen\+Breed}}
\item
\mbox{\hyperlink{classeo_breed}{eo\+Breed}}$<$ M\+O\+E\+OT $>$ \& \mbox{\hyperlink{classmoeo_n_s_g_a_a1538e7c32062d9d9c634b9948ca28000}{breed}}
\item
\mbox{\hyperlink{classmoeo_dominance_depth_fitness_assignment}{moeo\+Dominance\+Depth\+Fitness\+Assignment}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_aeef51e1c2a2abb750c03025ac2255c37}{fitness\+Assignment}}
\item
\mbox{\hyperlink{classmoeo_front_by_front_sharing_diversity_assignment}{moeo\+Front\+By\+Front\+Sharing\+Diversity\+Assignment}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_ae361fa8aed173619e2aae64dba0c504a}{diversity\+Assignment}}
\item
\mbox{\hyperlink{classmoeo_elitist_replacement}{moeo\+Elitist\+Replacement}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a_a8470efa1ef87b6448f081ec802858a8c}{replace}}
\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}
\doxysubsection{Detailed Description}
\subsubsection*{template$<$class M\+O\+E\+OT$>$\newline
class moeo\+N\+S\+G\+A$<$ M\+O\+E\+O\+T $>$}
N\+S\+GA (Non-\/dominated Sorting Genetic Algorithm). N. Srinivas, K. Deb, \char`\"{}\+Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms\char`\"{}. Evolutionary Computation, Vol. 2(3), No 2, pp. 221-\/248 (1994). This class builds the N\+S\+GA algorithm only by using the fine-\/grained components of the Paradis\+E\+O-\/\+M\+O\+EO framework.
\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classmoeo_n_s_g_a_a7c7b4bb55b7ee74da780f20a943809fd}\label{classmoeo_n_s_g_a_a7c7b4bb55b7ee74da780f20a943809fd}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!moeoNSGA@{moeoNSGA}}
\index{moeoNSGA@{moeoNSGA}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{moeoNSGA()}{moeoNSGA()}\hspace{0.1cm}{\footnotesize\ttfamily [1/5]}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}} (\begin{DoxyParamCaption}\item[{unsigned int}]{\+\_\+max\+Gen, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classeo_quad_op}{eo\+Quad\+Op}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+crossover, }\item[{double}]{\+\_\+p\+Cross, }\item[{\mbox{\hyperlink{classeo_mon_op}{eo\+Mon\+Op}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+mutation, }\item[{double}]{\+\_\+p\+Mut, }\item[{double}]{\+\_\+niche\+Size = {\ttfamily 0.5} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Ctor with a crossover, a mutation and their corresponding rates.
\begin{DoxyParams}{Parameters}
{\em \+\_\+max\+Gen} & maximum number of generations before stopping \\
\hline
{\em \+\_\+eval} & evaluation function \\
\hline
{\em \+\_\+crossover} & crossover \\
\hline
{\em \+\_\+p\+Cross} & crossover probability \\
\hline
{\em \+\_\+mutation} & mutation \\
\hline
{\em \+\_\+p\+Mut} & mutation probability \\
\hline
{\em \+\_\+niche\+Size} & niche size \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classmoeo_n_s_g_a_a5f8a315499cb7e65911af0c7587144d8}\label{classmoeo_n_s_g_a_a5f8a315499cb7e65911af0c7587144d8}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!moeoNSGA@{moeoNSGA}}
\index{moeoNSGA@{moeoNSGA}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{moeoNSGA()}{moeoNSGA()}\hspace{0.1cm}{\footnotesize\ttfamily [2/5]}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continuator, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+op, }\item[{double}]{\+\_\+niche\+Size = {\ttfamily 0.5} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Ctor with a \mbox{\hyperlink{classeo_continue}{eo\+Continue}} and a \mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}.
\begin{DoxyParams}{Parameters}
{\em \+\_\+continuator} & stopping criteria \\
\hline
{\em \+\_\+eval} & evaluation function \\
\hline
{\em \+\_\+op} & variation operators \\
\hline
{\em \+\_\+niche\+Size} & niche size \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classmoeo_n_s_g_a_a7f9b8318abdcd8569f1102067183834b}\label{classmoeo_n_s_g_a_a7f9b8318abdcd8569f1102067183834b}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!moeoNSGA@{moeoNSGA}}
\index{moeoNSGA@{moeoNSGA}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{moeoNSGA()}{moeoNSGA()}\hspace{0.1cm}{\footnotesize\ttfamily [3/5]}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continuator, }\item[{\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop\+Eval, }\item[{\mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+op, }\item[{double}]{\+\_\+niche\+Size = {\ttfamily 0.5} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Ctor with a \mbox{\hyperlink{classeo_continue}{eo\+Continue}}, a eo\+Pop\+Eval and a \mbox{\hyperlink{classeo_gen_op}{eo\+Gen\+Op}}.
\begin{DoxyParams}{Parameters}
{\em \+\_\+continuator} & stopping criteria \\
\hline
{\em \+\_\+pop\+Eval} & population evaluation function \\
\hline
{\em \+\_\+op} & variation operators \\
\hline
{\em \+\_\+niche\+Size} & niche size \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classmoeo_n_s_g_a_af2cbd42f833951b0e570bd42a687413b}\label{classmoeo_n_s_g_a_af2cbd42f833951b0e570bd42a687413b}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!moeoNSGA@{moeoNSGA}}
\index{moeoNSGA@{moeoNSGA}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{moeoNSGA()}{moeoNSGA()}\hspace{0.1cm}{\footnotesize\ttfamily [4/5]}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continuator, }\item[{\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+eval, }\item[{\mbox{\hyperlink{classeo_transform}{eo\+Transform}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+transform, }\item[{double}]{\+\_\+niche\+Size = {\ttfamily 0.5} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Ctor with a \mbox{\hyperlink{classeo_continue}{eo\+Continue}} and a \mbox{\hyperlink{classeo_transform}{eo\+Transform}}.
\begin{DoxyParams}{Parameters}
{\em \+\_\+continuator} & stopping criteria \\
\hline
{\em \+\_\+eval} & evaluation function \\
\hline
{\em \+\_\+transform} & variation operator \\
\hline
{\em \+\_\+niche\+Size} & niche size \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classmoeo_n_s_g_a_aa7b6161f8474400dec44fd71a226696b}\label{classmoeo_n_s_g_a_aa7b6161f8474400dec44fd71a226696b}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!moeoNSGA@{moeoNSGA}}
\index{moeoNSGA@{moeoNSGA}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{moeoNSGA()}{moeoNSGA()}\hspace{0.1cm}{\footnotesize\ttfamily [5/5]}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+continuator, }\item[{\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop\+Eval, }\item[{\mbox{\hyperlink{classeo_transform}{eo\+Transform}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+transform, }\item[{double}]{\+\_\+niche\+Size = {\ttfamily 0.5} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
Ctor with a \mbox{\hyperlink{classeo_continue}{eo\+Continue}}, a eo\+Pop\+Eval and a \mbox{\hyperlink{classeo_transform}{eo\+Transform}}.
\begin{DoxyParams}{Parameters}
{\em \+\_\+continuator} & stopping criteria \\
\hline
{\em \+\_\+pop\+Eval} & population evaluation function \\
\hline
{\em \+\_\+transform} & variation operator \\
\hline
{\em \+\_\+niche\+Size} & niche size \\
\hline
\end{DoxyParams}
\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classmoeo_n_s_g_a_a632676ceb299f3318c116b2b2b386b0d}\label{classmoeo_n_s_g_a_a632676ceb299f3318c116b2b2b386b0d}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!operator()@{operator()}}
\index{operator()@{operator()}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
virtual void \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::operator() (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}
Apply the algorithm to the population \+\_\+pop until the stopping criteria is satified.
\begin{DoxyParams}{Parameters}
{\em \+\_\+pop} & the population \\
\hline
\end{DoxyParams}
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ eo\+Pop$<$ M\+O\+E\+O\+T $>$ \&, void $>$}}.
\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{classmoeo_n_s_g_a_a1538e7c32062d9d9c634b9948ca28000}\label{classmoeo_n_s_g_a_a1538e7c32062d9d9c634b9948ca28000}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!breed@{breed}}
\index{breed@{breed}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{breed}{breed}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_breed}{eo\+Breed}}$<$ M\+O\+E\+OT $>$\& \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::breed\hspace{0.3cm}{\ttfamily [protected]}}
breeder \mbox{\Hypertarget{classmoeo_n_s_g_a_aef67320e3820548b333577b33430fcbe}\label{classmoeo_n_s_g_a_aef67320e3820548b333577b33430fcbe}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!continuator@{continuator}}
\index{continuator@{continuator}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{continuator}{continuator}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_continue}{eo\+Continue}}$<$ M\+O\+E\+OT $>$\& \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::continuator\hspace{0.3cm}{\ttfamily [protected]}}
stopping criteria \mbox{\Hypertarget{classmoeo_n_s_g_a_a6dbb57c19ff00085df8397cebcce066d}\label{classmoeo_n_s_g_a_a6dbb57c19ff00085df8397cebcce066d}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!defaultGenContinuator@{defaultGenContinuator}}
\index{defaultGenContinuator@{defaultGenContinuator}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{defaultGenContinuator}{defaultGenContinuator}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_gen_continue}{eo\+Gen\+Continue}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::default\+Gen\+Continuator\hspace{0.3cm}{\ttfamily [protected]}}
a continuator based on the number of generations (used as default) \mbox{\Hypertarget{classmoeo_n_s_g_a_aafcaf88ba19e1416e077f318272182e0}\label{classmoeo_n_s_g_a_aafcaf88ba19e1416e077f318272182e0}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!defaultMonOp@{defaultMonOp}}
\index{defaultMonOp@{defaultMonOp}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{defaultMonOp}{defaultMonOp}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_mon_clone_op}{eo\+Mon\+Clone\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::default\+Mon\+Op\hspace{0.3cm}{\ttfamily [protected]}}
a default mutation \mbox{\Hypertarget{classmoeo_n_s_g_a_a8cc5104b7020dfd7102a26dd52a4040f}\label{classmoeo_n_s_g_a_a8cc5104b7020dfd7102a26dd52a4040f}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!defaultPopEval@{defaultPopEval}}
\index{defaultPopEval@{defaultPopEval}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{defaultPopEval}{defaultPopEval}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_pop_loop_eval}{eo\+Pop\+Loop\+Eval}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::default\+Pop\+Eval\hspace{0.3cm}{\ttfamily [protected]}}
default pop\+Eval \mbox{\Hypertarget{classmoeo_n_s_g_a_a32a1b0efe480b7512f52287fa93897e1}\label{classmoeo_n_s_g_a_a32a1b0efe480b7512f52287fa93897e1}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!defaultQuadOp@{defaultQuadOp}}
\index{defaultQuadOp@{defaultQuadOp}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{defaultQuadOp}{defaultQuadOp}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_quad_clone_op}{eo\+Quad\+Clone\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::default\+Quad\+Op\hspace{0.3cm}{\ttfamily [protected]}}
a default crossover \mbox{\Hypertarget{classmoeo_n_s_g_a_a879b4451e77b627705280373ff0a26ab}\label{classmoeo_n_s_g_a_a879b4451e77b627705280373ff0a26ab}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!defaultSGAGenOp@{defaultSGAGenOp}}
\index{defaultSGAGenOp@{defaultSGAGenOp}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{defaultSGAGenOp}{defaultSGAGenOp}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_s_g_a_gen_op}{eo\+S\+G\+A\+Gen\+Op}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::default\+S\+G\+A\+Gen\+Op\hspace{0.3cm}{\ttfamily [protected]}}
an object for genetic operators (used as default) \mbox{\Hypertarget{classmoeo_n_s_g_a_ae361fa8aed173619e2aae64dba0c504a}\label{classmoeo_n_s_g_a_ae361fa8aed173619e2aae64dba0c504a}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!diversityAssignment@{diversityAssignment}}
\index{diversityAssignment@{diversityAssignment}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{diversityAssignment}{diversityAssignment}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_front_by_front_sharing_diversity_assignment}{moeo\+Front\+By\+Front\+Sharing\+Diversity\+Assignment}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::diversity\+Assignment\hspace{0.3cm}{\ttfamily [protected]}}
diversity assignment used in N\+S\+G\+A-\/\+II \mbox{\Hypertarget{classmoeo_n_s_g_a_a87345f8077934415a6f3155d19385857}\label{classmoeo_n_s_g_a_a87345f8077934415a6f3155d19385857}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!eval@{eval}}
\index{eval@{eval}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{eval}{eval}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_eval_func}{eo\+Eval\+Func}}$<$ M\+O\+E\+OT $>$\& \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::eval\hspace{0.3cm}{\ttfamily [protected]}}
evaluation function \mbox{\Hypertarget{classmoeo_n_s_g_a_aeef51e1c2a2abb750c03025ac2255c37}\label{classmoeo_n_s_g_a_aeef51e1c2a2abb750c03025ac2255c37}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!fitnessAssignment@{fitnessAssignment}}
\index{fitnessAssignment@{fitnessAssignment}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{fitnessAssignment}{fitnessAssignment}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_dominance_depth_fitness_assignment}{moeo\+Dominance\+Depth\+Fitness\+Assignment}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::fitness\+Assignment\hspace{0.3cm}{\ttfamily [protected]}}
fitness assignment used in N\+S\+G\+A-\/\+II \mbox{\Hypertarget{classmoeo_n_s_g_a_a3ee7a5ea8ed71859ea544741de9989f2}\label{classmoeo_n_s_g_a_a3ee7a5ea8ed71859ea544741de9989f2}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!genBreed@{genBreed}}
\index{genBreed@{genBreed}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{genBreed}{genBreed}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_general_breeder}{eo\+General\+Breeder}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::gen\+Breed\hspace{0.3cm}{\ttfamily [protected]}}
general breeder \mbox{\Hypertarget{classmoeo_n_s_g_a_a0836d3025e44aea04788591504b96b83}\label{classmoeo_n_s_g_a_a0836d3025e44aea04788591504b96b83}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!popEval@{popEval}}
\index{popEval@{popEval}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{popEval}{popEval}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_pop_eval_func}{eo\+Pop\+Eval\+Func}}$<$ M\+O\+E\+OT $>$\& \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::pop\+Eval\hspace{0.3cm}{\ttfamily [protected]}}
evaluation function used to evaluate the whole population \mbox{\Hypertarget{classmoeo_n_s_g_a_a8470efa1ef87b6448f081ec802858a8c}\label{classmoeo_n_s_g_a_a8470efa1ef87b6448f081ec802858a8c}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!replace@{replace}}
\index{replace@{replace}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{replace}{replace}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_elitist_replacement}{moeo\+Elitist\+Replacement}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::replace\hspace{0.3cm}{\ttfamily [protected]}}
elitist replacement \mbox{\Hypertarget{classmoeo_n_s_g_a_affd95fab4aed24fc866334c28e77a666}\label{classmoeo_n_s_g_a_affd95fab4aed24fc866334c28e77a666}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!select@{select}}
\index{select@{select}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{select}{select}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classmoeo_det_tournament_select}{moeo\+Det\+Tournament\+Select}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::select\hspace{0.3cm}{\ttfamily [protected]}}
binary tournament selection \mbox{\Hypertarget{classmoeo_n_s_g_a_a704e83818f394be387d4e763f65fb7e7}\label{classmoeo_n_s_g_a_a704e83818f394be387d4e763f65fb7e7}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!selectMany@{selectMany}}
\index{selectMany@{selectMany}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{selectMany}{selectMany}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_select_many}{eo\+Select\+Many}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::select\+Many\hspace{0.3cm}{\ttfamily [protected]}}
default select many \mbox{\Hypertarget{classmoeo_n_s_g_a_adfe6470d8533e2f09e1bde04013e1060}\label{classmoeo_n_s_g_a_adfe6470d8533e2f09e1bde04013e1060}}
\index{moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}!selectTransform@{selectTransform}}
\index{selectTransform@{selectTransform}!moeoNSGA$<$ MOEOT $>$@{moeoNSGA$<$ MOEOT $>$}}
\doxysubsubsection{\texorpdfstring{selectTransform}{selectTransform}}
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
\mbox{\hyperlink{classeo_select_transform}{eo\+Select\+Transform}}$<$ M\+O\+E\+OT $>$ \mbox{\hyperlink{classmoeo_n_s_g_a}{moeo\+N\+S\+GA}}$<$ M\+O\+E\+OT $>$\+::select\+Transform\hspace{0.3cm}{\ttfamily [protected]}}
select transform
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item
moeo/src/algo/moeo\+N\+S\+G\+A.\+h\end{DoxyCompactItemize}