关于遗传算法的应用研究

时间:2022-07-18 02:51:09

关于遗传算法的应用研究

摘 要:遗传算法指的是Genetic. Algorithms,是一种比较完整的计算方法。文中介绍了遗传算法的原理、方法,以及它存在的问题。另外,从人工生命、图像处理、组合的最优化、自动控制等几个方面分析了遗传算法在各个领域中的应用以及它的发展前景。

关键词:遗传算法;种群;最优化;应用;领域

中图分类号:TP18

适者生存是遗传算法的基本模型,在漫长的岁月中,经过了很多代的、变异与不断的重复来得到最优的结果。遗传算法根据这种模型分为了2个部分,编码、解码的过程以及相关的遗传性操作。

1 遗传算法的原理与方法

1.1 编码。编码是指问题的可能解从其解空间中转换到GA能够处理的空间去的转换,而解码则是将GA的解空间转换到问题空间。编码机制不仅会对算法的整体性能造成影响,对于种群的初始化以及遗传算子的设计等过程其决定性作用。二进制编码、Gray编码以及实数编码是最常用的三种编码方案。

1.2 种群的初始化。种群的初始化指的是第一代种群是如何生成的。对于二进制编码机制来说,初始化指的是生成几个二进制数串,而对于实数编码机制来说,初始化就是指生成几个实数数串。

1.3 适应度函数。适应度指的是在群体中个体在优化时所能达到的优良程度。适应度越高,遗传到下一代的开率就越大;相反,适应度越低,遗传到下一代的概率就越小。适应度函数就是衡量这种适应度的函数,它的确定根据是目标函数。不同的适应度函数可以区分出群体中个体的好坏,是评判的标准,也是驱动算法演化的动力。

1.4 选择算子。选择算子是一个新种群产生的过程,一个旧的种群选择一个生命力旺盛的个体进行位串的复制,就可以产生一个新种群。选择的不同直接导致效果的不同。当面临的选择压力较大时,种群中最优秀的个体就会被最大程度的复制,算法的收敛速度也就越快,但“早熟”问题出现的概率也就相应增大。相反的,选择压力较小的话,种群就可以保持多样性,这对于局部最优的出现是有力的,但算法的收敛速度就不够了,效率也非常低。赌选择、最佳个体保存选择、排序的选择、局部竞争选择以及Boltzmann选择等。

1.5 交叉算子。交叉算子指的是两个染色体通过某种方式进行自身基因片段的交换,产生新个体的过程。交叉算子所需要考虑的不仅是更多个体的生成,还有种群多样性的保持、优良个体不被破坏、收敛速度的加快以及种群多样性与收敛性的和谐、统一。最长使用的交叉算子包括单点交叉、多点交叉、算数交叉和均匀交叉。

1.6 变异算子。变异指的是染色体的基因片段发生了随机的改变,这种改

变的可能性比较小。种群中个体变异的机会由变异的概率决定。概率太高,种群中优良个体结构就会被破坏,概率太低,新个体的产生速度又太慢,并因而导致收敛速度太慢、将局部最优当做整体最优的后果。倒位变异、插入变异以及变换变异是常用的三种变异算子。有研究证明,若将多种算子同时交叉使用或是按某种概率分配使用,效果会更好。

2 遗传算法的优势

2.1 遗传算法的搜索是从初始解集开始的,而不是开始于单个的解,因

此覆盖的面积更大,这对于全局择优来说十分有利而且有效的避免陷入局部最优解的误区中。

2.2 遗传算法的操作针对的不是有待优化的参数本身,而是让这些参数所在的染色体执行交叉、变异、选择等操作,这样的操作速度比较快,达到的效果较好,更容易达到全局的最优解。

2.3 遗传算法在求解的过程定问题的使用非常少,因此形成的算法程序比较通用,在进行优化时受到的限制也比较少。对于可微可导、函数的连续性以及通用性等没有特殊的要求。

2.4 遗传算法的选择、交叉、变异等操作是一个过滤作用很强的操作,能

快速地排除与最优解相差很大的串。

2.5 遗传算法中的选择、交叉、变异等操作都是随机的。选择操作拉近了力最优解的距离,而交叉操作则是实现了最优解的出现,变异是为了覆盖全局的最优解。

2.6 遗传算法隐含着一定的并行性,很容易实现,效果也很好。

3 遗传算法存在的问题

3.1 遗传算法进行全局搜索的效果虽然很好,但在搜索局部最优解时却存在着不足。一般算法前期的搜索效果比较好,而到了算法的后期,搜索速度会明显减缓。因此,即便已经力全局最优解已经很接近了,但搜索速度的下降还是需要花费很长的时间。

3.2 遗传算法的实现虽然很简单,但是效果却与种群的规模、遗传的代数、变异的概率有着很大的关系。如果这些参数没有设置好,遗传算法就会变得类似于随机搜索算法。而确定这些规定又没有可遵循的规律,只能通过进行试验来获得,并且不能通用,因而当有待优化的问题改变时,参数的重新指定会花费很多的时间与精力。

4 遗传算法的应用

遗传算法具有容易实现、依赖性小等优点,可以为求解复杂的优化问题提供通用的解决框,以下是遗传算法的主要应用。

4.1 函数的优化。在遗传算法的应用里,函数优化是一个很经典的领域。在这个领域里,不管是非线性的函数优化问题,还是多模型、多目标的函数优化问题,遗传算法的求解与其他算法相比,都有着比较快的速度与较好的效果。

4.2 组合的优化。有时候问题的规模太大,搜索的空间会不断的扩张,最优解的搜索难度很大。而遗传算法解决组合的优化问题非常的有效。

4.3 生产调度问题的优化。不管是单件生产的车间调度问题,还是流水线生产模式的车间调度还是生产规模、人员的调配,遗传算法的应用都可以取得不错的效果。

4.4 自动控制。遗传算法应用范围的日益扩大,使得它在自动控制领域也越来越重要。在进行辨识参数、优化人工神经网络的结构方面都有着它独特的优势。

4.5 智能控制。遗传算法的研究源自于自适应系统,因此,在移动机器人的路径规划、运动轨迹、运动学的求解以及结构的优化和行动的协调方面,遗传算法都有很好的应用。

4.6 图像处理。图像在进行扫描、提取、分割等处理时常常会有一些误差出现。因此,遗传算法也被应用到了恢复图像、提取图像的边缘特征、识别几何形状等方面。

4.7 遗传程序的设计。遗传算法运用到遗传程序的设计中去的思路是用树形结构代表计算机程序,对遗传算法的思想加以利用来导出计算机程序,使得问题得到解决。这种想法目前还没有真正实现,在实际的应用过程中应该也会遇到一定的阻碍,但它的可行性还是可以确定的。

4.8 人工生命。人工生命的研究最重要的理论基础就是遗传算法的进化模型。因而,在人工生命的进化模型、行为模型、学习模型的建立方面,遗传算法都得到了广泛的应用。

5 结语

遗传算法的发展历经几十年,它的应用范围也从工程科学延伸到了社会科学,这都是因为遗传算法有着各方面的优势。随着遗传算法研究的日渐成熟,它的应用范围一定会更加广泛。

参考文献:

[1]张阳新,王敏毅,齐子凤.遗传算法在某固体火箭发动机中的应用[J].弹箭与制导学报,2013(1).

[2]吴君,张京娟.采用遗传算法的多机自由飞行冲突解脱策略[J].智能系统学报,2013(1).

[3]王强,赵海龙,代志勇等.直线感应加速器输运磁场遗传算法优化[J].强激光与粒子束,2013(5).

[4]毛克阳,孙作玉,燕乐纬等.基于遗传算法的结构主动控制作动器优化布置[J].中山大学学报:自然科学版,2013(2).

[5]陈洁,杨秀,朱兰等.基于遗传算法的热电联产型微网经济运行优化[J].电力系统保护与控制,2013(8).

上一篇:应用WAF技术保护校园网站安全 下一篇:莱钢50T精炼炉底吹氩智能控制系统的应用