• 大小: 39KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: C/C++
  • 标签: 遗传算法  C语言  

资源简介

用C语言实现的遗传算法,调试通过,可运行,注释良好。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include “my_ga.h“

#define PI      (3.1415926)

/*
    多峰函数:z = 21.5 + x *sin(4 * 3.1415926 * x) + y * sin(20 * 3.1415926 * y)
    适 应 度:log(log(z))
    约    束:-3.0 <= x <= 12.1; 4.1 <= y <= 5.8
    精    度:精确到千分位
*/
double get_fitness(const double x const double y)
{
    return log(log(21.5 + x * sin(4 * PI * x) + y * sin(20 * PI * y)));
    //return 21.5 + x * sin(4 * PI * x) + y * sin(20 * PI * y);
}



int main()
{
    // 进行100次实验
    for (int j = 0; j < 100; j++)
    {
        // 创建遗传算法器
        GA *ga = create_ga(get_fitness 100);

        ga->init(ga);

        // 迭代100代
        for (int i = 0; i < 100; i++)
        {
            ga->evolve(ga);
        }

        // 销毁遗传算法器
        delete_ga(ga);

        printf(“-----------------------------------------------------\n“);

        getch();
    }


    return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      73792  2018-12-30 22:49  my_ga\bin\Debug\my_ga.exe

     文件        982  2018-12-30 21:33  my_ga\main.c

     文件      11808  2018-12-30 22:49  my_ga\my_ga.c

     文件       1168  2018-11-15 23:29  my_ga\my_ga.cbp

     文件        287  2018-12-30 22:33  my_ga\my_ga.depend

     文件       2760  2018-11-16 11:23  my_ga\my_ga.h

     文件        723  2018-12-30 23:38  my_ga\my_ga.layout

     文件       4108  2018-12-30 21:33  my_ga\obj\Debug\main.o

     文件      11933  2018-12-30 22:49  my_ga\obj\Debug\my_ga.o

     目录          0  2018-12-30 22:49  my_ga\bin\Debug

     目录          0  2018-12-30 22:49  my_ga\obj\Debug

     目录          0  2018-11-15 11:02  my_ga\bin

     目录          0  2018-11-15 11:02  my_ga\obj

     目录          0  2018-12-30 23:38  my_ga

----------- ---------  ---------- -----  ----

               107561                    14


评论

共有 条评论