Implements the Crowding Distance of a pareto front. More...
#include <shark/Algorithms/DirectSearch/Operators/Indicators/CrowdingDistance.h>
Public Member Functions | |
template<typename ParetofrontType , typename ParetoArchive > | |
std::size_t | leastContributor (ParetofrontType const &front, ParetoArchive const &archive) const |
Selects the point with the smallest crowding distance. More... | |
template<typename ParetoFrontType , typename ParetoArchive > | |
std::vector< std::size_t > | leastContributors (ParetoFrontType const &front, ParetoArchive const &archive, std::size_t K) const |
template<class random > | |
void | init (std::size_t, std::size_t, random &) |
template<typename Archive > | |
void | serialize (Archive &, const unsigned int) |
Implements the Crowding Distance of a pareto front.
The Crowding distance is an estimate of the perimeter of the cuboid formed by using the nearest neighbors of a given point as the vertices. The point with the smallest crowding distance is removed from the set.
See the following reference for further details: Deb, Kalyanmoy, et al. "A fast and elitist multiobjective genetic algorithm: NSGA-II." IEEE transactions on evolutionary computation 6.2 (2002): 182-197.
Definition at line 47 of file CrowdingDistance.h.
|
inline |
Definition at line 111 of file CrowdingDistance.h.
|
inline |
Selects the point with the smallest crowding distance.
Crowding distance is computed wrt the union of the set front and the archive of points dominating the front
Definition at line 52 of file CrowdingDistance.h.
Referenced by leastContributors().
|
inline |
Definition at line 95 of file CrowdingDistance.h.
References leastContributor().
|
inline |
Definition at line 114 of file CrowdingDistance.h.