论文部分内容阅读
差分进化算法(Differential Evolution Algorithm,简称DE)是一种可以用来解决各种全局优化问题的简单有效的启发式进化算法。差分进化算法主要分为种群初始化、变异操作、交叉操作和选择操作这四个步骤。差分进化算法具有模型简单、易于实现、鲁棒性好、扩展性强等优点。然而,差分进化算法在实际运行过程中往往会出现种群停滞或者早熟收敛问题,从而使得种群进化速度非常缓慢,甚至于止步不前。此外,在基本的差分进化算法和部分改进的差分进化算法的变体中,变量之间的相关性没有被考虑到。种群在进化过程中,变量往往都是独立操作的,造成了一些有关联的变量没有同时处理从而丢失掉一些重要信息的问题。改进算法可以通过解决上述问题来更进一步地提高差分进化算法的性能。因此,差分进化算法还有大量改进和提升的空间。本文分别从差分进化算法的选择操作和交叉操作这两个方面来对算法进行改进。我们分别对于上述提及的两个问题,对应地提出了两种基于差分进化算法的通用框架,即TBT-DE框架和DE-GExp框架。主要工作如下:1.差分进化算法中的种群在进化过程中往往会陷入停滞或早熟收敛状态,以至于无法收敛到全局最优状态。为了解决这个问题,本文提出一种追踪机制(TM),在种群陷入停滞状态时促进种群收敛;和一种回溯机制(BTM),在种群陷入早熟收敛状态时重新提高种群多样性。更具体地说,当种群陷入停滞时,TM被触发,使得陷入停滞状态的个体会向种群中优秀的个体靠近,从而促进种群收敛。当种群陷入早熟收敛状态时,BTM被激活,使得陷入早熟收敛的个体回溯到之前的某一个状态,以恢复种群的多样性。TM和BTM组合成为一种通用框架TBT-DE,嵌入到6个经典的差分进化算法和9个最先进的差分进化算法的变体中。30个CEC2014测试函数的实验结果表明,TM和BTM能够有效实现分别克服停滞和早熟收敛问题,从而加强算法的性能。该方法的有效性也通过大量实验证实了。此外,实验结果也发现TM与BTM组合在一起作为一种通用框架所展现出来的效果比他们分别作为一种通用框架所展现出来的效果更好。2.在差分进化算法解决优化问题时,大部分优化问题中,特定变量之间存在一定的相关性。本文利用变量之间的相关性,从两个方面入手:其一,针对不可分离函数,以大概率将相关的变量捆绑在一起进行同步变化(DE-GExp);其二,针对可分离函数,利用单变量扰动的方法每次只让单一的变量进行继承变异向量基因的操作。具体做法是:在种群开始进化前,先消耗一部分的函数评价次数用于判断变量两两之间是否存在相关关系,并根据这种相关关系对变量将其进行分组。然后在进化过程中每一次迭代的交叉操作中,针对不完全可分离函数令相关变量有更大的概率同时继承目标向量或者变异向量中的变量,针对完全可分离函数令单个变量继承变异向量中的变量而其他变量继承目标向量中的变量,从而提升算法的性能。DE-GExp作为一种通用框架,可以很好的嵌入基本的差分进化算法算法和大部分差分进化算法的变体中,更进一步地提高算法的性能。为了验证框架的有效性,本文将DE-GExp框架嵌入6个基本的差分进化算法和2个先进的差分进化算法的变体中,通过差分进化算法和加入DE-GExp框架的差分进化算法的变体进行对比,在30个CEC2014测试函数上进行性能的比较。实验结果显示,DEGExp框架可以有效地提升差分进化算法的性能。