paradiseo/trunk/paradiseo-eo/doc/latex/classeo_dominance_map.tex
legrand c3aec878e5 Paradiseo-eo sources added
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@40 331e1502-861f-0410-8da2-ba01fb791d7f
2006-12-12 14:49:08 +00:00

87 lines
4.2 KiB
TeX

\section{eo\-Dominance\-Map$<$ Eo\-Type $>$ Class Template Reference}
\label{classeo_dominance_map}\index{eoDominanceMap@{eoDominanceMap}}
eo\-Dominance\-Map, utility class to calculate and maintain a map (std::vector$<$std::vector$<$bool$>$ $>$) of pareto dominance statistics.
{\tt \#include $<$eo\-Dominance\-Map.h$>$}
Inheritance diagram for eo\-Dominance\-Map$<$ Eo\-Type $>$::\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.67516cm]{classeo_dominance_map}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item
void {\bf clear} ()\label{classeo_dominance_map_a0}
\begin{CompactList}\small\item\em Clears the map. \item\end{CompactList}\item
void {\bf operator()} (const {\bf eo\-Pop}$<$ {\bf Eo\-Type} $>$ \&\_\-pop)\label{classeo_dominance_map_a1}
\begin{CompactList}\small\item\em Update or create the dominance map. \item\end{CompactList}\item
void {\bf remove} (unsigned i)\label{classeo_dominance_map_a2}
\begin{CompactList}\small\item\em Removes the domination info for a given individual, thus nothing dominates it and it dominates nothing. \item\end{CompactList}\item
void {\bf setup} (const {\bf eo\-Pop}$<$ {\bf Eo\-Type} $>$ \&\_\-pop)
\begin{CompactList}\small\item\em Create domination matrix from scratch. \item\end{CompactList}\item
std::vector$<$ double $>$ {\bf sum\_\-dominators} () const
\begin{CompactList}\small\item\em For all elements, returns the no. \item\end{CompactList}\item
std::vector$<$ double $>$ {\bf sum\_\-dominants} () const \label{classeo_dominance_map_a5}
\begin{CompactList}\small\item\em For all elements, returns the number of elements that the element dominates Thus: higher is better It returns a std::vector$<$double$>$ cuz that makes subsequent manipulation that much easier. \item\end{CompactList}\end{CompactItemize}
\subsection*{Private Attributes}
\begin{CompactItemize}
\item
std::vector$<$ typename Eo\-Type::Fitness $>$ {\bf fitness}\label{classeo_dominance_map_r0}
\end{CompactItemize}
\subsection{Detailed Description}
\subsubsection*{template$<$class Eo\-Type$>$ class eo\-Dominance\-Map$<$ Eo\-Type $>$}
eo\-Dominance\-Map, utility class to calculate and maintain a map (std::vector$<$std::vector$<$bool$>$ $>$) of pareto dominance statistics.
It is set up such that
if map[i][j] == true then i dominates j
The dominance map can be used to perform pareto ranking ({\bf eo\-Pareto\-Ranking}{\rm (p.\,\pageref{classeo_pareto_ranking})}) or non dominated sorting. For the latter, the {\bf remove()}{\rm (p.\,\pageref{classeo_dominance_map_a2})} member function might come in handy.
\begin{Desc}
\item[{\bf Todo}]make it an {\bf eo\-Stat}{\rm (p.\,\pageref{classeo_stat})}? \end{Desc}
Definition at line 47 of file eo\-Dominance\-Map.h.
\subsection{Member Function Documentation}
\index{eoDominanceMap@{eo\-Dominance\-Map}!setup@{setup}}
\index{setup@{setup}!eoDominanceMap@{eo\-Dominance\-Map}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class Eo\-Type$>$ void {\bf eo\-Dominance\-Map}$<$ {\bf Eo\-Type} $>$::setup (const {\bf eo\-Pop}$<$ {\bf Eo\-Type} $>$ \& {\em \_\-pop})\hspace{0.3cm}{\tt [inline]}}\label{classeo_dominance_map_a3}
Create domination matrix from scratch.
Complexity O(N$^\wedge$2)
Definition at line 81 of file eo\-Dominance\-Map.h.
Referenced by eo\-Dominance\-Map$<$ EOT $>$::operator()().\index{eoDominanceMap@{eo\-Dominance\-Map}!sum_dominators@{sum\_\-dominators}}
\index{sum_dominators@{sum\_\-dominators}!eoDominanceMap@{eo\-Dominance\-Map}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class Eo\-Type$>$ std::vector$<$double$>$ {\bf eo\-Dominance\-Map}$<$ {\bf Eo\-Type} $>$::sum\_\-dominators () const\hspace{0.3cm}{\tt [inline]}}\label{classeo_dominance_map_a4}
For all elements, returns the no.
of elements that dominate the element Thus: lower is better (and 0 is the front). It returns a std::vector$<$double$>$ cuz that makes subsequent manipulation that much easier
Definition at line 118 of file eo\-Dominance\-Map.h.
Referenced by eo\-Pareto\-Ranking$<$ EOT $>$::calculate\_\-worths().
The documentation for this class was generated from the following file:\begin{CompactItemize}
\item
eo\-Dominance\-Map.h\end{CompactItemize}