⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 genegroup.h

📁 本程序为遗传算法示范程序(visaul c++ 源程序)
💻 H
字号:
// GeneGroup.h: interface for the CGeneGroup class.
// 遗传算法实现:基因组类,鲍捷,1999-05-21
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_GENEGROUP_H__7BBB714F_0F92_11D3_9A48_CAE28697F35C__INCLUDED_)
#define AFX_GENEGROUP_H__7BBB714F_0F92_11D3_9A48_CAE28697F35C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


#define MAX_POP 100  //最大世代数
#define MAX_STRING 64  //最大串长

struct pp{
	unsigned char chrom[MAX_STRING];//染色体
	float x, //表现型
		fitness;//适应度
	unsigned int parent1,//父
		parent2,//母
		xsite;
};


class CGeneGroup : public CObject  
{
public:
	void Randomize1();
	double Random(UINT nMax);
	void Randomize();
	int Select();
	void Generation();
	int Flip(float probability);
	float ObjFunc(float x);
	void Statistics(pp * pop);
	CGeneGroup();
	virtual ~CGeneGroup();

	int		m_nPopSize;//群体大小
	int		m_nChromLen;//染色体长度
	int 	m_nMaxGen;//最大世代数
	float	m_fPCross;//交叉概率
	float	m_fPMutation;//变异概率

};

#endif // !defined(AFX_GENEGROUP_H__7BBB714F_0F92_11D3_9A48_CAE28697F35C__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -