00001 #ifndef AlgGenHookeJeeves_h
00002 #define AlgGenHookeJeeves_h
00003
00004 #include "Algorithm.h"
00005
00006
00010 class GenHookeJeeves : public Algorithm
00011 {
00012 public:
00013 GenHookeJeeves();
00014 bool advanceGeneration(StateP state, DemeP deme);
00015 bool initialize(StateP state);
00016 void registerParameters(StateP state);
00017
00018 protected:
00019 std::vector<double> delta_;
00020 std::vector<bool> changed_;
00021 std::vector<bool> converged_;
00022 uint convergedTotal_;
00023 double precision_, initialMove_;
00024 bool localOnly_;
00025 SelectionOperatorP selFitPropOp_, selBestOp_, selRandomOp_;
00026 };
00027 typedef boost::shared_ptr<GenHookeJeeves> GenHookeJeevesP;
00028
00029 #endif // AlgGenHookeJeeves_h
00030