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

📄 genlinear.cpp

📁 用C++语言在VC++环境下编写的遗传算法源程序
💻 CPP
字号:
//头文件:		GenLinear.hpp
//目的:			为线性规格化遗传算法提供基类,本类为Genetic的派生类
//语言:			VC++ 6.0
//时间:			1999年7月
//作者:			刘康
//环境:			Win32
//注意:			EvalVal(INIDIVIDUAL&)应由用户类覆盖,以提供正确的评价函数.
//////////////////////////////////////////////////////////////////////

#include "GenLinear.hpp"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

GenLinear::GenLinear(int n, int gl) : Genetic(n,gl)
{
	FitStep = 10;
	ValOK = false;
}
GenLinear::GenLinear(GenLinear& g) : Genetic(g)
{
	FitStep = g.FitStep;
	ValOK = g.ValOK;
}
//适合度计算函数
double GenLinear::GetFit(int i)
{
	if(!ValOK)
	{
		AllVal();
		IndexSort();
		ValOK = true;
	}
	double fit = 0;
	for(int k=IndNumber-1; k>=0; k--)
	{
		Individual[IndIndex[k]].Fit = fit;
		fit += FitStep;
	}
	return Individual[i].Fit;
}
//产生新一代
void GenLinear::Generation()
{
	ValOK = false;
	Genetic::Generation();
}

⌨️ 快捷键说明

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