25 #ifndef PAGMO_UTIL_HV_ALGORITHM_HV2D_H
26 #define PAGMO_UTIL_HV_ALGORITHM_HV2D_H
35 namespace pagmo {
namespace util {
namespace hv_algorithm {
47 hv2d(
const bool initial_sorting =
true);
48 double compute(std::vector<fitness_vector> &,
const fitness_vector &)
const;
49 double compute(
double**,
unsigned int n_points,
double*)
const;
50 std::vector<double> contributions(std::vector<fitness_vector> &,
const fitness_vector &)
const;
52 void verify_before_compute(
const std::vector<fitness_vector> &,
const fitness_vector &)
const;
54 std::string get_name()
const;
58 const bool m_initial_sorting;
60 static bool point_pairs_cmp(
const std::pair<fitness_vector, unsigned int> &,
const std::pair<fitness_vector, unsigned int> &);
62 static bool cmp_double_2d(
double*,
double*);
64 friend class boost::serialization::access;
65 template <
class Archive>
66 void serialize(Archive &ar,
const unsigned int)
68 ar & boost::serialization::base_object<base>(*this);
69 ar &
const_cast<bool &
>(m_initial_sorting);
hv2d hypervolume algorithm class
std::vector< double > fitness_vector
Fitness vector type.
boost::shared_ptr< base > base_ptr
Base hypervolume algorithm class.