- Main Page
- Classes
- Files

- Search for |

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# moeoNSGAII< MOEOT > Class Template Reference

NSGA-II (Non-dominated Sorting Genetic Algorithm II) as described in: Deb, K., S. More...

`#include <moeoNSGAII.h>`

Inheritance diagram for moeoNSGAII< MOEOT >:

List of all members.

## Public Member Functions
| moeoNSGAII (unsigned int _maxGen, eoEvalFunc< MOEOT > &_eval, eoGenOp< MOEOT > &_op)
| Simple ctor with a eoGenOp.
| moeoNSGAII (unsigned int _maxGen, eoEvalFunc< MOEOT > &_eval, eoTransform< MOEOT > &_op)
| Simple ctor with a eoTransform.
| moeoNSGAII (unsigned int _maxGen, eoEvalFunc< MOEOT > &_eval, eoQuadOp< MOEOT > &_crossover, double _pCross, eoMonOp< MOEOT > &_mutation, double _pMut)
| Ctor with a crossover, a mutation and their corresponding rates.
| moeoNSGAII (eoContinue< MOEOT > &_continuator, eoEvalFunc< MOEOT > &_eval, eoGenOp< MOEOT > &_op)
| Ctor with a continuator (instead of _maxGen) and a eoGenOp.
| moeoNSGAII (eoContinue< MOEOT > &_continuator, eoEvalFunc< MOEOT > &_eval, eoTransform< MOEOT > &_op)
| Ctor with a continuator (instead of _maxGen) and a eoTransform.
virtual void | operator() (eoPop< MOEOT > &_pop)
| Apply a few generation of evolution to the population _pop until the stopping criteria is verified.
## Protected Attributes
eoGenContinue< MOEOT > | defaultGenContinuator
| a continuator based on the number of generations (used as default)
eoContinue< MOEOT > & | continuator
| stopping criteria
eoPopLoopEval< MOEOT > | popEval
| evaluation function used to evaluate the whole population
moeoDetTournamentSelect< MOEOT > | select
| binary tournament selection
moeoFastNonDominatedSortingFitnessAssignment< MOEOT > | fitnessAssignment
| fitness assignment used in NSGA-II
moeoFrontByFrontCrowdingDiversityAssignment< MOEOT > | diversityAssignment
| diversity assignment used in NSGA-II
moeoElitistReplacement< MOEOT > | replace
| elitist replacement
eoSGAGenOp< MOEOT > | defaultSGAGenOp
| an object for genetic operators (used as default)
eoGeneralBreeder< MOEOT > | genBreed
| general breeder
eoBreed< MOEOT > & | breed
| breeder

## Detailed Description

### template<class MOEOT>
class moeoNSGAII< MOEOT >

NSGA-II (Non-dominated Sorting Genetic Algorithm II) 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 fine-grained components of the ParadisEO-MOEO framework.

Definition at line 37 of file moeoNSGAII.h.

## Constructor & Destructor Documentation

template<class MOEOT>

moeoNSGAII< MOEOT >::moeoNSGAII | ( | unsigned int | _maxGen,
|  | eoEvalFunc< MOEOT > & | _eval,
|  | eoGenOp< MOEOT > & | _op |
| ) |  |  | `[inline]`

Simple ctor with a eoGenOp.

Parameters:

  | _maxGen | number of generations before stopping
  | _eval | evaluation function
  | _op | variation operator

Definition at line 47 of file moeoNSGAII.h.

template<class MOEOT>

moeoNSGAII< MOEOT >::moeoNSGAII | ( | unsigned int | _maxGen,
|  | eoEvalFunc< MOEOT > & | _eval,
|  | eoTransform< MOEOT > & | _op |
| ) |  |  | `[inline]`

Simple ctor with a eoTransform.

Parameters:

  | _maxGen | number of generations before stopping
  | _eval | evaluation function
  | _op | variation operator

Definition at line 59 of file moeoNSGAII.h.

template<class MOEOT>

moeoNSGAII< MOEOT >::moeoNSGAII | ( | unsigned int | _maxGen,
|  | eoEvalFunc< MOEOT > & | _eval,
|  | eoQuadOp< MOEOT > & | _crossover,
|  | double | _pCross,
|  | eoMonOp< MOEOT > & | _mutation,
|  | double | _pMut |
| ) |  |  | `[inline]`

Ctor with a crossover, a mutation and their corresponding rates.

Parameters:

  | _maxGen | number of generations before stopping
  | _eval | evaluation function
  | _crossover | crossover
  | _pCross | crossover probability
  | _mutation | mutation
  | _pMut | mutation probability

Definition at line 74 of file moeoNSGAII.h.

template<class MOEOT>

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

Ctor with a continuator (instead of _maxGen) and a eoGenOp.

Parameters:

  | _continuator | stopping criteria
  | _eval | evaluation function
  | _op | variation operator

Definition at line 87 of file moeoNSGAII.h.

template<class MOEOT>

moeoNSGAII< MOEOT >::moeoNSGAII | ( | eoContinue< MOEOT > & | _continuator,
|  | eoEvalFunc< MOEOT > & | _eval,
|  | eoTransform< MOEOT > & | _op |
| ) |  |  | `[inline]`

Ctor with a continuator (instead of _maxGen) and a eoTransform.

Parameters:

  | _continuator | stopping criteria
  | _eval | evaluation function
  | _op | variation operator

Definition at line 99 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 until the stopping criteria is verified.

Parameters:

  | _pop | the population

Definition at line 109 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:

- moeoNSGAII.h