• Main Page
  • Modules
  • Classes
  • Files
  • File List

D:/Projekt/ECF_trunk/ECF/AlgParticleSwarmOptimization.h

00001 #ifndef Particle_Swarm_Optimization_h
00002 #define Particle_Swarm_Optimization_h
00003 
00004 #include "ECF_base.h"
00005 #include "ECF_macro.h"
00006 
00007 #include "Algorithm.h"
00008 #include "floatingpoint/FloatingPoint.h"
00009 
00010 
00021 class ParticleSwarmOptimization : public Algorithm
00022 {
00023 public:
00024     ParticleSwarmOptimization();
00025 
00026     enum InertiaWeightType
00027     {
00028         CONSTANT,
00029         TIME_VARIANT
00030     };
00031 
00032     bool advanceGeneration(StateP state, DemeP deme);
00033     bool initialize(StateP state);
00034     void registerParameters(StateP state);
00035 
00036 protected:
00037     SelectionOperatorP selBestOp;
00038 
00039     int m_maxIter;
00040     InertiaWeightType m_weightType;
00041     double m_weight;
00042     double m_maxV;
00043     bool areGenotypesAdded_;
00044     bool bounded_;  
00045     double lbound_, ubound_;
00046 };
00047 typedef boost::shared_ptr<ParticleSwarmOptimization> ParticleSwarmOptimizationP;
00048 
00049 #endif // Particle_Swarm_Optimization_h
00050 

Generated on Tue Nov 4 2014 13:04:30 for ECF by  doxygen 1.7.1