eoParetoFitness< FitnessTraits > Class Template Reference

eoParetoFitness class: std::vector of doubles with overloaded comparison operators. More...

#include <eoParetoFitness.h>

List of all members.

Public Types

typedef FitnessTraits fitness_traits

Public Member Functions

 eoParetoFitness (std::vector< double > &_v)
bool dominates (const eoParetoFitness< FitnessTraits > &_other) const
 Partial order based on Pareto-dominance.
bool operator< (const eoParetoFitness< FitnessTraits > &_other) const
 compare *not* on dominance, but on the first, then the second, etc
bool operator> (const eoParetoFitness< FitnessTraits > &_other) const
bool operator<= (const eoParetoFitness< FitnessTraits > &_other) const
bool operator>= (const eoParetoFitness< FitnessTraits > &_other) const
bool operator== (const eoParetoFitness< FitnessTraits > &_other) const
bool operator!= (const eoParetoFitness< FitnessTraits > &_other) const

Static Public Member Functions

static void setUp (unsigned _n, std::vector< bool > &_b)
 access to the traits characteristics (so you don't have to write a lot of typedef's around
static bool maximizing (unsigned _i)


Detailed Description

template<class FitnessTraits = eoParetoFitnessTraits>
class eoParetoFitness< FitnessTraits >

eoParetoFitness class: std::vector of doubles with overloaded comparison operators.

Comparison is done on pareto dominance. The template argument FitnessTraits defaults to eoParetoFitnessTraits, which can be replaces at will by any other class that implements the static functions defined therein.

Note that the comparison defines a partial order, so that !(a < b) && !(b <a) does not neccessarily imply that (a==b) The other way around does hold.

Definition at line 108 of file eoParetoFitness.h.


The documentation for this class was generated from the following file:

Generated on Thu Jan 1 23:19:48 2009 for EvolvingObjects by  doxygen 1.5.5