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