00001 // ClonalCommaES.h: interface for the CClonalCommaES class. 00002 // 00004 00005 #if !defined(AFX_CLONALCOMMAES_H__1CB500E5_C1B5_48AE_884D_E01E67CEC45A__INCLUDED_) 00006 #define AFX_CLONALCOMMAES_H__1CB500E5_C1B5_48AE_884D_E01E67CEC45A__INCLUDED_ 00007 00008 #if _MSC_VER > 1000 00009 #pragma once 00010 #endif // _MSC_VER > 1000 00011 00012 #include "EvolutionStrategy.h" 00013 #include <algorithm> 00014 00015 class CClonalCommaES : public CEvolutionStrategy 00016 { 00017 public: 00018 CClonalCommaES(CParameterFilter *pFilter); 00019 CClonalCommaES(CParameterFilter *pFilter, double sigma, int lambda, int nGenerations, int seed); 00020 virtual ~CClonalCommaES(); 00021 void InitializePopulation(double *parameters); 00022 void SelectParents(); 00023 void Mutation(int whichOffspring); 00024 void Recombination(int whichOffspring); 00025 void Select(); 00026 private: 00027 double m_dTau; 00028 double m_dTauPrime; 00029 double m_dInitialSigma; 00030 }; 00031 00032 #endif // !defined(AFX_CLONALCOMMAES_H__1CB500E5_C1B5_48AE_884D_E01E67CEC45A__INCLUDED_)