- Main Page
- Classes
- Files

- Search for |

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

# moeoHypervolumeBinaryMetric< ObjectiveVector > Class Template Reference

Hypervolume binary metric allowing to compare two objective vectors as proposed in Zitzler E., Künzli S. More...

`#include <moeoHypervolumeBinaryMetric.h>`

Inheritance diagram for moeoHypervolumeBinaryMetric< ObjectiveVector >:

List of all members.

## Public Member Functions
| moeoHypervolumeBinaryMetric (double _rho=1.1)
| Ctor.
double | operator() (const ObjectiveVector &_o1, const ObjectiveVector &_o2)
| Returns the volume of the space that is dominated by _o2 but not by _o1 with respect to a reference point computed using rho.
## Private Member Functions
double | hypervolume (const ObjectiveVector &_o1, const ObjectiveVector &_o2, const unsigned int _obj, const bool _flag=false)
| Returns the volume of the space that is dominated by _o2 but not by _o1 with respect to a reference point computed using rho for the objective _obj.
## Private Attributes
double | rho
| value used to compute the reference point from the worst values for each objective
moeoParetoObjectiveVectorComparator< ObjectiveVector > | paretoComparator
| Functor to compare two objective vectors according to Pareto dominance relation.

## Detailed Description

### template<class ObjectiveVector>
class moeoHypervolumeBinaryMetric< ObjectiveVector >

Hypervolume binary metric allowing to compare two objective vectors as proposed in Zitzler E., Künzli S.

: Indicator-Based Selection in Multiobjective Search. In Parallel Problem Solving from Nature (PPSN VIII). Lecture Notes in Computer Science 3242, Springer, Birmingham, UK pp.832–842 (2004). This indicator is based on the hypervolume concept introduced in Zitzler, E., Thiele, L.: Multiobjective Optimization Using Evolutionary Algorithms - A Comparative Case Study. Parallel Problem Solving from Nature (PPSN-V), pp.292-301 (1998).

Definition at line 29 of file moeoHypervolumeBinaryMetric.h.

## Constructor & Destructor Documentation

template<class ObjectiveVector>

moeoHypervolumeBinaryMetric< ObjectiveVector >::moeoHypervolumeBinaryMetric | ( | double | _rho = `1.1` | ) | `[inline]`

Ctor.

Parameters:

  | _rho | value used to compute the reference point from the worst values for each objective (default : 1.1)

Definition at line 37 of file moeoHypervolumeBinaryMetric.h.

References moeoHypervolumeBinaryMetric< ObjectiveVector >::rho.

## Member Function Documentation

template<class ObjectiveVector>

double moeoHypervolumeBinaryMetric< ObjectiveVector >::operator() | ( | const ObjectiveVector & | _o1,
|  | const ObjectiveVector & | _o2 |
| ) |  |  | `[inline]`

Returns the volume of the space that is dominated by _o2 but not by _o1 with respect to a reference point computed using rho.

Warning:
  don't forget to set the bounds for every objective before the call of this function

Parameters:

  | _o1 | the first objective vector
  | _o2 | the second objective vector

Definition at line 63 of file moeoHypervolumeBinaryMetric.h.

References moeoHypervolumeBinaryMetric< ObjectiveVector >::hypervolume(), and moeoHypervolumeBinaryMetric< ObjectiveVector >::paretoComparator.

template<class ObjectiveVector>

double moeoHypervolumeBinaryMetric< ObjectiveVector >::hypervolume | ( | const ObjectiveVector & | _o1,
|  | const ObjectiveVector & | _o2,
|  | const unsigned int | _obj,
|  | const bool | _flag = `false` |
| ) |  |  | `[inline, private]`

Returns the volume of the space that is dominated by _o2 but not by _o1 with respect to a reference point computed using rho for the objective _obj.

Parameters:

  | _o1 | the first objective vector
  | _o2 | the second objective vector
  | _obj | the objective index
  | _flag | used for iteration, if _flag=true _o2 is not talen into account (default : false)

Definition at line 96 of file moeoHypervolumeBinaryMetric.h.

References moeoNormalizedSolutionVsSolutionBinaryMetric< ObjectiveVector, double >::bounds, and moeoHypervolumeBinaryMetric< ObjectiveVector >::rho.

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

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

- moeoHypervolumeBinaryMetric.h