计算机科学与探索 ›› 2017, Vol. 11 ›› Issue (11): 1733-1746.DOI: 10.3778/j.issn.1673-9418.1609032
杜 欣1,吴晓斌1+,倪友聪1,2,叶 鹏3,李 松1
DU Xin1, WU Xiaobin1+, NI Youcong1,2, YE Peng3, LI Song1
摘要: 为了在庞大空间中搜索软件体系结构(software architecture,SA)层最优性能改进方案,当前已涌现出一些以NSGA-II为代表的性能优化算法。然而这些算法大多未充分考虑性能改进空间的离散特性和性能评估的高计算代价特点,导致了解质量不高和优化时间过长的问题。针对这一问题,提出一种代理模型帮助的SA层性能差分演化优化算法SMDE4PO(surrogate model assisted differential evolution algorithm for performance optimization)。该算法采用多种交叉和变异策略以增大搜索空间和提高收敛速度,并运用随机森林作为代理模型以大幅减少实际性能评估的次数。在4个不同规模案例上的实验结果表明:(1)在贡献度、世代距离和超体积3个指标上SMDE4PO显著优于NSGA-II算法;(2)通过使用随机森林代理模型,在最好情况下SMDE4PO较NSGA-II算法的运行时间可降低48%。