标准遗传算法-c++源程序.doc

标准遗传算法-c++源程序.doc

ID:57816911

大小:47.50 KB

页数:14页

时间:2020-03-30

标准遗传算法-c++源程序.doc_第1页
标准遗传算法-c++源程序.doc_第2页
标准遗传算法-c++源程序.doc_第3页
标准遗传算法-c++源程序.doc_第4页
标准遗传算法-c++源程序.doc_第5页
资源描述:

《标准遗传算法-c++源程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#include#include#include#definePOPSIZE500#defineMAXIMIZATION1#defineMINIMIZATION2#definerandom(x)(rand()%(x))#defineCmax100/*最大值函数适应度的设置*/#defineCmin0/*最小值函数适应度的设置*/#defineLENGTH110#defineLENGTH210#defineCHROMLENG

2、THLENGTH1+LENGTH2intFunctionMode=MAXIMIZATION;/*optimizationtype即函数类型,是求最大值函数还是最小值函数*/inta=100;intPopSize=80;intMaxGeneration=200;doublePc=0.6;doublePm=0.001;structindividual{charchrom[CHROMLENGTH+1];doublevalue;doublefitness;};intgeneration;intbest_index;intworst_index;structi

3、ndividualbestindividual;structindividualworstindividual;structindividualcurrentbest;structindividualpopulation[POPSIZE];voidGenerateInitialPopulation(void);voidGenerateNextPopulation(void);voidEvaluatePopulation(void);longDecodeChromosome(char*,int,int);voidCaculateObjectValue(

4、void);voidCaculateFitnessValue(void);voidFindBestAndWorstIndividual(void);voidPerformEvolution(void);voidSelectionOperator(void);voidCrossoverOperator(void);voidMutationOperator(void);voidOutputTextReport(void);voidmain(){srand((unsigned)time(NULL));//随时间而改变随机数generation=0;Gene

5、rateInitialPopulation();EvaluatePopulation();while(generation

6、n[i].chrom[j]=(random(10)<5)?'1':'0';}population[i].chrom[CHROMLENGTH]='';}}voidGenerateNextPopulation(void){SelectionOperator();CrossoverOperator();MutationOperator();}voidEvaluatePopulation(void){CaculateObjectValue();CaculateFitnessValue();FindBestAndWorstIndividual();}lon

7、gDecodeChromosome(char*string,intpoint,intlength){inti;longdecimal=0;char*pointer;for(i=0,pointer=string+point;i

8、emp1=DecodeChromosome(population[i].chrom,0,LENGTH1);t

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。