documentation revised
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@1603 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
26c5bfa7e6
commit
627012f921
17 changed files with 1110 additions and 46 deletions
|
|
@ -81,7 +81,8 @@ class moeoHyperVolumeDifferenceMetric : public moeoVectorVsVectorBinaryMetric <
|
|||
|
||||
/**
|
||||
* calculates and returns the HyperVolume value of a pareto front
|
||||
* @param _set the vector contains all objective Vector of pareto front
|
||||
* @param _set1 the vector contains all objective Vector of the first pareto front
|
||||
* @param _set2 the vector contains all objective Vector of the second pareto front
|
||||
*/
|
||||
double operator()(const std::vector < ObjectiveVector > & _set1, const std::vector < ObjectiveVector > & _set2)
|
||||
{
|
||||
|
|
@ -132,7 +133,8 @@ class moeoHyperVolumeDifferenceMetric : public moeoVectorVsVectorBinaryMetric <
|
|||
|
||||
/**
|
||||
* method caclulate bounds for the normalization
|
||||
* @param _set the vector of objective vectors
|
||||
* @param _set1 the vector contains all objective Vector of the first pareto front
|
||||
* @param _set2 the vector contains all objective Vector of the second pareto front
|
||||
*/
|
||||
void setup(const std::vector < ObjectiveVector > & _set1, const std::vector < ObjectiveVector > & _set2){
|
||||
if(_set1.size() < 1 || _set2.size() < 1)
|
||||
|
|
|
|||
|
|
@ -80,8 +80,8 @@ class moeoHyperVolumeMetric : public moeoVectorUnaryMetric < ObjectiveVector , d
|
|||
|
||||
/**
|
||||
* Constructor with a reference point
|
||||
* @param _normalize allow to normalize data (default true)
|
||||
* @param _ref_point the reference point
|
||||
* @param _bounds bounds value
|
||||
*/
|
||||
moeoHyperVolumeMetric(ObjectiveVector& _ref_point=NULL, std::vector < eoRealInterval >& _bounds=NULL): normalize(false), rho(0.0), ref_point(_ref_point), bounds(_bounds){}
|
||||
|
||||
|
|
@ -245,6 +245,7 @@ class moeoHyperVolumeMetric : public moeoVectorUnaryMetric < ObjectiveVector , d
|
|||
}
|
||||
|
||||
/**
|
||||
* find a minimum value
|
||||
* @param _front the front
|
||||
* @param _no_points the number of points of the front to consider (index 0 to _no_points are considered)
|
||||
* @param _objective the objective to consider
|
||||
|
|
|
|||
|
|
@ -64,6 +64,7 @@ private:
|
|||
* a vector z1 is said to eps+-dominate another vector z2, if we can add each objective value in z2 by eps and the resulting objective vector is still weakly dominates by z1.
|
||||
* @param _o1 the first objective vector (correspond to A, must not have dominated elements)
|
||||
* @param _o2 the second objective vector (correspond to B, must not have dominated elements)
|
||||
* @param _obj the objective in consideration
|
||||
* @return the additive epsilon indicator between the two objective vector _o1 and _o2
|
||||
*/
|
||||
double epsilon(const ObjectiveVector & _o1, const ObjectiveVector & _o2, const unsigned int _obj){
|
||||
|
|
|
|||
|
|
@ -142,7 +142,8 @@ private :
|
|||
/**
|
||||
* abstract method allow to use differents epsilon indicators
|
||||
* @param _o1 the first objective vector
|
||||
* @parama _o2 the second objective vector
|
||||
* @param _o2 the second objective vector
|
||||
* @param _obj the objective in consideration
|
||||
* @return an epsilon indicator between two objective vectors
|
||||
*/
|
||||
virtual double epsilon(const ObjectiveVector & _o1, const ObjectiveVector & _o2, const unsigned int _obj)=0;
|
||||
|
|
|
|||
|
|
@ -62,9 +62,9 @@ private:
|
|||
* Precondition : for a given _obj, _o1 and _o2 must both have a strictly positive or a strictly negative value else an exception is thrown
|
||||
* compute the epsilon indicator. Ieps(A,B) equals the minimum factor eps such that any objective vector in B is eps-dominated by at least one objective vector in A.
|
||||
* a vector z1 is said to eps-dominate another vector z2, if we can multiply each objective value in z2 by a factor of z2 and the resulting objective vector is still weakly dominates by z1.
|
||||
*
|
||||
* @param _o1 the first objective vector (correspond to A, must not have dominated elements)
|
||||
* @param _o2 the second objective vector (correspond to B, must not have dominated elements)
|
||||
* @param _obj the objective in consideration
|
||||
* @return the epsilon indicator between the two objective vector _o1 and _o2
|
||||
*/
|
||||
double epsilon(const ObjectiveVector & _o1, const ObjectiveVector & _o2, const unsigned int _obj){
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue