ECF
1.7
D:
Projekt
ECF
ECF_master
ECF
TermFitnessValOp.cpp
1
#include "ECF_base.h"
2
#include "TermFitnessValOp.h"
3
4
5
void
TermFitnessValOp::registerParameters
(StateP state)
6
{
7
double
*value =
new
double(0);
8
state->getRegistry()->registerEntry(
"term.fitnessval"
, (voidP) value, ECF::DOUBLE,
9
"fitness value for termination (default: none)"
);
10
}
11
12
13
bool
TermFitnessValOp::initialize
(StateP state)
14
{
15
if
(!state->getRegistry()->isModified(
"term.fitnessval"
))
16
return
false
;
17
18
voidP sptr = state->getRegistry()->getEntry(
"term.fitnessval"
);
19
termValue_ = *((
double
*) sptr.get());
20
21
return
true
;
22
}
23
24
25
bool
TermFitnessValOp::operate
(StateP state)
26
{
27
double
minFitness = state->getStats()->getFitnessMin();
28
double
maxFitness = state->getStats()->getFitnessMax();
29
30
if
(termValue_ >= minFitness && termValue_ <= maxFitness) {
31
state->setTerminateCond();
32
ECF_LOG(state, 1,
"Termination: fitness value ("
+ dbl2str(termValue_) +
") reached"
);
33
}
34
35
return
true
;
36
}
TermFitnessValOp::operate
bool operate(StateP)
perform the designated operation
Definition
TermFitnessValOp.cpp:25
TermFitnessValOp::registerParameters
void registerParameters(StateP)
Register parameters with the Registry. Called before Operator::initialize.
Definition
TermFitnessValOp.cpp:5
TermFitnessValOp::initialize
bool initialize(StateP)
Perform initialization. Called before Operator::operate. By default, if the return value is false,...
Definition
TermFitnessValOp.cpp:13
Generated on
for ECF by
1.18.0