导航:首页 > 源码编译 > ga遗传算法

ga遗传算法

发布时间:2022-02-10 09:18:01

㈠ 求遗传算法(GA)C语言代码

.----来个例子,大家好理解..--
基于遗传算法的人工生命模拟
#include<stdio.h>
#include<stdlib.h>
#include<graphics.h>
#include<math.h>
#include<time.h>
#include<string.h>
#include "graph.c"
/* 宏定义 */
#define TL1 20 /* 植物性食物限制时间 */
#define TL2 5 /* 动物性食物限制时间 */
#define NEWFOODS 3 /* 植物性食物每代生成数目 */
#define MUTATION 0.05 /* 变异概率 */
#define G_LENGTH 32 /* 个体染色体长度 */
#define MAX_POP 100 /* 个体总数的最大值 */
#define MAX_FOOD 100 /* 食物总数的最大值 */
#define MAX_WX 60 /* 虚拟环境的长度最大值 */
#define MAX_WY 32 /* 虚拟环境的宽度最大值 */
#define SX1 330 /* 虚拟环境图左上角点x坐标 */
#define SY1 40 /* 虚拟环境图左上角点y坐标 */
#define GX 360 /* 个体数进化图形窗口的左上角点X坐标 */
#define GY 257 /* 个体数进化图形窗口的左上角点Y坐标 */
#define GXR 250 /* 个体数进化图形窗口的长度 */
#define GYR 100 /* 个体数进化图形窗口的宽度 */
#define GSTEP 2 /* 个体数进化图形窗口的X方向步长 */
#define R_LIFE 0.05 /* 初期产生生物数的环境比率 */
#define R_FOOD 0.02 /* 初期产生食物数的环境比率 */
#define SL_MIN 10 /* 个体寿命最小值 */
/* 全局变量 */
unsigned char gene[MAX_POP][G_LENGTH]; /* 遗传基因 */
unsigned char iflg[MAX_POP]; /* 个体死活状态标志变量 */

㈡ matlab中遗传算法ga(fitnessfcn,nvars,A,b,Aeq,beq)的目标函数内中变量的大小和参数是可变的怎么实现

真巧,我在用遗传算法优化。GA是一个封装文件,调用的话只需要在工作空间打上相应的参数就行了。例如[xv,fv]=ga(@fitness,0,30,50,100,0.9,0.04,0.01)回车即可运算。其中fitness是调用的另一个M文件函数

㈢ MATLAB用遗传算法ga求最大值中的最小值

MATLAB用遗传算法ga求含有最大值的最小值问题,可以这样处理:由于最大值问题的反问题就是最小值问题,所以 max=-min。因此,你的问题就可以改写为

min ( min -(3*x1+4*x2+...))

㈣ 遗传算法(GA)做project

遗传学算法解决旅行商问题.
网络上应该有很多的资料。

你是研究生???

旅行商问题就是那个几个城市,每个城市只走一次,求最短路程的。这种问题用计算机的传统方法解决就是个NP问题,所以根据这个问题就有很多其他的算法应运出来。
比如退火,遗传等等。
其实都是利用迭代,到一个比较稳定的数,就认为是一个较优的解,而未必是最优的解....

你可以搜索下遗传学算法,网络上应该不少东西,特别是旅行商的那种经典问题。

㈤ 模拟退火法(SA)和遗传算法(GA)的专业解释

n局部搜索,模拟退火,遗传算法,禁忌搜索的形象比喻:

为了找出地球上最高的山,一群有志气的兔子们开始想办法。
1.兔子朝着比现在高的地方跳去。他们找到了不远处的最高山峰。但是这座山不一定是珠穆朗玛峰。这就是局部搜索,它不能保证局部最优值就是全局最优值。
2.兔子喝醉了。他随机地跳了很长时间。这期间,它可能走向高处,也可能踏入平地。但是,他渐渐清醒了并朝最高方向跳去。这就是模拟退火。
3.兔子们吃了失忆药片,并被发射到太空,然后随机落到了地球上的某些地方。他们不知道自己的使命是什么。但是,如果你过几年就杀死一部分海拔低的兔子,多产的兔子们自己就会找到珠穆朗玛峰。这就是遗传算法。
4.兔子们知道一个兔的力量是渺小的。他们互相转告着,哪里的山已经找过,并且找过的每一座山他们都留下一只兔子做记号。他们制定了下一步去哪里寻找的策略。这就是禁忌搜索。

㈥ 求遗传算法(GA)处理离散的整数型变量的程序。

