网站大量收购独家精品文档,联系QQ:2885784924

多变量多目标的遗传算法程序.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多变量多目标的遗传算法程序

这是我在解决电梯动力学参数写的简单遗传算法(程序带目标函数值、适应度值计算,但是我的适应度函数因为目标函数的计算很特殊,一起放在了程序外面计算,在此不提供)。 头文件: // CMVSOGA.h : main header file for the CMVSOGA.cpp // 本来想使用链表里面套链表的,程序调试比较麻烦,改为种群用链表表示 //染色体固定为16的方法。 #if !defined(AFX_CMVSOGA_H__45BECA_61EB_4A0E_9746_9A94D1CCF767__INCLUDED_) #define AFX_CMVSOGA_H__45BECA_61EB_4A0E_9746_9A94D1CCF767__INCLUDED_ #if _MSC_VER 1000 #pragma once #endif // _MSC_VER 1000 #include Afxtempl.h #define variablenum 16 class CMVSOGA { public: ?CMVSOGA(); ?void selectionoperator(); ?void crossoveroperator(); ?void mutationoperator(); ?void initialpopulation(int, int ,double ,double,double *,double *);???????????//种群初始化 ?void generatenextpopulation();??????????//生成下一代种群 ?void evaluatepopulation();???????????//评价个体,求最佳个体 ?void calculateobjectvalue();??????????//计算目标函数值 ?void calculatefitnessvalue();??????????//计算适应度函数值 ?void findbestandworstindividual();?????????//寻找最佳个体和最差个体 ?void performevolution();??? ?void GetResult(double *); ?void GetPopData(double **); ?void SetValueData(double *); ?void maxandexpectation(); private: ?struct individual ?{ ??double chromosome[variablenum];?????????//染色体编码长度应该为变量的个数 ??double value;???????? ??double fitness;?????????????//适应度 ?}; ?double variabletop[variablenum];?????????//变量值 ?double variablebottom[variablenum];?????????//变量值 ?int popsize;??????????????//种群大小 //?int generation;??????????????//世代数 ?int best_index;?? ?int worst_index; ?double crossoverrate;????????????//交叉率 ?double mutationrate;????????????//变异率 ?int maxgeneration;?????????????//最大世代数 ?struct individual bestindividual;?????????//最佳个体 ?struct individual worstindividual;?????????//最差个体 ?struct individual current;??? ??????????//当前个体 ?struct individual current1;??? ??????????//当前个体 ?struct individual currentbest;??????????//当前最佳个体 ?CList struct individual,struct individual population;???//种群 ?CList struct individual,struct individual newpopulation;??//新种群 ?CList double,double cfitness;??????????//存储适应度值 //?double maxfitness; //?double minfitness; //?double

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档