Returns the rank of a string in a population.
This is a value between 1,...,N (the population size). The most fit string has rank 1, the least fit string has rank N.
ctx
- context variable
p
- the index of the string whose rank is desired
order
- an array containing a unique rank for each string
n
- the size of the array order
none
#include "pgapack.h" int PGARank(ctx, p, order, n) PGAContext *ctx int p int *order int n
fitness.c
Example: Determine the rank of string p. PGAContext *ctx; int i, popsize, rank, *order; double *fitness; popsize = PGAGetPopsize(ctx); order = (int *) malloc(sizeof(int) * popsize); fitness = (double *)malloc(sizeof(double) * popsize); for(i=0;i<popsize; i++) { fitness[i] = PGAGetFitness(ctx, p, PGA_OLDPOP); order[i] = i; } PGADblHeapSort(ctx, fitness, order, popsize); rank = PGARank(ctx, p, order, popsize)