两种编码都有,可以自己选择。 你在MATLAB2008里输入 gaoptimset 会弹出遗传算法的所有的设置选项及默认项。其中,第一行就是个体的编码方式,第一行如下 PopulationType: [ 'bitstring' | 'custom' | ] 其中,bitstring就是二进制编码,而'doubleVector'即实数编码(MATLAB里实数是用double双精度浮点数表示的,精度很高。大括号{}表示是默认设置。 而中间的'custom'是表示用户自己构造个体的编码形式。

㈦ 遗传算法的优缺点

优点:

1、遗传算法是以决策变量的编码作为运算对象,可以直接对集合、序列、矩阵、树、图等结构对象进行操作。这样的方式一方面有助于模拟生物的基因、染色体和遗传进化的过程,方便遗传操作算子的运用。

另一方面也使得遗传算法具有广泛的应用领域,如函数优化、生产调度、自动控制、图像处理、机器学习、数据挖掘等领域。

2、遗传算法直接以目标函数值作为搜索信息。它仅仅使用适应度函数值来度量个体的优良程度,不涉及目标函数值求导求微分的过程。因为在现实中很多目标函数是很难求导的,甚至是不存在导数的,所以这一点也使得遗传算法显示出高度的优越性。

3、遗传算法具有群体搜索的特性。它的搜索过程是从一个具有多个个体的初始群体P(0)开始的,一方面可以有效地避免搜索一些不必搜索的点。

另一方面由于传统的单点搜索方法在对多峰分布的搜索空间进行搜索时很容易陷入局部某个单峰的极值点,而遗传算法的群体搜索特性却可以避免这样的问题,因而可以体现出遗传算法的并行化和较好的全局搜索性。

4、遗传算法基于概率规则,而不是确定性规则。这使得搜索更为灵活,参数对其搜索效果的影响也尽可能的小。

5、遗传算法具有可扩展性,易于与其他技术混合使用。以上几点便是遗传算法作为优化算法所具备的优点。

缺点:

1、遗传算法在进行编码时容易出现不规范不准确的问题。

2、由于单一的遗传算法编码不能全面将优化问题的约束表示出来,因此需要考虑对不可行解采用阈值,进而增加了工作量和求解时间。

3、遗传算法效率通常低于其他传统的优化方法。

4、遗传算法容易出现过早收敛的问题。

(7)ga遗传算法扩展阅读

遗传算法的机理相对复杂,在Matlab中已经由封装好的工具箱命令,通过调用就能够十分方便的使用遗传算法。

函数ga:[x, fval,reason]= ga(@fitnessfun, nvars, options)x是最优解,fval是最优值,@fitnessness是目标函数,nvars是自变量个数,options是其他属性设置。系统默认求最小值,所以在求最大值时应在写函数文档时加负号。

为了设置options,需要用到下面这个函数:options=gaoptimset('PropertyName1', 'PropertyValue1', 'PropertyName2', 'PropertyValue2','PropertyName3', 'PropertyValue3', ...)通过这个函数就能够实现对部分遗传算法的参数的设置。

㈧ 遗传算法 matlab自带ga函数

c=[246];%c为目标函数系数
fun_1=@(x)dot(c,x');%y为适应度函数值,求两向量的数量积

A=[10-1;-1-20;-100];%A为AX<=b的系数矩阵
b=[10;-1;0];%b为AX<=b的常数项
Aeq=[011];%AeqX=beq的系数矩阵
beq=12;%AeqX=beq的常数项

[x,y]=ga(fun_1,3,A,b,Aeq,beq)

㈨ 遗传算法:matlab中ga函数参数options该怎么设置

  1. options可以不写有默认设置。

  2. options是一个结构体要用函数gaoptimset()设置。

  3. options=gaoptimset()然后把options填到ga()里面。

  4. gaoptimset('属性名1',数值1,'属性名2',数值2......)。

常用设置:

阅读全文

与ga遗传算法相关的资料

热点内容
编程有可能会被纳入学科吗 浏览:44
二级抗震柱子要全高加密么 浏览:361
绝地求生换服务器有什么变化 浏览:322
php如何放到服务器里 浏览:245
红色警戒2安装加密密码 浏览:152
php集群session 浏览:767
sct报价存储服务器怎么选 浏览:725
金蝶硬加密怎么样 浏览:385
linux桌面虚拟化 浏览:90
时间动态加密怎么解密 浏览:281
美女玩声控解压 浏览:367
编程人员组装电脑 浏览:463
燕窝新版溯源码 浏览:77
程序员吃青春饭的好处 浏览:663
浙江戴尔服务器云空间 浏览:330
网站锁源码 浏览:823
CAd打印文件命令 浏览:502
小米5sp无法复制加密门禁 浏览:831
文件夹添加密码怎么找回 浏览:801
安卓怎么校色 浏览:279