00001 #include "ECF_base.h" 00002 #include "SelRandomOp.h" 00003 00004 00005 bool SelRandomOp::initialize(StateP state) 00006 { 00007 state_ = state; 00008 randomizer_ = state->getRandomizer(); 00009 return true; 00010 } 00011 00012 00013 IndividualP SelRandomOp::select(const std::vector<IndividualP>& pool) 00014 { 00015 if(pool.empty()) 00016 return IndividualP(); 00017 00018 return pool[ randomizer_->getRandomInteger(0, (int) pool.size()-1) ]; 00019 } 00020