Maps the user's evaluation function value to a fitness value.
First, the user's evaluation function value is translated to all positive values if any are negative. Next, this positive sequence is translated to a maximization problem if the user's optimization direction was minimization. This positive sequence is then mapped to a fitness value using linear ranking, linear normalization fitness, or the identity (i.e., the evaluation function value). This routine is usually used after PGAEvaluate is called.
ctx
- context variable
pop
- symbolic constant of the population to calculate fitness for
none
#include "pgapack.h" void PGAFitness(ctx, popindex) PGAContext *ctx int popindex
fitness.c
Example: Calculate the fitness of all strings in population PGA_NEWPOP after calling PGAEvaluate to calculate the strings evaluation value. double energy(PGAContext *ctx, int p, int pop); PGAContext *ctx; : PGAEvaluate(ctx, PGA_NEWPOP, energy); PGAFitness (ctx, PGA_NEWPOP);