面向申威众核处理器的并行SaNSDE算法 - 康上; 钱雪忠; 甘霖 (计算机科学与探索, 2021)
TP338.6; 演化算法作为解决大规模优化问题的重要方法,被广泛应用于机器学习、过程控制、工程优化、管理科学和社会科学等领域.然而在求解高维度、高计算密度问题时,程序性能很难得到保证.在高性能计算机上实现并行化是问题的一个热门解决方案.针对申威众核处理器的硬件特征,提出了采用二级并行策略的自适应邻域搜索的差分进化算法(SaNSDE).第一级为进程并行,实现了合作协同进化模型和池模型,将大规模问题划分为多个低维子问题并分布在不同进程上;第二级为线程并行,使用从核加速了适应度的计算过程.实验结果表明,采用合作协同进化模型和池模型的算法与传统的并行算法相比,经过多核扩展之后收敛效果提升更加明显.相较于串行版本算法,二级并行的SaNSDE算法在四个测试函数上分别获得了134.29、186.05、239.01和189.80的最大加速比.