• 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_derived.h"
00006 #include "ECF_macro.h"
00007 
00008 #include "Algorithm.h"
00009 #include "floatingpoint/FloatingPoint.h"
00010 
00011 
00022 class ParticleSwarmOptimization : public Algorithm
00023 {
00024    public:
00025       ParticleSwarmOptimization();
00026       
00027       enum InertiaWeightType
00028       {
00029      CONSTANT,
00030      TIME_VARIANT
00031       };
00032       
00033       bool advanceGeneration(StateP state, DemeP deme);
00034       bool initialize(StateP state);
00035       void registerParameters(StateP state);
00036 
00037    protected:
00038       SelectionOperatorP selBestOp;
00039       
00040       int m_maxIter;
00041       
00042       InertiaWeightType m_weightType;
00043       double m_weight;
00044       double m_maxV;
00045 };
00046 typedef boost::shared_ptr<ParticleSwarmOptimization> ParticleSwarmOptimizationP;
00047 
00048 #endif // Particle_Swarm_Optimization_h
00049 

Generated on Fri Jul 5 2013 09:34:23 for ECF by  doxygen 1.7.1