28 namespace pagmo {
namespace util {
namespace hv_algorithm {
40 unsigned int fdim = points[0].size();
41 std::vector<double> data;
42 data.reserve(points.size() * fdim);
43 for (
unsigned int p_idx = 0 ; p_idx < points.size() ; ++p_idx) {
44 for (
unsigned int d_idx = 0 ; d_idx < fdim ; ++d_idx) {
45 data.push_back(points[p_idx][d_idx]);
49 double hv = fpli_hv(&data[0], fdim, points.size(), &r_point[0]);
76 return "FPL algorithm";
void assert_minimisation(const std::vector< fitness_vector > &, const fitness_vector &) const
Assert that reference point dominates every other point from the set.
fpl hypervolume algorithm
std::vector< double > fitness_vector
Fitness vector type.
boost::shared_ptr< base > base_ptr
Base hypervolume algorithm class.
double compute(std::vector< fitness_vector > &, const fitness_vector &) const
Compute hypervolume.
base_ptr clone() const
Clone method.
void verify_before_compute(const std::vector< fitness_vector > &, const fitness_vector &) const
Verify before compute.
std::string get_name() const
Algorithm name.