?? simplega.h
字號:
// SimpleGA.h: interface for the CSimpleGA class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SIMPLEGA_H__E47D3572_29C8_49C7_B803_B98CEB213997__INCLUDED_)
#define AFX_SIMPLEGA_H__E47D3572_29C8_49C7_B803_B98CEB213997__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "GAUnite.h"
#include "windows.h"
class CSimpleGA
{
public:
int m_iPopuSize;//群體總數(shù)
CGAUnite *m_lpParents,*m_lpFilials;//父代個(gè)體,子代個(gè)體
double m_dSumFitness;//群體適應(yīng)度總和
long int m_lMatingTimes,m_lMutationTimes;//交配、變異次數(shù)統(tǒng)計(jì)
double m_dMaxFitness;//最大適應(yīng)度
double m_dAverageFitness;//平均適應(yīng)度
int m_iMaxLocation;//最大適應(yīng)度個(gè)體位置
double m_dMutationP,m_dCrossingP;//變異率 交叉率
double m_dAffinity;//個(gè)體近似度
int m_position;
int m_count;
int m_nowp;
double last_maxfitness;
void Initial(int pop_size,double mutation_p,double crossing_p);//初始化交配池函數(shù)
virtual Statistic();//統(tǒng)計(jì)函數(shù)
int Selection();// 選擇函數(shù)
int Flip(double probability);//FLIP實(shí)驗(yàn)函數(shù)
int Mutation(unsigned int loca);//變異函數(shù)
int Mating(unsigned int *parent1_chain1,unsigned int *parent1_chain2,
unsigned int *parent2_chain1,unsigned int *parent2_chain2,
int k5);//交配函數(shù)
void Generation(void);//代進(jìn)化函數(shù)
void NextGeneration(void);//父代、子代一致函數(shù)
void ReportGeneration(void);//一代個(gè)體報(bào)告函數(shù)
void FreeSpace();//釋放內(nèi)存空間
void CalcuAffinity();//個(gè)體近似度計(jì)算
int SaveDate(LPCTSTR filename,char if_rewrite);
int SaveCount(LPCTSTR filename,int count);
CSimpleGA();
virtual ~CSimpleGA();
};
#endif // !defined(AFX_SIMPLEGA_H__E47D3572_29C8_49C7_B803_B98CEB213997__INCLUDED_)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -