• 大小: 9KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-01-11
  • 标签: c++  遗传算法  

资源简介

一个简单遗传算法的模板,提供两种交叉方式,网友可自己更改,对各种问题要做相应更改

资源截图

代码片段和文件信息


#include
#include
#include
#include
#include

using namespace std;

namespace GA
{



  //   随机数函数
  //   开机的毫秒数作为随机种子

  float lewis(){
    static long double seed=GetTickCount();
    seed=seed+214;
       seed=fmod(float(seed*16807.)float( 2147483647.));
       return(seed/2147483647.);
  };

  //基因型结构体
  //包括基因串及长度
  class Gen{
  public:
    char * bufs;
    int numbers;
float adarate;
    Gen(){bufs=NULL;};
    ~Gen(){ delete [] bufs;}

  };




  //结果结构体
  //包括结果及代数
  typedef struct resoulst{
    int generations;
    int resou;
  }resoult;





  class GA
  {
    int allada;
    int counts;                //种群数量
    int length;                 //基因位数
    resoult *rs;
    float (*eva

评论

共有 条评论