论文部分内容阅读
许多现实世界的问题可以转化为优化问题。因此,优化是工程应用和科学研究的一个重要领域。然而,一些困难的优化问题通常具有复杂性,高度非线性,不可微分性等复杂特性。传统的数学和分析方法对于解决这些困难的优化问题是低效率的和无效的。因此,越来越需要更有效的算法。近几十年来,已经提出了一些新的进化算法(EA)。群体智能算法是进化算法的一个分支。粒子群优化(PSO)算法是目前最流行和最有效的群体智能算法之一,它是一种基于种群的元启发式算法。PSO的主要思想是模拟鸟类群体的集体协作行为。PSO使用一种模仿群鸟群体行为的简单机制,引导这些粒子搜索全局最优解。与其他进化算法类似,PSO是基于种群的迭代算法。由于其实现简单,PSO已被成功应用于解决许多现实世界的问题。粒子群优化算法有两个主要缺点:相对弱开采能力和在复杂的多模问题上早熟收敛。因此,粒子群算法的改进是非常具有挑战性和有意义的。烟花算法(FWA)是一种相对较新的群体智能算法,是通过模拟夜空中烟花的爆炸过程而开发出来的。FWA的主要思想是利用烟花的爆炸来搜索优化问题的可行空间。烟花以及新产生的火花代表了搜索领域的潜在解。为了保证全局和局部搜索的多样性和均衡性,烟花爆竹的爆炸幅度和爆炸火花的数量是不同的。FWA作为一种全新的搜索方式,受到了众多群体智能领域研究人员的广泛关注。到目前为止,FWA已经成功应用于解决一些实际的工程问题。因此,FWA是一种有前景的算法,值得进一步研究。然而,传统的FWA有它自己的缺点。提高FWA的性能是很有必要的。本文首先简要地介绍了几种进化算法。接着,针对粒子群算法和烟花算法的缺陷进行了改进研究。本文主要的研究成果与创新点概括如下:(1)提出一个具有交叉操作的粒子群算法。在本算法中,整合了两种不同的交叉操作。算法通过对每个粒子的历史最优粒子执行交叉操作,生成了一个有效的和具有多样性的引导向量。进而,这些高质量的向量来引导粒子更好的进行搜索。本算法采用了具有学习模型的粒子速度公式,该公式具有良好的探索能力且能有效的避免算法陷入局部最优。本算法是具有正反馈机制的双层粒子群算法。此外,还对算法的一些参数进行了调查,为算法找到了一个比较合理的参数配置。实验结果表明,在一些测试函数上,该算法在求解精度和收敛速度上优于一些流行的粒子群算法版本。(2)提出一个具有双差分变异的粒子群算法(PSOTD)。PSOTD采用了双层双群结构,顶层由所有个体历史最优粒子构成,底层由所有粒子构成,其中,把顶层粒子分成了两个子群。PSOTD采用两种不同的差异变异来进化顶层粒子,一个子群有好的探索(全局搜索)能力,另一个子群有好的开采(局部搜索)能力。显然,由于顶层粒子引导底层粒子,底层粒子在探索和开采能力上具有良好的平衡。为了提高PSOTD的开采能力,提出了两个子群的粒子数量动态调整方案。该方案简单有效。数值实验结果表明,这种方案能改进算法的性能。大量的实验结果表明,该算法在求解质量和效率方面优于大部分对比的粒子群算法版本。(3)提出一个动态多群差分学习粒子群算法(DMSDL-PSO)。我们提出了一个新颖的方法整合差分变异到DMSDL-PSO的每个子群中。由于利用了差分变异具有良好的探索能力,并采用拟牛顿法作为局部搜索技术提高开采能力,DMSDL-PSO具有较好的探索和开采能力。根据DMSDL-PSO的特点,讨论了三个不同的差分变异。由于粒子群算法的速度更新公式有一些缺点,DMSDL-PSO采用了修改的速度更新方程。在DMSDL-PSO中,粒子被分成几个小的动态子群。子群的动态变化可以促进整个粒子种群的信息交换。实验结果显示,DMSDL-PSO在一些函数上具有较好的性能。(4)提出了一个具有合作策略的粒子群算法(PSOCS)。该算法的一些想法是受角色划分和生物种群中的合作现象启发。在PSOCS中,所有粒子被分成两个子群。这两个子群采用了不同的搜索策略。一个子群的擅长探索,另外一个子群体具有较好的开采能力。为了确保这两个群体之间的合作搜索,算法采用了信息交换策略。这一策略体现在粒子的运动方程中。(5)提出了一个简化的混合烟花算法(SHFWA)。为了提高烟花算法的开采能力,对核心烟花采用了修改的搜索公式。为了增强探索能力,在每个烟花子群中设计了另外一个烟花(和声烟花)。在传统的烟花算法中,每个烟花产生火花的数量和每个烟花爆炸振幅的计算是比较复杂的。在SHFWA中,采用了一个简化的方法计算这两个变量。通过引入这些方法,SHFWA是容易实现的并且具有较好的搜索能力。实验结果表明,与几个烟花算法行比较,SHFWA是有效的和有竞争力的算法。