论文部分内容阅读
实数遗传算法研究是智能优化方法中一个重要的研究方向,它的提出是建立在自然选择和遗传学原理基础之上,是求解函数优化问题的重要方法之一。虽然实数遗传算法在理论和应用等方面都取得了巨大成功,但仍存在许多不足之处有待进一步的完善和提高。通过对现有的关于实数遗传算法的文献学习和探讨,发现实数遗传算法主要存在如下缺陷:(1)实数遗传算法在进行交叉和变异操作时,上一代产生的优秀个体极易遭到破坏,一般算法采用精英保留的策略来防止这一现象出现,却又降低了种群的多样。如何使种群多样性得到保证的同时还使父本中的优秀个体不遭到破坏成为一个亟待研究的问题。(2)实数遗传算法最基本的交叉算子是算数交叉算子和启发式交叉算子两种,都无法使子代个体跳出父本对取值范围的约束,限制了实数遗传算法搜索能力的可拓展性。(3)实数遗传算法在求解约束优化问题时,常以惩罚函数的形式进行,但其中惩罚因子选择的合理与否严重影响算法的寻优性能,并且针对不同的实际问题惩罚因子值也各不相同,导致最佳惩罚因子的值很难确定。针对实数遗传算法存在的上述缺陷,对实数遗传算法进行了改进,将动态步长的思想引入到实数遗传算法的交叉操作中。最后根据约束优化这类问题的特点将改进后的实数遗传算法进行了调整,提出了一种新实数遗传算法——非可行个体收缩法,应用到约束优化问题的求解中。本文采用了理论分析与实验验证相结合的研究思想,采用与传统实数遗传算法相比较的方法对改进后的实数遗传算法的有效性进行了测试评估。本文对实数遗传算法的研究对遗传算法的完善和发展具有一定的推动作用,取得的主要研究成果有:(1)为约束优化问题初始种群的生成提出了一种新方法。针对约束优化问题,基本遗传算法常用随机的方式来生成初始种群,这导致在求解复杂约束优化问题时产生初始种群耗去大量的时间。本文提出的初始种群的方法,综合应用了罚函数、梯度搜索和非可行个体修复的策略。首先通过梯度搜索法确定第一个可行内点,然后通过修复策略产生后续可行个体,使初始种群的产生速度得到了很大的提高。(2)在交叉操作中引入了梯度搜索和动态步长的思想。本文在实数遗传算法进行交叉操作的过程中引入了梯度搜索的思想,以个体适应度值为评价指标动态确定交叉因子的值,保证了交叉产生的新个体分布在优秀父本个体附近的概率变大,同时变步长的思想能够促进子代个体跳出父本的范围约束,而且产生的新个体不会劣于父本个体,提高了算法的寻优效率。(3)在约束优化问题中引入了非可行个体修复的策略。针对约束优化问题,为了保证种群中每个个体的可行性,提出了一种向可行域内点靠近的修复策略。通过收缩因子的设定,能够保证非可行个体通过有限步的调整转化为可行个体。最后在对全文进行总结的基础之上,对实数遗传算法的发展进行了展望。