00001 #ifndef Genetic_Annealing_h
00002 #define Genetic_Annealing_h
00003
00004 #include "Algorithm.h"
00005
00006
00014 class GeneticAnnealing : public Algorithm
00015 {
00016 public:
00017 GeneticAnnealing();
00018
00019 bool advanceGeneration(StateP state, DemeP deme);
00020 bool initialize(StateP state);
00021 void registerParameters(StateP state);
00022
00023 protected:
00024 bool isFirstGeneration_;
00025 double energyBank_;
00026 double *Th;
00027 double coolingF_;
00028 double dE_;
00029 SelBestOpP selBestOp_;
00030 bool elitism_;
00031
00032 };
00033 typedef boost::shared_ptr<GeneticAnnealing> GeneticAnnealingP;
00034
00035 #endif // Genetic_Annealing_h
00036