00001 #ifndef Elimination_h 00002 #define Elimination_h 00003 00004 #include "Algorithm.h" 00005 #include "SelFitnessProportionalOp.h" 00006 #include "SelRandomOp.h" 00007 #include "SelBestOp.h" 00008 00023 class Elimination : public Algorithm 00024 { 00025 public: 00026 Elimination(); 00027 bool advanceGeneration(StateP state, DemeP deme); 00028 bool initialize(StateP state); 00029 void registerParameters(StateP state); 00030 00031 protected: 00032 double genGap_; 00033 double selPressure_; 00034 SelFitnessProportionalOpP selFitPropOp; 00035 SelRandomOpP selRandomOp; 00036 SelBestOpP selBestOp; 00037 }; 00038 typedef boost::shared_ptr<Elimination> EliminationP; 00039 00040 #endif // Elimination_h