PaGMO
1.1.5
|
Choose 'n' successive greatest contributors migration policy. More...
#include <hv_greedy_s_policy.h>
Public Member Functions | |
hv_greedy_s_policy (const double &rate=1, rate_type type=absolute, double nadir_eps=1.0) | |
Constructor from migration rate and type. More... | |
base_s_policy_ptr | clone () const |
Clone method. More... | |
std::vector< population::individual_type > | select (population &) const |
Select individuals to emigrate from the given population. More... | |
Public Member Functions inherited from pagmo::migration::base_s_policy | |
base_s_policy (const double &rate=1, rate_type type=absolute) | |
Constructor from migration rate and type. More... | |
virtual | ~base_s_policy () |
Trivial destructor. More... | |
Public Member Functions inherited from pagmo::migration::base | |
base (const double &, rate_type) | |
Constructor from migration rate and type. More... | |
population::size_type | get_n_individuals (const population &) const |
Get number of individuals to migrate from/to input population. More... | |
std::string | human_readable () const |
Return human readable representation. More... | |
virtual | ~base () |
Destructor. More... | |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Member Functions inherited from pagmo::migration::base | |
virtual std::string | human_readable_extra () const |
Return extra information in human readable representation. More... | |
Static Protected Member Functions inherited from pagmo::migration::base | |
template<class ForwardIterator , class T > | |
static void | iota (ForwardIterator first, ForwardIterator last, T value) |
Iota function, usefull to fill iterator range with increasing values. More... | |
Protected Attributes inherited from pagmo::migration::base | |
double | m_rate |
Migration rate. More... | |
rate_type | m_type |
Migration rate type. | |
Choose 'n' successive greatest contributors migration policy.
This policy revolves around choosing the individuals that contribute the greatest amount of volume to the total hypervolume. Individuals are chosen iteratively, thus it is regarded as a greedy strategy.
Note: If the problem is a single objective one, we fall back to the pagmo::migration::best_s_policy instead.
Definition at line 52 of file hv_greedy_s_policy.h.
pagmo::migration::hv_greedy_s_policy::hv_greedy_s_policy | ( | const double & | rate = 1 , |
rate_type | type = absolute , |
||
double | nadir_eps = 1.0 |
||
) |
Constructor from migration rate and type.
[in] | rate | migration rate. |
[in] | type | migration rate type. |
[in] | nadir_eps | epsilon value for the nadir point computation |
Definition at line 49 of file hv_greedy_s_policy.cpp.
|
virtual |
Clone method.
Provided that the derived policy implements properly the copy constructor, virtually all implementations of this method will look like this:
return base_ptr(new derived_policy(*this));
@return migration::base_s_policy_ptr to a copy of this.
Implements pagmo::migration::base_s_policy.
Definition at line 51 of file hv_greedy_s_policy.cpp.
|
virtual |
Select individuals to emigrate from the given population.
This is the method that actually implements the policy. Output vector should contain copies of selected individuals.
[in,out] | pop | source population. In some cases (see best_kill_s-policy) it can be modified (e.g. killing the selected individual) |
Implements pagmo::migration::base_s_policy.
Definition at line 56 of file hv_greedy_s_policy.cpp.