论文部分内容阅读
摘要:在科学研究和工程应用领域,往往会遇到各种各样的问题,而诸多问题均可归结为优化问题。进化算法是一类广泛应用于求解优化问题的随机搜索方法,其在复杂问题求解和实际问题应用方面均具有独特的优越性。但是,根据“没有免费的午餐”定理可知,不存在一种能够有效地求解所有类型优化问题的算法。鉴于此,国内外学者开始尝试将多种进化算法进行集成,以获取普适性更高的多方法搜索算法。因此对该问题的研究具有重要的理论意义和实际价值。不同进化算法在搜索机制上存在显著差异,因此不同算法之间存在天然的异质性,从而导致不同算法拥有不同的性能。本文通过对CoDE和CMA-ES两种算法异质性的分析,设计了一种新的集成进化算法:基于CoDE和CMA-ES的集成进化算法,简称为EBCC。EBCC算法是一种多方法搜索算法,它通过将CoDE和CMA-ES两种较为优秀的算法集成而获得。CoDE和CMA-ES称为EBCC的子算法,在EBCC中,这两种子算法通过种群的信息交互相互学习和促进,EBCC针对这两种子算法的不同特点,设计了不同的交互方式。为了更合理地利用子算法种群进化过程中的信息,EBCC对历史种群优秀个体进行了存档,并通过多样性保持策略来防止存档种群中的个体过于单一,这也有效地避免了EBCC的早熟收敛。同时EBCC可以动态识别子算法在种群进化的不同阶段搜索性能的优劣,然后根据其优劣性为子算法分配不同的适应度函数评价次数,从而使得EBCC可以更加有效的利用有限的搜索资源。本文采用CEC-2005中提出的25个标准测试函数对当前流行算法与EBCC的性能进行测试,这些算法包括JADE、CLPSO和GL-25。通过对实验结果的比较和分析,可以看出EBCC算法是一种更具有普适性的优秀算法。同时本文采用该测试函数集对EBCC与其子算法CoDE和CMA-ES的性能进行测试,试验结果表明EBCC不仅明显优于其子算法CoDE和CMA-ES,而且充分发挥了两种子算法的优势。