元启发式算法的经验相似性度量
1. 相关工作
元启发式算法的持续创新一直饱受批评。许多新算法与旧算法有诸多相似之处,且常以隐喻描述,让人难以理解其工作原理。
为解决这些问题,研究人员开始超越隐喻层面分析元启发式算法。例如,Lones识别了知名算法的底层策略,将交叉归类为中间搜索(探索两个或多个候选解之间的区域),变异归类为邻域搜索(探索候选解的邻近区域)。后续研究探讨了一些新元启发式算法与粒子群优化(PSO)的共同特征,指出多数新算法与PSO有相似之处(主要是方向搜索),但也存在差异。de Armas等人扩展了搜索策略分析,提出池模板来衡量两种元启发式算法的相似性,并将方向搜索细分为多种获取方向的方式。
这些工作为元启发式算法的描述、分解和理论比较奠定了基础。不过,仅从理论层面比较是不够的,因为实现相似组件的算法在不同问题上可能有不同的性能表现,这可能受组件顺序、数值参数和组件间交互等因素影响。
2. 预备知识
2.1 元启发式算法
测试了七种元启发式算法,包括三种知名算法(粒子群优化、差分进化和基于种群的模拟退火)和四种新算法(人工部落算法、萤火虫算法、重力搜索算法和蟑螂侵扰算法)。这些新算法与PSO有一些共同组件。所有算法都遵循以下通用结构:
Algorithm 1. Metaheuristics General Template
1: X ←initialize a set of random candidate solutions
2: evaluate all candidate solutions in X
3: