+ added a test file for eoParallel class
This commit is contained in:
parent
388d81b1ff
commit
bd88da01f7
2 changed files with 47 additions and 0 deletions
|
|
@ -65,6 +65,7 @@ SET (TEST_LIST
|
||||||
t-eoExtendedVelocity
|
t-eoExtendedVelocity
|
||||||
t-eoLogger
|
t-eoLogger
|
||||||
t-eoIQRStat
|
t-eoIQRStat
|
||||||
|
t-eoParallel
|
||||||
t-openmp
|
t-openmp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
46
eo/test/t-eoParallel.cpp
Normal file
46
eo/test/t-eoParallel.cpp
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
// t-eoParallel.cpp
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#include <eo>
|
||||||
|
#include <es/make_real.h>
|
||||||
|
//#include <apply.h>
|
||||||
|
#include "real_value.h"
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
typedef eoReal< eoMinimizingFitness > EOT;
|
||||||
|
|
||||||
|
int main(int ac, char** av)
|
||||||
|
{
|
||||||
|
eoParser parser(ac, av);
|
||||||
|
|
||||||
|
unsigned int popSize = parser.getORcreateParam((unsigned int)100, "popSize", "Population Size", 'P', "Evolution Engine").value();
|
||||||
|
unsigned int dimSize = parser.getORcreateParam((unsigned int)10, "dimSize", "Dimension Size", 'd', "Evolution Engine").value();
|
||||||
|
|
||||||
|
uint32_t seedParam = parser.getORcreateParam((uint32_t)0, "seed", "Random number seed", 0).value();
|
||||||
|
if (seedParam == 0) { seedParam = time(0); }
|
||||||
|
|
||||||
|
make_parallel(parser);
|
||||||
|
make_help(parser);
|
||||||
|
|
||||||
|
rng.reseed( seedParam );
|
||||||
|
|
||||||
|
eoUniformGenerator< double > gen(-5, 5);
|
||||||
|
eoInitFixedLength< EOT > init( dimSize, gen );
|
||||||
|
|
||||||
|
eoEvalFuncPtr< EOT, double, const std::vector< double >& > mainEval( real_value );
|
||||||
|
eoEvalFuncCounter< EOT > eval( mainEval );
|
||||||
|
|
||||||
|
eoPop< EOT > pop( popSize, init );
|
||||||
|
|
||||||
|
//apply< EOT >( eval, pop );
|
||||||
|
eoPopLoopEval< EOT > popEval( eval );
|
||||||
|
popEval( pop, pop );
|
||||||
|
|
||||||
|
eo::log << eo::quiet << "DONE!" << std::endl;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------------
|
||||||
Reference in a new issue