论文部分内容阅读
遗传算法是一种通过模拟自然进化过程搜索最优解的方法,它在解决复杂的全局优化问题方面已取得了成功的应用,并受到了人们广泛的关注。然而遗传算法是一种新型的优化技术,它今后的发展还有许多工作需要不断充实提高。因此以遗传算法为主要研究对象,寻找求解实际问题的更加有效的算法是很有意义的。遗传算法仿照生物学杂交的原理使用交叉算子来产生新个体,即在两个配对的染色体中按某种方式相互交换其部分基因,从而形成新的个体。交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起着关键作用,是产生新个体的主要方法。交叉算子的设计和实现与所研究的问题密切相关,所以应该与个体编码方案统一考虑,一般要求它既不要太多地破坏个体编码串中表示优良形状的优良模式,又要能够有效地产生出一些较好的新个体模式。通过对交叉算子产生新个体的机理以及实际问题的特征进行分析后,本文提出一种基于非等位基因交叉运算的错位交叉算子,该算子的主要优点在于:(1)能够使种群个体的基因值更加有效地保持多样性,克服传统交叉算子下算法易于陷入局部最优解的缺陷;(2)引导遗传算法在最优解邻域内搜索,从而提高算法的优化速度。该算子主要适用于当问题编码后个体的基因具有相同取值范围的优化问题。在将错位交叉算子应用于多目标优化问题求解时,本文提出一种基于非群体迭代型的小生境多目标优化遗传算法,即算法迭代过程中不是更换种群全部或大部分个体,而是每次更新群体中最差的个体。算法通过计算种群中Pareto优于某个个体的个体数目以及个体所在位置的密集度来定义适应度函数,多个算例的测试结果表明该算法结合错位交叉算子具有较好的性能,能够使算法收敛到Pareto概念下的比较均匀的一组非劣最优解。多目标最小生成树问题是典型的NP难问题。在实际应用中具有广泛的代表性。因此我们将多目标最小生成树问题用于测试本文提出的多目标优化遗传算法,为了更准确评价该算法获取的解的优劣性。本文提出一种用于枚举多目标最小生成树问题所有非劣最优最小生成树的改进算法,并定性证明了该算法能够找到问题的所有非劣最优最小生成树,当然该算法不适合规模太大的问题。最后我们利用该算法求解到的非劣最优解来评价以上的多目标优化遗传算法的性能。