这是我在解决电梯动力学参数写的简单遗传算法(程序带目标方案.docVIP

  • 0
  • 0
  • 约 14页
  • 2017-07-07 发布于湖北
  • 举报

这是我在解决电梯动力学参数写的简单遗传算法(程序带目标方案.doc

这是我在解决电梯动力学参数写的简单遗传算法(程序带目标方案

这是我在解决电梯动力学参数写的简单遗传算法(程序带目标函数值、适应度值计算,但是我的适应度函数因为目标函数的计算很特殊,一起放在了程序外面计算,在此不提供)。 头文件: // CMVSOGA.h : main header file for the CMVSOGA.cpp //////////////////////////////////////////////////////////////////// /////????????????????????????????????????????????????????????? ///// /////??????????????? 沈阳航空工业学院 动力工程系?????????????? ///// /////?????????????????????? 作者:李立新?????????????????????? ///// /////?????????????????? 完成日期:2006.08.02?????????????????? ///// /////????????????????????????????????????????????????????????? ///// //////////////////////////////////////////////////////////////////// // 本来想使用链表里面套链表的,程序调试比较麻烦,改为种群用链表表示 //染色体固定为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 be

文档评论(0)

1亿VIP精品文档

相关文档