栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++实现简单遗传算法

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++实现简单遗传算法

本文实例讲述了C++实现简单遗传算法。分享给大家供大家参考。具体实现方法如下:

//遗传算法 GA 
#include
#include 
#include
using namespace std;
const int L=5; //定义编码的长度 
int f(int x) //定义测设函数f(x) 
{
int result;
result=x*x*x-60*x*x+900*x+100;
return result;
}
int main(int argc,char *argv[])
{
int a(0),b(32); //定义x的定义域范围
const int pop_size=8; //定义种群大小
// int L; //指定编码的长度 
const int NG=20; //指定种群最大的繁殖的代数 
int t=0; //当前繁殖的代数 
int p[pop_size]; //定义种群 
int q[pop_size]; //定义繁殖种群 即种群的下一代 
srand(6553); //定义随机数生成的种子 
double sum; //适值总和 
double avl_sum; //适度平均值 
double p_probability[pop_size]; //适值概率 
double pp[pop_size];
double pro; //定义随机生成的概率 
float pc=0.90; //定义交叉的概率 
float pm=0.05; //定义变异的概率 
cout<<"初始的种群 "; 
for(int i=0;ie(a);
bitsetf(b); //前pos个分量进行相互交换
bitsetg;     
bitseth;
for(int i=0;i

希望本文所述对大家的C++程序设计有所帮助。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/65146.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号