NAME
diff_evol -- minimization by differential evolution
PROTOTYPE
unitptr diff_evol( int iOperands, int iDim, int iNum, float fFac, float fAcc, char *pcOpt, unitptr uHost)
ARGUMENTS
- int iOperands
- number of operands
- int iDim
- dimension of genotype vector
- int iNum
- number of members in population
- float fFac
- initial value for step weight factor
- float fAcc
- probability for accepting child genes
- char *pcOpt
- option string (may be NULL)
- unitptr uHost
- host unit
RETURN VALUE:
A pointer to the created unit or NULL in the case of an error.
INTERFACE OF CREATED UNIT:
- X_in[iNum*iDim]:
- (packed input field 0)
iNum iDim dimensional genotype vectors,
representing initial population
- Y_in[1]:
- (input field 1) cost value as evaluated by
operands
- Z_in[2]:
- (input field 2) parameters fFac and fAcc
- CTL_in[1]:
- (control field) nr of evolutionary steps to take
(default = 1)
- X_out[iDim]:
- (output field 0) current genotype to evaluate
by operands. After execution of the unit this
field contains the best genotype that was found.
- Y_out[iNum]:
- (packed output field 1) current cost values.
After execution of the unit, the lowest cost
value will be in element 0 (the order
of the remaining cost values is random).
- Z_out[iNum*iDim]:
- (packed output field 2) current population
(this field is only updated after all nr steps
have been made). After execution of the unit,
the first iDim elements belong to the best
vector.
EXECUTION OF CREATED UNIT:
Performs CTL_in steps of differential evolution.
DESCRIPTION:
CONTROL MODES:
- NST_INIT:
- re-initialize population with vectors at input field 0.
STATUS:
Preliminary.
SEE ALSO:
FILE
/amnt/loge/users/nistaff02/nistaff/rhaschke/nst7/man/../o.linux//../foldersrc/nst_cjgr.c