PaGMO  1.1.5
Public Member Functions | Friends
pagmo::migration::hv_best_s_policy Class Reference

Choose 'n' greatest contributors migration policy. More...

#include <hv_best_s_policy.h>

Inheritance diagram for pagmo::migration::hv_best_s_policy:
Inheritance graph
[legend]

Public Member Functions

 hv_best_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_typeselect (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.
 

Detailed Description

Choose 'n' greatest contributors migration policy.

This policy chooses the individuals that contribute the greatest amount of volume to the total hypervolume. Contributions of all individuals are computed, after which a set of 'n' best candidates is determined.

Note: If the problem is a single objective one, we fall back to the pagmo::migration::best_s_policy instead.

Author
Marcus Maertens (mmarc.nosp@m.usx@.nosp@m.gmail.nosp@m..com)
Krzysztof Nowak (kn@ki.nosp@m.ryx..nosp@m.net)

Definition at line 48 of file hv_best_s_policy.h.

Constructor & Destructor Documentation

pagmo::migration::hv_best_s_policy::hv_best_s_policy ( const double &  rate = 1,
rate_type  type = absolute,
double  nadir_eps = 1.0 
)

Constructor from migration rate and type.

Parameters
[in]ratemigration rate.
[in]typemigration rate type.
[in]nadir_epsepsilon value for the nadir point computation
See also
base_s_policy::base_s_policy.

Definition at line 50 of file hv_best_s_policy.cpp.

Member Function Documentation

base_s_policy_ptr pagmo::migration::hv_best_s_policy::clone ( ) const
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 52 of file hv_best_s_policy.cpp.

std::vector< population::individual_type > pagmo::migration::hv_best_s_policy::select ( population pop) const
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.

Parameters
[in,out]popsource population. In some cases (see best_kill_s-policy) it can be modified (e.g. killing the selected individual)
Returns
a vector containing selected individuals.

Implements pagmo::migration::base_s_policy.

Definition at line 62 of file hv_best_s_policy.cpp.


The documentation for this class was generated from the following files: