moeoNSGAII< MOEOT > Class Template Reference

The NSGA-II algorithm as described in: Deb, K., S. More...

#include <moeoNSGAII.h>

Inheritance diagram for moeoNSGAII< MOEOT >:

moeoEA< MOEOT > eoAlgo< MOEOT > eoUF< eoPop< MOEOT > &, void > eoFunctorBase List of all members.

Public Member Functions

 moeoNSGAII (unsigned _max_gen, eoEvalFunc< MOEOT > &_eval, eoGenOp< MOEOT > &_op)
 This constructor builds the algorithm as descibed in the paper.
 moeoNSGAII (unsigned _max_gen, eoEvalFunc< MOEOT > &_eval, eoQuadOp< MOEOT > &_crossover, double _pCross, eoMonOp< MOEOT > &_mutation, double _pMut)
 Ctor taking _max_gen, crossover and mutation.
 moeoNSGAII (eoContinue< MOEOT > &_continuator, eoEvalFunc< MOEOT > &_eval, eoGenOp< MOEOT > &_op)
 Ctor taking a continuator instead of _gen_max.
virtual void operator() (eoPop< MOEOT > &_pop)
 Apply a few generation of evolution to the population _pop.

Protected Attributes

eoContinue< MOEOT > & continuator
 stopping criteria
eoEvalFunc< MOEOT > & eval
 evaluation function
eoPopLoopEval< MOEOT > loopEval
 to evaluate the whole population
eoPopEvalFunc< MOEOT > & popEval
 to evaluate the whole population
moeoDetTournamentSelect< MOEOT > select
 binary tournament selection
moeoElitistReplacement< MOEOT > replace
 elitist replacement
eoGeneralBreeder< MOEOT > genBreed
 general breeder
eoBreed< MOEOT > & breed
 breeder
moeoFastNonDominatedSortingFitnessAssignment<
MOEOT > 
fitnessAssignment
 fitness assignment used in NSGA-II
moeoCrowdingDistanceDiversityAssignment<
MOEOT > 
diversityAssignment
 Diversity assignment used in NSGA-II.

Detailed Description

template<class MOEOT>
class moeoNSGAII< MOEOT >

The NSGA-II algorithm as described in: Deb, K., S.

Agrawal, A. Pratap, and T. Meyarivan : "A fast elitist non-dominated sorting genetic algorithm for multi-objective optimization: NSGA-II". In IEEE Transactions on Evolutionary Computation, Vol. 6, No 2, pp 182-197 (April 2002). This class builds the NSGA-II algorithm only by using the components of the ParadisEO-MOEO framework.

Definition at line 36 of file moeoNSGAII.h.


Constructor & Destructor Documentation

template<class MOEOT>
moeoNSGAII< MOEOT >::moeoNSGAII ( unsigned  _max_gen,
eoEvalFunc< MOEOT > &  _eval,
eoGenOp< MOEOT > &  _op 
) [inline]

This constructor builds the algorithm as descibed in the paper.

Parameters:
_max_gen number of generations before stopping
_eval evaluation function
_op variation operator

Definition at line 46 of file moeoNSGAII.h.

template<class MOEOT>
moeoNSGAII< MOEOT >::moeoNSGAII ( unsigned  _max_gen,
eoEvalFunc< MOEOT > &  _eval,
eoQuadOp< MOEOT > &  _crossover,
double  _pCross,
eoMonOp< MOEOT > &  _mutation,
double  _pMut 
) [inline]

Ctor taking _max_gen, crossover and mutation.

Parameters:
_max_gen number of generations before stopping
_eval evaluation function
_crossover crossover
_pCross crossover probability
_mutation mutation
_pMut mutation probability

Definition at line 61 of file moeoNSGAII.h.

template<class MOEOT>
moeoNSGAII< MOEOT >::moeoNSGAII ( eoContinue< MOEOT > &  _continuator,
eoEvalFunc< MOEOT > &  _eval,
eoGenOp< MOEOT > &  _op 
) [inline]

Ctor taking a continuator instead of _gen_max.

Parameters:
_continuator stopping criteria
_eval evaluation function
_op variation operator

Definition at line 73 of file moeoNSGAII.h.


Member Function Documentation

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

Apply a few generation of evolution to the population _pop.

Parameters:
_pop the population

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

Definition at line 83 of file moeoNSGAII.h.

References moeoNSGAII< MOEOT >::breed, moeoNSGAII< MOEOT >::continuator, moeoNSGAII< MOEOT >::diversityAssignment, moeoNSGAII< MOEOT >::fitnessAssignment, moeoNSGAII< MOEOT >::popEval, and moeoNSGAII< MOEOT >::replace.


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