diff --git a/trunk/paradiseo-moeo/src/utils/moeoDominanceMatrix.h b/trunk/paradiseo-moeo/src/utils/moeoDominanceMatrix.h index 9dd70ee5a..15bdb5412 100644 --- a/trunk/paradiseo-moeo/src/utils/moeoDominanceMatrix.h +++ b/trunk/paradiseo-moeo/src/utils/moeoDominanceMatrix.h @@ -42,6 +42,9 @@ #include +/** + * moeoDominanceMatrix allow to know if an MOEOT dominates another one or not. Can be apply on one or two eoPop. + */ template class moeoDominanceMatrix: public eoBF< eoPop< MOEOT >&, eoPop< MOEOT >& , void>,eoUF&,void>, std::vector < std::vector > { @@ -56,11 +59,23 @@ public: /** The type for objective vector */ typedef typename MOEOT::ObjectiveVector ObjectiveVector; - moeoDominanceMatrix(bool _nocopy=true):std::vector < std::vector >(),comparator(paretoComparator), nocopy(_nocopy) {} + /** + * Default constructor with paretoComparator + * @param _nocopy boolean allow to consider copy and doublons as bad element whose were dominated by all other MOEOT + */ + moeoDominanceMatrix(bool _nocopy=false):std::vector < std::vector >(),comparator(paretoComparator), nocopy(_nocopy) {} + /** + * Constructor which allow to choose the comparator + * @param _nocopy boolean allow to consider copy and doublons as bad element whose were dominated by all other MOEOT + * @param _comparator the comparator you want to use for the comparaison of two MOEOT + */ moeoDominanceMatrix(moeoObjectiveVectorComparator < ObjectiveVector > & _comparator, bool _nocopy=true):std::vector < std::vector >(),comparator(_comparator), nocopy(_nocopy) {} - + /** + * Filling up the Dominance Matrix on one population + * @param _pop first population + */ void operator()(eoPop& _pop) { eoPop dummyPop; (*this).operator()(_pop, dummyPop);