215 lines
14 KiB
TeX
215 lines
14 KiB
TeX
\hypertarget{classmoeo_fuzzy_archive}{}\doxysection{moeo\+Fuzzy\+Archive$<$ M\+O\+E\+OT $>$ Class Template Reference}
|
|
\label{classmoeo_fuzzy_archive}\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
|
|
|
|
{\ttfamily \#include $<$moeo\+Fuzzy\+Archive.\+h$>$}
|
|
|
|
|
|
|
|
Inheritance diagram for moeo\+Fuzzy\+Archive$<$ M\+O\+E\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classmoeo_fuzzy_archive__inherit__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
|
|
|
|
Collaboration diagram for moeo\+Fuzzy\+Archive$<$ M\+O\+E\+OT $>$\+:
|
|
\nopagebreak
|
|
\begin{figure}[H]
|
|
\begin{center}
|
|
\leavevmode
|
|
\includegraphics[width=350pt]{classmoeo_fuzzy_archive__coll__graph}
|
|
\end{center}
|
|
\end{figure}
|
|
\doxysubsection*{Public Types}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
typedef M\+O\+E\+O\+T\+::\+Objective\+Vector \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classmoeo_fuzzy_archive_a6bb02d0858b4c7d3af7b754006d479f1}{moeo\+Fuzzy\+Archive}} (\mbox{\hyperlink{classmoeo_fuzzy_archive_aa8727ee1d987a2f8c3bdccc580321d11}{Fuzzy\+Comparator}}$<$ \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} $>$ \&\+\_\+comparator, bool \+\_\+replace=true)
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_aac7b2492146fb6b119533fcd3c9c3c2e}{dominates}} (const \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} \&\+\_\+objective\+Vector) const
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_aed209e96a8e293b25a56b715ab80da0b}{contains}} (const \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} \&\+\_\+objective\+Vector) const
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classmoeo_fuzzy_archive_ac22c95c4ba40b74506122f6df42d51c9}{operator()}} (const M\+O\+E\+OT \&\+\_\+moeo)=0
|
|
\item
|
|
virtual bool \mbox{\hyperlink{classmoeo_fuzzy_archive_a873664569397df0c73d2615d1dd2b12b}{operator()}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop)=0
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_ac25d5ca50e42e2082ad5362ec4389cbd}{equals}} (const \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$ \&\+\_\+arch)
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Protected Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_aa92695e121b84518d59463cf49902ed7}{update}} (const M\+O\+E\+OT \&\+\_\+moeo)
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_a9b019c14b5069e013e078a771d4bd49e}{update}} (const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&\+\_\+pop)
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Protected Attributes}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
moeo\+Fuzzy\+Pareto\+Comparator$<$ \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} $>$ \mbox{\hyperlink{classmoeo_fuzzy_archive_aa8727ee1d987a2f8c3bdccc580321d11}{Fuzzy\+Comparator}}
|
|
\item
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive_afbf229fdb48831ab185ad2bd002b6b83}{replace}}
|
|
\end{DoxyCompactItemize}
|
|
\doxysubsection*{Additional Inherited Members}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
\subsubsection*{template$<$class M\+O\+E\+OT$>$\newline
|
|
class moeo\+Fuzzy\+Archive$<$ M\+O\+E\+O\+T $>$}
|
|
|
|
Abstract class for representing an archive in a fuzzy space of solutions; an archive is a secondary population that stores non-\/dominated fuzzy solutions.
|
|
|
|
\doxysubsection{Member Typedef Documentation}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}\label{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!ObjectiveVector@{ObjectiveVector}}
|
|
\index{ObjectiveVector@{ObjectiveVector}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{ObjectiveVector}{ObjectiveVector}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
typedef M\+O\+E\+O\+T\+::\+Objective\+Vector \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}}}
|
|
|
|
The type of an objective vector for a solution
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_a6bb02d0858b4c7d3af7b754006d479f1}\label{classmoeo_fuzzy_archive_a6bb02d0858b4c7d3af7b754006d479f1}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!moeoFuzzyArchive@{moeoFuzzyArchive}}
|
|
\index{moeoFuzzyArchive@{moeoFuzzyArchive}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{moeoFuzzyArchive()}{moeoFuzzyArchive()}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
\mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::\mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classmoeo_fuzzy_archive_aa8727ee1d987a2f8c3bdccc580321d11}{Fuzzy\+Comparator}}$<$ \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} $>$ \&}]{\+\_\+comparator, }\item[{bool}]{\+\_\+replace = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
ctor. The Fuzzy\+Comparator is used to compare fuzzy solutions based on Pareto dominance
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+replace} & boolean which determine if a solution with the same objective\+Vector than another one, can replace it or not \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_aed209e96a8e293b25a56b715ab80da0b}\label{classmoeo_fuzzy_archive_aed209e96a8e293b25a56b715ab80da0b}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!contains@{contains}}
|
|
\index{contains@{contains}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{contains()}{contains()}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::contains (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} \&}]{\+\_\+objective\+Vector }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Returns true if the current archive already contains a solution with the same objective values than \+\_\+objective\+Vector
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+objective\+Vector} & the objective vector to compare with the current archive \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_aac7b2492146fb6b119533fcd3c9c3c2e}\label{classmoeo_fuzzy_archive_aac7b2492146fb6b119533fcd3c9c3c2e}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!dominates@{dominates}}
|
|
\index{dominates@{dominates}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{dominates()}{dominates()}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::dominates (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} \&}]{\+\_\+objective\+Vector }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Returns true if the current archive dominates \+\_\+objective\+Vector according to the \mbox{\hyperlink{classmoeo_objective_vector_comparator}{moeo\+Objective\+Vector\+Comparator}} given in the constructor
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+objective\+Vector} & the objective vector to compare with the current archive \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_ac25d5ca50e42e2082ad5362ec4389cbd}\label{classmoeo_fuzzy_archive_ac25d5ca50e42e2082ad5362ec4389cbd}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!equals@{equals}}
|
|
\index{equals@{equals}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{equals()}{equals()}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::equals (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+arch }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
Returns true if the current archive contains the same objective vectors than the given archive \+\_\+arch
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+arch} & the given archive \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_a873664569397df0c73d2615d1dd2b12b}\label{classmoeo_fuzzy_archive_a873664569397df0c73d2615d1dd2b12b}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
virtual bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::operator() (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
|
|
|
|
Updates the archive with a given population \+\_\+pop
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+pop} & the given population \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
if at least one \+\_\+pop\mbox{[}i\mbox{]} is added to the archive
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ const eo\+Pop$<$ M\+O\+E\+O\+T $>$ \&, bool $>$}}.
|
|
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_ac22c95c4ba40b74506122f6df42d51c9}\label{classmoeo_fuzzy_archive_ac22c95c4ba40b74506122f6df42d51c9}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!operator()@{operator()}}
|
|
\index{operator()@{operator()}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{operator()()}{operator()()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
virtual bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::operator() (\begin{DoxyParamCaption}\item[{const M\+O\+E\+OT \&}]{\+\_\+moeo }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
|
|
|
|
Updates the archive with a given individual \+\_\+moeo
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+moeo} & the given individual \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\begin{DoxyReturn}{Returns}
|
|
if the \+\_\+moeo is added to the archive
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Implements \mbox{\hyperlink{classeo_u_f_a786e028409366dc273e19104f17ba68a}{eo\+U\+F$<$ const M\+O\+E\+O\+T \&, bool $>$}}.
|
|
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_a9b019c14b5069e013e078a771d4bd49e}\label{classmoeo_fuzzy_archive_a9b019c14b5069e013e078a771d4bd49e}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!update@{update}}
|
|
\index{update@{update}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{update()}{update()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::update (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classeo_pop}{eo\+Pop}}$<$ M\+O\+E\+OT $>$ \&}]{\+\_\+pop }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}
|
|
|
|
Updates the archive with a given population \+\_\+pop
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+pop} & the given population \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_aa92695e121b84518d59463cf49902ed7}\label{classmoeo_fuzzy_archive_aa92695e121b84518d59463cf49902ed7}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!update@{update}}
|
|
\index{update@{update}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{update()}{update()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::update (\begin{DoxyParamCaption}\item[{const M\+O\+E\+OT \&}]{\+\_\+moeo }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}
|
|
|
|
Updates the archive with a given individual \+\_\+moeo
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em \+\_\+moeo} & the given individual \\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
\doxysubsection{Member Data Documentation}
|
|
\mbox{\Hypertarget{classmoeo_fuzzy_archive_aa8727ee1d987a2f8c3bdccc580321d11}\label{classmoeo_fuzzy_archive_aa8727ee1d987a2f8c3bdccc580321d11}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!FuzzyComparator@{FuzzyComparator}}
|
|
\index{FuzzyComparator@{FuzzyComparator}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{FuzzyComparator}{FuzzyComparator}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
moeo\+Fuzzy\+Pareto\+Comparator$<$ \mbox{\hyperlink{classmoeo_fuzzy_archive_a1042c56e288d01f6ba55d6a5502a6e66}{Objective\+Vector}} $>$ \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::Fuzzy\+Comparator\hspace{0.3cm}{\ttfamily [protected]}}
|
|
|
|
A comparator based on fuzzy Pareto dominance (used as default) \mbox{\Hypertarget{classmoeo_fuzzy_archive_afbf229fdb48831ab185ad2bd002b6b83}\label{classmoeo_fuzzy_archive_afbf229fdb48831ab185ad2bd002b6b83}}
|
|
\index{moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}!replace@{replace}}
|
|
\index{replace@{replace}!moeoFuzzyArchive$<$ MOEOT $>$@{moeoFuzzyArchive$<$ MOEOT $>$}}
|
|
\doxysubsubsection{\texorpdfstring{replace}{replace}}
|
|
{\footnotesize\ttfamily template$<$class M\+O\+E\+OT $>$ \\
|
|
bool \mbox{\hyperlink{classmoeo_fuzzy_archive}{moeo\+Fuzzy\+Archive}}$<$ M\+O\+E\+OT $>$\+::replace\hspace{0.3cm}{\ttfamily [protected]}}
|
|
|
|
boolean
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
moeo/src/archive/moeo\+Fuzzy\+Archive.\+h\end{DoxyCompactItemize}
|