• Main Page
  • Classes
  • Files
  • File List

D:/Radagast_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 "binary/Binary.h"
00010 
00011 
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       
00041       InertiaWeightType m_weightType;
00042       double m_weight;
00043       double m_maxV;
00044 };
00045 typedef boost::shared_ptr<ParticleSwarmOptimization> ParticleSwarmOptimizationP;
00046 
00047 #endif // Particle_Swarm_Optimization_h
00048 

Generated on Wed Sep 1 2010 14:31:21 for ECF by  doxygen 1.7.1