FLASH:一个用于SBSE任务的快速优化器
FLASH: A Faster Optimizer for SBSE Tasks
摘要:
基于搜索的软件工程中的大多数问题都涉及到平衡相互冲突的目标。以前的方法需要进行大量的评估,这使得它们执行起来非常缓慢,并且很难理解。为了解决这些问题,本文介绍了FLASH,一个基于决策树的优化器,增量增长一个决策树每个目标。然后,这些树用于选择下一个最佳样本。本文将FLASH与基于搜索的SE和机器学习的最新算法进行了比较。该比较使用了多个SBSE案例研究,用于敏捷开发的发布计划、配置控制、过程建模和冲刺计划。FLASH被认为是最快的优化器(有时需要不到1%的进化算法使用的评估)。此外,以模型大小来衡量,FLASH的推理更加简洁和易于理解。此外,在寻找有效的优化方面,FLASH的建议与其他方法相比具有很强的竞争力。最后,FLASH扩展到更复杂的模型,因为它总是终止(而最先进的算法没有)。
英文摘要:
Most problems in search-based software engineering involve balancing conflicting objectives. Prior approaches to this task have required a large number of evaluations- making them very slow to execute and very hard to comprehend. To solve these problems, this paper introduces FLASH, a decision tree based optimizer that incrementally grows one decision tree per objective. These trees are then used to select the next best sample. This paper compares FLASH to state-of-the-art algorithms from search-based SE and machine learning. This comparison uses multiple SBSE case studies for release planning, configuration control, process modeling, and sprint planning for agile development. FLASH was found to be the fastest optimizer (sometimes requiring less than 1% of the evaluations used by evolutionary algorithms). Also, measured in terms of model size, FLASH's reasoning was far more succinct and comprehensible. Further, measured in terms of finding effective optimization, FLASH's recommendations were highly competitive with other approaches. Finally, FLASH scaled to more complex models since it always terminated (while state-of-the-art algorithm did not).
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。