hypervolume pointers + doc
This commit is contained in:
parent
749119070c
commit
5f9689fc23
8 changed files with 12 additions and 8 deletions
|
|
@ -138,7 +138,7 @@ public:
|
||||||
* @param _p_change the probability to change a given coordinate
|
* @param _p_change the probability to change a given coordinate
|
||||||
*/
|
*/
|
||||||
eoNormalMutation(eoRealVectorBounds & _bounds,
|
eoNormalMutation(eoRealVectorBounds & _bounds,
|
||||||
double _sigma, const double& _p_change = 1.0):
|
double & _sigma, const double& _p_change = 1.0):
|
||||||
sigma(_sigma), bounds(_bounds), p_change(_p_change) {}
|
sigma(_sigma), bounds(_bounds), p_change(_p_change) {}
|
||||||
|
|
||||||
/** The class name */
|
/** The class name */
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,9 @@
|
||||||
// t-eoParallel.cpp
|
// t-eoParallel.cpp
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#ifdef ENABLE_OPENMP
|
||||||
#include <omp.h>
|
#include <omp.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <eo>
|
#include <eo>
|
||||||
#include <es/make_real.h>
|
#include <es/make_real.h>
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ public:
|
||||||
virtual bool equals(moTwoOptExNeighbor<EOT,Fitness> & _neighbor) {
|
virtual bool equals(moTwoOptExNeighbor<EOT,Fitness> & _neighbor) {
|
||||||
unsigned f, s;
|
unsigned f, s;
|
||||||
_neighbor.getIndices(f, s);
|
_neighbor.getIndices(f, s);
|
||||||
return ((indices.first == f) && (indices.second == s) || (indices.first == s) && (indices.second == f));
|
return (((indices.first == f) && (indices.second == s)) || ((indices.first == s) && (indices.second == f)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -211,7 +211,7 @@ private:
|
||||||
std::sort(sortedptrpop.begin(), sortedptrpop.end(), cmp);
|
std::sort(sortedptrpop.begin(), sortedptrpop.end(), cmp);
|
||||||
|
|
||||||
|
|
||||||
//
|
/*
|
||||||
std::cout << std::endl << "sorted pop" << std::endl;
|
std::cout << std::endl << "sorted pop" << std::endl;
|
||||||
std::cout << "====================" << std::endl;
|
std::cout << "====================" << std::endl;
|
||||||
for(unsigned int i=0; i<_pop.size(); i++)
|
for(unsigned int i=0; i<_pop.size(); i++)
|
||||||
|
|
@ -219,7 +219,7 @@ private:
|
||||||
std::cout << i << " : " << (*sortedptrpop[i]) << std::endl;
|
std::cout << i << " : " << (*sortedptrpop[i]) << std::endl;
|
||||||
}
|
}
|
||||||
std::cout << "====================" << std::endl;
|
std::cout << "====================" << std::endl;
|
||||||
//
|
*/
|
||||||
|
|
||||||
// compute an upper bound on the second objective (1)
|
// compute an upper bound on the second objective (1)
|
||||||
double max_obj1 = std::numeric_limits<double>::min();
|
double max_obj1 = std::numeric_limits<double>::min();
|
||||||
|
|
|
||||||
|
|
@ -42,8 +42,8 @@
|
||||||
#include <metric/moeoMetric.h>
|
#include <metric/moeoMetric.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The contribution metric evaluates the proportion of non-dominated solutions given by a Pareto set relatively to another Pareto set
|
* The hypervolume metric evaluates the multi-dimensional area (hypervolume) enclosed by set of objective vectors and a reference point
|
||||||
* (Meunier, Talbi, Reininger: 'A multiobjective genetic algorithm for radio network optimization', in Proc. of the 2000 Congress on Evolutionary Computation, IEEE Press, pp. 317-324)
|
* (E. Zitzler and L. Thiele. Multiobjective evolutionary algorithms: A comparative case study and the strength pareto approach. IEEE Transactions on Evolutionary Computation, 3(4):257–271, 1999)
|
||||||
*/
|
*/
|
||||||
template < class ObjectiveVector >
|
template < class ObjectiveVector >
|
||||||
class moeoHyperVolumeMetric : public moeoVectorUnaryMetric < ObjectiveVector , double >
|
class moeoHyperVolumeMetric : public moeoVectorUnaryMetric < ObjectiveVector , double >
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@
|
||||||
#include <algo/moeoSPEA2.h>
|
#include <algo/moeoSPEA2.h>
|
||||||
#include <algo/moeoUnifiedDominanceBasedLS.h>
|
#include <algo/moeoUnifiedDominanceBasedLS.h>
|
||||||
|
|
||||||
#include <archive/moeo2DMinHypervolumeArchive.h>
|
//#include <archive/moeo2DMinHypervolumeArchive.h>
|
||||||
#include <archive/moeoArchive.h>
|
#include <archive/moeoArchive.h>
|
||||||
#include <archive/moeoBoundedArchive.h>
|
#include <archive/moeoBoundedArchive.h>
|
||||||
#include <archive/moeoEpsilonHyperboxArchive.h>
|
#include <archive/moeoEpsilonHyperboxArchive.h>
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,7 @@ class moeoRouletteSelect:public moeoSelectOne < MOEOT >
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
/** size */
|
/** size */
|
||||||
unsigned int & tSize;
|
unsigned int tSize;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,8 @@
|
||||||
#include <moeo>
|
#include <moeo>
|
||||||
#include <cassert>
|
#include <cassert>
|
||||||
|
|
||||||
|
#include<archive/moeo2DMinHyperVolumeArchive.h>
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
class ObjectiveVectorTraits : public moeoObjectiveVectorTraits
|
class ObjectiveVectorTraits : public moeoObjectiveVectorTraits
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue