[论文解读] Search-Based Software Engineering for Self-Adaptive Systems: Survey, Disappointments, Suggestions and Opportunities
本文首次全面综述了自适应系统(SASs)的搜索优化软件工程(SBSE),分析了2009–2019年间74项主要研究。研究识别出五大关键失望之处——算法选择缺乏依据、多目标公式化受限、评估方法存疑、算法专业化不足以及泛化能力弱,同时提出了八个尚未充分探索的研究机会,以推动该领域发展。
Search-Based Software Engineering (SBSE) is a promising paradigm that exploits the computational search to optimize different processes when engineering complex software systems. Self-adaptive system (SAS) is one category of such complex systems that permits to optimize different functional and non-functional objectives/criteria under changing environments (e.g., requirements and workload), which involves problems that are subject to search. In this regard, over years, there has been a considerable amount of work that investigates SBSE for SASs. In this paper, we provide the first systematic and comprehensive survey exclusively on SBSE for SASs, covering papers in 27 venues from 7 repositories, which eventually leads to several key statistics from the most notable 74 primary studies in this particular field of research. Our results, surprisingly, have revealed five disappointments that are of utmost importance and can result in serve consequences but have been overwhelmingly ignored in existing studies. We provide theoretical and/or experimental evidence to justify our arguments against the disappointments, present suggestions, and highlight the promising research opportunities towards their mitigation. We also elaborate on three other emergent, but currently under-explored opportunities for future work on SBSE for SASs. By mitigating the disappointments revealed in this work, together with the highlighted opportunities, we hope to be able to excite a much more significant growth in this particular research direction.
研究动机与目标
- 为解决SBSE在自适应系统(SASs)领域缺乏系统性综述的问题,该问题已阻碍该领域的发展。
- 识别并分析当前SBSE研究中在SASs领域反复出现的方法论缺陷——称为“失望之处”。
- 提供基于证据的建议,以提升SBSE在SASs研究中的有效性与严谨性。
- 突出那些尚未充分探索的研究机会,这些机会可能显著推进SBSE在SASs领域的进展。
- 通过为从业者和研究人员提供可操作的见解,弥合SBSE与SAS社区之间的差距。
提出的方法
- 在27个会议/期刊和7个文献库中开展系统性文献调查,识别出409篇论文供审查,并从中选取74项主要研究进行深入分析。
- 应用多层级论证框架(L1–L4)评估搜索算法选择和多目标公式化的合理性。
- 根据搜索类型(单目标与多目标)、算法使用情况、评估方法以及目标SAS特性对研究进行分类。
- 评估在Pareto优化中使用质量指标(如超体积、世代距离)的情况,并评估其论证的充分性。
- 分析SBSE中表示法、适应度函数设计及仿真器使用情况,以评估对问题特定特性的定制化程度。
- 通过主题分析与统计分析,识别随时间、领域及算法选择趋势中的研究空白。
实验结果
研究问题
- RQ1在SBSE用于SASs的研究中,最常使用的搜索算法是什么?其在SAS问题背景下的选择是否合理?
- RQ2在SBSE用于SASs的研究中,多目标优化问题如何被公式化?其公式化与评估存在哪些局限性?
- RQ3在SBSE用于SASs的研究中,Pareto搜索采用何种评估方法?其论证的严谨性如何?
- RQ4搜索算法在多大程度上针对SAS特有特性进行了专业化设计?其内部结构修改程度如何?
- RQ5研究结果在不同SAS之间的泛化能力如何?当前研究中使用的系统多样性如何?
主要发现
- NSGA-II是Pareto搜索的主导算法,而GA、LS和IP求解器在单目标或聚合目标问题中最为常见,但通常缺乏充分依据。
- 超过50%使用Pareto搜索的研究未采用任何通用质量指标;在使用指标的研究中,论证大多仅达到L2或L3层级,表明理论基础薄弱。
- 仅有15%的研究为算法选择提供了L4层级的论证,多数研究依赖L1或L2层级的论证,如‘常用’或‘库中可用’。
- 问题本质与系统工程/SAS专业知识之间存在日益扩大的脱节,多数研究聚焦于表示法与适应度函数设计,而非系统特定的自适应逻辑。
- 仿真器是最常见的目标系统,且大多数研究每项研究仅评估一个SAS,限制了结果的泛化潜力。
- 该领域对延迟和成本作为主要目标表现出强烈偏好,而对其他非功能性指标(如能效或安全性)的探索有限。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。