moeoFastNonDominatedSortingFitnessAssignment< MOEOT > Class Template Reference

Fitness assignment sheme based on Pareto-dominance count proposed in: N. More...

#include <moeoFastNonDominatedSortingFitnessAssignment.h>

Inheritance diagram for moeoFastNonDominatedSortingFitnessAssignment< MOEOT >:

moeoParetoBasedFitnessAssignment< MOEOT > moeoFitnessAssignment< MOEOT > eoUF< eoPop< MOEOT > &, void > eoFunctorBase List of all members.

Public Types

typedef MOEOT::ObjectiveVector ObjectiveVector
 the objective vector type of the solutions

Public Member Functions

 moeoFastNonDominatedSortingFitnessAssignment ()
 Default ctor.
 moeoFastNonDominatedSortingFitnessAssignment (moeoObjectiveVectorComparator< ObjectiveVector > &_comparator)
 Ctor where you can choose your own way to compare objective vectors.
void operator() (eoPop< MOEOT > &_pop)
 Sets the fitness values for every solution contained in the population _pop.
void updateByDeleting (eoPop< MOEOT > &_pop, ObjectiveVector &_objVec)
 
Warning:
NOT IMPLEMENTED, DO NOTHING ! Updates the fitness values of the whole population _pop by taking the deletion of the objective vector _objVec into account.


Private Member Functions

void oneObjective (eoPop< MOEOT > &_pop)
 Sets the fitness values for mono-objective problems.
void twoObjectives (eoPop< MOEOT > &_pop)
 Sets the fitness values for bi-objective problems with a complexity of O(n log n), where n stands for the population size.
void mObjectives (eoPop< MOEOT > &_pop)
 Sets the fitness values for problems with more than two objectives with a complexity of O(n² log n), where n stands for the population size.

Private Attributes

moeoObjectiveVectorComparator<
ObjectiveVector > & 
comparator
 Functor to compare two objective vectors.
moeoParetoObjectiveVectorComparator<
ObjectiveVector
paretoComparator
 Functor to compare two objective vectors according to Pareto dominance relation.

Detailed Description

template<class MOEOT>
class moeoFastNonDominatedSortingFitnessAssignment< MOEOT >

Fitness assignment sheme based on Pareto-dominance count proposed in: N.

Srinivas, K. Deb, "Multiobjective Optimization Using Nondominated Sorting in Genetic Algorithms", Evolutionary Computation vol. 2, no. 3, pp. 221-248 (1994) and in: K. Deb, A. Pratap, S. Agarwal, T. Meyarivan, "A Fast and Elitist Multi-Objective Genetic Algorithm: NSGA-II", IEEE Transactions on Evolutionary Computation, vol. 6, no. 2 (2002). This strategy is, for instance, used in NSGA and NSGA-II.

Definition at line 29 of file moeoFastNonDominatedSortingFitnessAssignment.h.


Constructor & Destructor Documentation

template<class MOEOT>
moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::moeoFastNonDominatedSortingFitnessAssignment ( moeoObjectiveVectorComparator< ObjectiveVector > &  _comparator  )  [inline]

Ctor where you can choose your own way to compare objective vectors.

Parameters:
_comparator the functor used to compare objective vectors

Definition at line 48 of file moeoFastNonDominatedSortingFitnessAssignment.h.


Member Function Documentation

template<class MOEOT>
void moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::operator() ( eoPop< MOEOT > &  _pop  )  [inline, virtual]

Sets the fitness values for every solution contained in the population _pop.

Parameters:
_pop the population

Implements eoUF< eoPop< MOEOT > &, void >.

Definition at line 56 of file moeoFastNonDominatedSortingFitnessAssignment.h.

References moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::mObjectives(), and moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::oneObjective().

template<class MOEOT>
void moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::updateByDeleting ( eoPop< MOEOT > &  _pop,
ObjectiveVector _objVec 
) [inline, virtual]

Warning:
NOT IMPLEMENTED, DO NOTHING ! Updates the fitness values of the whole population _pop by taking the deletion of the objective vector _objVec into account.

Parameters:
_pop the population
_objVec the objective vector
Warning:
NOT IMPLEMENTED, DO NOTHING !

Implements moeoFitnessAssignment< MOEOT >.

Definition at line 100 of file moeoFastNonDominatedSortingFitnessAssignment.h.

template<class MOEOT>
void moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::oneObjective ( eoPop< MOEOT > &  _pop  )  [inline, private]

Sets the fitness values for mono-objective problems.

Parameters:
_pop the population

Definition at line 120 of file moeoFastNonDominatedSortingFitnessAssignment.h.

Referenced by moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::operator()().

template<class MOEOT>
void moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::twoObjectives ( eoPop< MOEOT > &  _pop  )  [inline, private]

Sets the fitness values for bi-objective problems with a complexity of O(n log n), where n stands for the population size.

Parameters:
_pop the population

Definition at line 136 of file moeoFastNonDominatedSortingFitnessAssignment.h.

template<class MOEOT>
void moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::mObjectives ( eoPop< MOEOT > &  _pop  )  [inline, private]

Sets the fitness values for problems with more than two objectives with a complexity of O(n² log n), where n stands for the population size.

Parameters:
_pop the population

Definition at line 146 of file moeoFastNonDominatedSortingFitnessAssignment.h.

References moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::comparator.

Referenced by moeoFastNonDominatedSortingFitnessAssignment< MOEOT >::operator()().


The documentation for this class was generated from the following file:
Generated on Tue Apr 17 16:53:21 2007 for ParadisEO-MOEO by  doxygen 1.5.1