1. 首页>百科大全 > 百科

遗传算法怎么把约束条件加进去

作者:马悦明
2020-06-02
百科

1. 如何在遗传算法中设置变量约束条件

1、一般有两种方法,一种是在生成初始种群时只生成满足约束的个体;另一种是随机产生个体,并且在随后的操作中判断个体是否满足约束条件。

2、这是遗传算法的特点决定的;遗传算法是一种随机搜索算法,每次都因种群规模的不同、参数的不同而得到不同的结果。即便参数都相同,每次运算得到的近似最优解也不一定相同。

一般取n次运算中的最好结果来作为最终的最优解。当然,如果你的约束条件设置不妥,或者参数设置不适当,那么也会造成每次运算的近似最优解相差过大,且质量不高。

这些都要注意。3、我用MATLAB自己编写遗传算法来解决问题,因为其自带的工具箱比较固定,只能解决简单、典型的问题。

但你的问题稍加复杂时,工具箱的作用就发挥不出来。

2. 遗传算法中中约束条件怎么处理

1、一般有两种方法,一种是在生成初始种群时只生成满足约束的个体;另一种是随机产生个体,并且在随后的操作中判断个体是否满足约束条件。

2、这是遗传算法的特点决定的;遗传算法是一种随机搜索算法,每次都因种群规模的不同、参数的不同而得到不同的结果。即便参数都相同,每次运算得到的近似最优解也不一定相同。

一般取n次运算中的最好结果来作为最终的最优解。当然,如果你的约束条件设置不妥,或者参数设置不适当,那么也会造成每次运算的近似最优解相差过大,且质量不高。

这些都要注意。 3、我用MATLAB自己编写遗传算法来解决问题,因为其自带的工具箱比较固定,只能解决简单、典型的问题。

但你的问题稍加复杂时,工具箱的作用就发挥不出来。

3. 使用matlab遗传算法工具箱如何加入目标函数中变量的约束条件啊,可

首先回答你第一个问题:怎么加入变量的约束条件?

打开遗传算法工具箱的窗体中会有下图所示的选项,即是约束条件的编辑

至于添加的方式,这里要重点的提一下,首先将问题抽象成规划问题的标准形式(如果你不懂什么是标准形式的话,建议你去翻阅运筹学那本书,上告诉你什么是标准形式),然后用矩阵语言写出来,最后将矩阵的系数填写到线性不等约束和线性相等约束中,同时定义所求变量x的上界和下界(记住有多少个变量就有多少列,如果你发现有些条件中没有出现某些变量,那么就应该用0补足,这个是matlab解决规划问题与lingo想比较麻烦的一个地方,)。

然后回答你第二个问题:可否在M文件中添加约束条件?

当然可以,界面的东西是为了方便不熟悉matlab编程的人而设计出来的,但是其底层的算法和接口肯定是有的。

碰到不懂的函数,请记得:help 函数名

help ga 之后会得到一下一些函数

ga

Find minimum of function using genetic algorithm //这个是定义

Syntax // 这个是语法也即是调用的规则

x = ga(fitnessfcn,nvars)

x = ga(fitnessfcn,nvars,A,b)

x = ga(fitnessfcn,nvars,A,b,Aeq,beq)

x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB)

x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon)

x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)

x = ga(problem)

[x,fval] = ga(。)

[x,fval,exitflag] = ga(。)

直接给你将最长的那个吧

x = ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)

X是返回所求的解

fitnessfcn是适应度函数

nvars是适应度函数中所含变量的维数

A是不等式约束中变量的系数矩阵,b是不等式约束中不含变量的值矩阵

Aeq是等式约束中变量的系数矩阵,beq是等式约束中不含变量的值矩阵

LB是下界,UB是上界

nonlcon 是非线性约束条件

至于options嘛 我也木有用过,其实你也可以不用管的。

懂了木有呢,亲?

4. 遗传算法中中约束条件怎么处理呢

只要你的遗传算子选对,进化过程中上下限约束就能满足;

若是其它连续性变量的线性或非线性约束,可采用罚函数法将这些约束加入目标函数(适应度函数)中,这样就能保证最优解在约束范围内。

若是存在0-1的变量(主要是在规划中,某个东西建或不建),则进化过程就会产生较多不可行解,采用直接丢弃的方法固然可以,但是当不可行解多时,这种方法就使遗传算法失去它的优势;所以就有学者提出了不可行解的修复策略,将不可行解通过某种方法转换为可行解。那么不同的优化问题解的修复策略都可能会不同,如果你设计了一个针对你所做问题的修复策略,那也就成了你的创新点之一了。

当然也有设计进化策略的研究,但这方面比较修复策略而言有难度。

推荐阅读
  • 努比亚z9max手机音乐效验

    该机拥有HIFI级音乐芯片,音乐效果不凡。具体体现在:1.音量调节,正常听音乐中高低音都是一个音量,而杜比音效能动态扩大某个音量。比如放打鼓声,杜比会及时提高低音加强鼓声。2.加强音域,杜比音效有开阔、集中、…

    百科 2024-09-20
  • 是atChristmas还是inChristmas

    此处该用“on”。在圣诞节正确表达应为 “on Christmas ”。有具体日期的,比如知道几月几日的都用“on” ;不知道日期,但知道年份和月份的用“in” ,知道具体时间,比如几点几分用“at”。…

    百科 2024-09-20
  • 个体工商户应交纳什么税

    纳税标准根据国家税务总局《个体工商户定期定额征收管理办法》文件精神 ,定期定额征收方式适用的税种及税率如下:1、根据《中华人民共和国增值税暂行条例》规定,自2009年1月1日起,小规模纳税人增值税征收率为3%…

    百科 2024-09-20
  • 材料成本差异率为负数是什么意思

    材料成本差异额,是指材料的实际成本和计划成本之间的差额。差异率负数表示节约差异,即实际成本比计划成本小。正数表示超支差异,即实际成本比计划成本大。…

    百科 2024-09-20
  • 塞翁失马焉知非福是什么意思

    比喻一时虽然受到损失,反而因此能得到好处。也指坏事在一定条件下可变为好事,反之亦然。形容人的心态,一定要乐观向上,任何事情都有二面性,不好的一面,有可能向好的一面转化。塞翁失马,焉知非福出自《 淮南子…

    百科 2024-09-20