没有合适的资源?快使用搜索试试~ 我知道了~
遗传算法的原理MATLAB程序实现 (2).docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 25 浏览量
2022-06-20
22:27:47
上传
评论
收藏 277KB DOCX 举报
温馨提示
试读
15页
遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx遗传算法的原理MATLAB程序实现 (2).docx
资源推荐
资源详情
资源评论
1 遗传算法的原理
1.1 遗传算法的基本思想
遗传算法(genetic algorithms,GA)是一种基于自然选择和基因遗传学原理,
借鉴了生物进化优胜劣汰的自然选择机理和生物界繁衍进化的基因重组、突变的
遗传机制的全局自适应概率搜索算法。
遗传算法是从一组随机产生的初始解(种群)开始,这个种群由经过基因编
码的一定数量的个体组成,每个个体实际上是染色体带有特征的实体。染色体作
为遗传物质的主要载体,其内部表现(即基因型)是某种基因组合,它决定了个
体的外部表现。因此,从一开始就需要实现从表现型到基因型的映射,即编码工
作。初始种群产生后,按照优胜劣汰的原理,逐代演化产生出越来越好的近似解。
在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学的遗
传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群
像自然进化一样,后代种群比前代更加适应环境,末代种群中的最优个体经过解
码,可以作为问题近似最优解。
计算开始时,将实际问题的变量进行编码形成染色体,随机产生一定数目的
个体,即种群,并计算每个个体的适应度值,然后通过终止条件判断该初始解是
否是最优解,若是则停止计算输出结果,若不是则通过遗传算子操作产生新的一
代种群,回到计算群体中每个个体的适应度值的部分,然后转到终止条件判断。
这一过程循环执行,直到满足优化准则,最终产生问题的最优解。图 1-1 给出了
遗传算法的基本过程。
1.2 遗传算法的特点
1.2.1 遗传算法的优点
遗传算法具有十分强的鲁棒性,比起传统优化方法,遗传算法有如下优点:
1. 遗传算法以控制变量的编码作为运算对象。传统的优化算法往往直接利用
控制变量的实际值的本身来进行优化运算,但遗传算法不是直接以控制变量的
值,而是以控制变量的特定形式的编码为运算对象。这种对控制变量的编码处理
方式,可以模仿自然界中生物的遗传和进化等机理,也使得我们可以方便地处理
各种变量和应用遗传操作算子。
2. 遗传算法具有内在的本质并行性。它的并行性表现在两个方面,一是遗传
染色体编码,产生初始群体
计算种群中每个个体的适应值
终止条件的判断?
N
gen=gen+
1
Y
变异
新种群
输出结果
结束
图 1-1 简单遗传算法的基本过程
算法的外在并行性,最简单的方式是让多台计算机各自进行独立种群的演化计
算,最后选择最优个体。可以说,遗传算法适合在目前所有的并行机或分布式系
统上进行并行计算处理。二是遗传算法的内在并行性,由于遗传算法采用种群的
方式组织搜索,因而可同时搜索解空间内的多个区域,并相互交流信息。这样就
使得搜索效率更高,也避免了使搜索过程陷于局部最优解。
3. 遗传算法直接以目标函数值作为搜索信息。在简单遗传算法中,基本上不
用搜索空间的知识和其它辅助信息,而仅用目标函数即适应度函数来评估个体解
的优劣,且适应度函数不受连续可微的约束,对该函数和控制变量的约束极少。
对适应度函数唯一的要求就是对于输入能够计算出可比较的输出。
4. 遗传算法是采用概率的变迁规则来指导它的搜索方向,其搜索过程朝着搜
索空间的更优化的解区域移动,它的方向性使得它的效率远远高于一般的随机算
法。遗传算法在解空间内进行充分的搜索,但不是盲目的穷举或试探,因为选择
操作以适应度为依据,因此它的搜索性能往往优于其它优化算法。
5. 原理简单,操作方便,占用内存少,适用于计算机进行大规模计算,尤其
适合处理传统搜索方法难以解决的大规模、非线性组合复杂优化问题。
6. 由于遗传基因串码的不连续性,所以遗传算法处理非连续混合整数规划时
有其独特的优越性,而且使得遗传算法对某些病态结构问题具有很好的处理能
力。
7. 遗传算法同其他算法有较好的兼容性。如可以用其他的算法求初始解;在
每一代种群,可以用其他的方法求解下一代新种群。
1.2.2 遗传算法的缺点
但是,遗传算法也存在一些缺点。
1. 遗传算法是一类随机搜索型算法,而非确定性迭代过程描述,这种方式
必然会较低的计算效率。
2. 对简单遗传算法的数值试验表明,算法经常出现过早收敛现象。
3. 遗传和变异的完全随机性虽然保证了进化的搜索功能,但是这种随机变
化也使得好的优良个体的性态被过早破坏,降低了各代的平均适应值。
2. 遗传算法的实现
2.1 初始参数
种群规模 :种群数目影响遗传算法的有效性。种群数目太小,不能提供足
n
够的采样点;种群规模太大,会增加计算量,使收敛时间增长。一般种群数目在
20 到 160 之间比较合适。
交叉概率 : 控制着交换操作的频率, 太大,会使高适应值的结构很
p
p p
c c c
剩余14页未读,继续阅读
资源评论
apple_51426592
- 粉丝: 9523
- 资源: 9659
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功