Function PGASortND_Jensen
Defined in File pop.c
Function Documentation
-
unsigned int PGASortND_Jensen(PGAContext *ctx, PGAIndividual **start, size_t n, int goal)
Perform nondominated sorting using Jensen’s algorithm.
Description
Perform dominance computation known as nondominated sorting or ranking. This is the new algorithm originally by Jensen [Jen03], modified to correctly handle duplicates by Fortin et. al. [FGP13] and (for a slightly modified version) shown to be O(N*log(N)**(M-1)) by Buzdalov and Shalyto [BS14].
The algorithm selects the appropriate algorithm based on the number of objectives (there is a special case for m=2 objectives).
- Parameters:
ctx – context variable
start – pointer to individuals
n – number of individuals
goal – number of individuals needed in next generation
- Returns:
Maximum rank given or UINT_MAX if goal was reached exactly (in which case no crowding is necessary)