1#include "SymbRegEvalOp.h"
25 for (uint i = 0; i < nSamples; i++) {
32 for (uint i = 0; i < nSamples; i++) {
34 for (uint j = 0; j < nSamples; j++) {
39 f.push_back(X*Y + sin((X + 1)*(Y - 1)));
47bool GEPSymbRegEvalOp::csvRead(StateP state, std::string entry, std::vector<double>* vec){
50 voidP sptr = state->getRegistry()->getEntry(entry);
51 std::string fname = *((std::string*) sptr.get());
53 if (!stream.is_open())
return false;
54 while (getline(stream, line)){
55 vec->push_back(atof(line.c_str()));
76 GEPChromosomeP gep = std::static_pointer_cast<GEP::GEPChromosome> (individual->getGenotype());
95 for(uint i = 0; i < nSamples; i++) {
96 for (uint j = 0; j < nSamples; j++){
100 gep->setTerminalValue(
"X", &x.at(i));
101 gep->setTerminalValue(
"Y", &y.at(j));
102 gep->execute(&result);
118 value += pow(f.at(i*nSamples+j) - result, 2);
121 value /= pow(nSamples,2);
122 fitness->setValue(value);
Fitness for minimization problems.
FitnessP evaluate(IndividualP individual)
Evaluate a single individual. Method must create and return a Fitness object.
void registerParameters(StateP)
Register evaluator parameters. Called before EvaluateOp::initialize method.
bool initialize(StateP)
Initialize the evaluator. Called before first evaluation occurs.