moeoEntropyMetric< ObjectiveVector > Class Template Reference

The entropy gives an idea of the diversity of a Pareto set relatively to another (Basseur, Seynhaeve, Talbi: 'Design of Multi-objective Evolutionary Algorithms: Application to the Flow-shop Scheduling Problem', in Proc. More...

#include <moeoEntropyMetric.h>

Inheritance diagram for moeoEntropyMetric< ObjectiveVector >:

moeoVectorVsVectorBinaryMetric< ObjectiveVector, double > moeoBinaryMetric< A1, A2, R > eoBF< A1, A2, R > moeoMetric eoFunctorBase eoFunctorBase List of all members.

Public Member Functions

double operator() (const std::vector< ObjectiveVector > &_set1, const std::vector< ObjectiveVector > &_set2)
 Returns the entropy of the Pareto set '_set1' relatively to the Pareto set '_set2'.

Private Member Functions

void removeDominated (std::vector< ObjectiveVector > &_f)
 Removes the dominated individuals contained in _f.
void prenormalize (const std::vector< ObjectiveVector > &_f)
 Prenormalization.
void normalize (std::vector< ObjectiveVector > &_f)
 Normalization.
void computeUnion (const std::vector< ObjectiveVector > &_f1, const std::vector< ObjectiveVector > &_f2, std::vector< ObjectiveVector > &_f)
 Computation of the union of _f1 and _f2 in _f.
unsigned howManyInNicheOf (const std::vector< ObjectiveVector > &_f, const ObjectiveVector &_s, unsigned _size)
 How many in niche.
double euclidianDistance (const ObjectiveVector &_set1, const ObjectiveVector &_to, unsigned _deg=2)
 Euclidian distance.

Private Attributes

std::vector< double > vect_min_val
 vector of min values
std::vector< double > vect_max_val
 vector of max values

Detailed Description

template<class ObjectiveVector>
class moeoEntropyMetric< ObjectiveVector >

The entropy gives an idea of the diversity of a Pareto set relatively to another (Basseur, Seynhaeve, Talbi: 'Design of Multi-objective Evolutionary Algorithms: Application to the Flow-shop Scheduling Problem', in Proc.

of the 2002 Congress on Evolutionary Computation, IEEE Press, pp. 1155-1156)

Definition at line 23 of file moeoEntropyMetric.h.


Member Function Documentation

template<class ObjectiveVector>
double moeoEntropyMetric< ObjectiveVector >::operator() ( const std::vector< ObjectiveVector > &  _set1,
const std::vector< ObjectiveVector > &  _set2 
) [inline]

Returns the entropy of the Pareto set '_set1' relatively to the Pareto set '_set2'.

Parameters:
_set1 the first Pareto set
_set2 the second Pareto set

Definition at line 32 of file moeoEntropyMetric.h.

References moeoEntropyMetric< ObjectiveVector >::computeUnion(), moeoEntropyMetric< ObjectiveVector >::howManyInNicheOf(), moeoEntropyMetric< ObjectiveVector >::normalize(), moeoEntropyMetric< ObjectiveVector >::prenormalize(), and moeoEntropyMetric< ObjectiveVector >::removeDominated().

template<class ObjectiveVector>
void moeoEntropyMetric< ObjectiveVector >::removeDominated ( std::vector< ObjectiveVector > &  _f  )  [inline, private]

Removes the dominated individuals contained in _f.

Parameters:
_f a Pareto set

Definition at line 81 of file moeoEntropyMetric.h.

Referenced by moeoEntropyMetric< ObjectiveVector >::operator()().

template<class ObjectiveVector>
void moeoEntropyMetric< ObjectiveVector >::prenormalize ( const std::vector< ObjectiveVector > &  _f  )  [inline, private]

Prenormalization.

Parameters:
_f a Pareto set

Definition at line 102 of file moeoEntropyMetric.h.

References moeoEntropyMetric< ObjectiveVector >::vect_max_val, and moeoEntropyMetric< ObjectiveVector >::vect_min_val.

Referenced by moeoEntropyMetric< ObjectiveVector >::operator()().

template<class ObjectiveVector>
void moeoEntropyMetric< ObjectiveVector >::normalize ( std::vector< ObjectiveVector > &  _f  )  [inline, private]

Normalization.

Parameters:
_f a Pareto set

Definition at line 124 of file moeoEntropyMetric.h.

References moeoEntropyMetric< ObjectiveVector >::vect_max_val, and moeoEntropyMetric< ObjectiveVector >::vect_min_val.

Referenced by moeoEntropyMetric< ObjectiveVector >::operator()().

template<class ObjectiveVector>
void moeoEntropyMetric< ObjectiveVector >::computeUnion ( const std::vector< ObjectiveVector > &  _f1,
const std::vector< ObjectiveVector > &  _f2,
std::vector< ObjectiveVector > &  _f 
) [inline, private]

Computation of the union of _f1 and _f2 in _f.

Parameters:
_f1 the first Pareto set
_f2 the second Pareto set
_f the final Pareto set

Definition at line 137 of file moeoEntropyMetric.h.

Referenced by moeoEntropyMetric< ObjectiveVector >::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