PGAEvaluate(1)
NAME
PGAEvaluate - Calls a user-specified function to return an evaluation
of each string in the population.
DESCRIPTION
The user-specified function is only called if the string has been
changed (e.g., by crossover or mutation) or the user has explicitly
signaled the string's evaluation is out-of-date by a call to PGASetEvaluationUpToDateFlag().
INPUT PARAMETERS
- ctx - context variable
pop - symbolic constant of the population to be evaluated
f - a pointer to a function to evaluate a string. This function - will be called once for each string in population pop that requires evaluation. This function must return a double (the evaluation function value) and must fit the prototype double f(PGAContext *c, int p, int pop);
- comm - an MPI communicator
OUTPUT PARAMETERS
none
SYNOPSIS
#include "pgapack.h" void PGAEvaluate(ctx, pop, , comm) PGAContext *ctx int pop double (*f)(PGAContext *, int, int) MPI_Comm comm
LOCATION
parallel.c
EXAMPLE
Example:
Evaluate all strings in population PGA_NEWPOP using the user-defined
evaluation function Energy.
double Energy(PGAContext *ctx, int p, int pop) {
:
};
- PGAContext *ctx;
:
PGAEvaluate(ctx, PGA_NEWPOP, Energy, MPI_COMM_WORLD);