首页> 外文会议>International symposium on search based software engineering >Search-Based Parallel Refactoring Using Population-Based Direct Approaches
【24h】

Search-Based Parallel Refactoring Using Population-Based Direct Approaches

机译:基于搜索的并行重构使用基于人口的直接方法

获取原文

摘要

Automated software refactoring is known to be one of the "hard" combinatorial optimization problems of the search-based software engineering field. The difficulty is mainly due to candidate solution representation, objective function description and necessity of functional behavior preservation of software. The problem is formulated as a combinatorial optimization problem whose objective function is characterized by an aggregate of object-oriented metrics or pareto-front solution description. In our recent empirical study, we have reported the results of a comparison among alternative search algorithms applied for the same problem: pure random, steepest descent, multiple first descent, simulated annealing, multiple steepest descent and artificial bee colony searches. The main goal of the study was to investigate potential of alternative multiple and population-based search techniques. The results showed that multiple steepest descent and artificial bee colony algorithms were most suitable two approaches for an efficient solution of the problem. An important observation was either with depth-oriented multiple steepest descent or breadth-oriented population-based artficial bee colony searches, better results could be obtained through higher number of executions supported by a lightweight solution representation. On the other hand different from multiple steepest descent search, population-based, scalable and being suitable for parallel execution characteristics of artificial bee colony search made the population-based choices to be the topic of this empirical study, lln this study, we report the search-based parallel refactoring results of an empirical comparative study among three population-based search techniques namely, artificial bee colony search, local beam search and stochastic beam search and a non-populated technique multiple steepest descent as the baseline. For our purpose, we used parallel features of our prototype automated refactoring tool A-CMA written in Java language. A-CMA accepts bytecode compiled Java codes as its input. It supports 20 different refactoring actions that realize searches on design landscape defined by an adhoc quality model being an aggregation of 24 object-oriented software metrics. We experimented 6 input programs written in Java where 5 of them being open source codes and one student project code. The empirical results showed that for almost all of the considered input programs with different run parameter settings, local beam search is the most suitable population-based search technique for the efficient solution of the search-based parallel refactoring problem in terms of mean and maximum normalized quality gain. However, we observed that the computational time requirement for local beam search becomes rather high when the beam size exceeds 60. On the other hand, even though it is not able to identify high quality designs for less populated search setups, time-efficiency and scalability properties of artificial bee colony search makes it a good choice for population sizes > 200.
机译:已知自动化软件重构是基于搜索的软件工程领域的“硬”组合优化问题之一。难度主要是由于候选解决方案表示,客观函数描述和软件功能行为的必要性。该问题的配制成作为组合优化问题,其客观函数的特征在于面向对象的度量或帕累托 - 前端解决方案描述的聚合。在我们最近的实证研究,我们已经报道中申请了同样的问题,可选的搜索算法比较的结果:纯随机,最速下降,多个第一血统,模拟退火,多陡下降和人工蜂群搜索。该研究的主要目标是调查替代多种和基于人口的搜索技术的潜力。结果表明,多个陡峭的下降和人造蜜蜂群落是最合适的两种方法,用于有效解决问题。重要的观察与深度导向的多个陡峭或广度为主的群体的植物群殖民地搜索,可以通过轻量级解决方案表示支持的更多的执行来获得更好的结果。另一方面,与多个陡峭的血缘搜索不同,人口为基础,可扩展和适合人工蜂殖民地搜索的并行执行特征使人口的选择成为本研究的本研究的主题,我们报告了这项研究,我们报告了基于搜索的并行重构结果是基于三个人口的搜索技术的经验比较研究,即人造群落殖民地搜索,本地波束搜索和随机梁搜索以及非填充技术的多重最陡血液作为基线。为我们的目的,我们使用了以Java语言编写的Prototype自动重构工具A-CMA的并行功能。 A-CMA接受字节码被编译的Java代码作为其输入。它支持20种不同的重构操作,以实现由Adhoc质量模型定义的设计景观的搜索是24面向对象的软件度量的聚合。我们尝试了用Java编写的6个输入程序,其中5个是开源代码和一个学生项目代码。实证结果表明,对于几乎所有具有不同运行参数设置的输入程序,本地波束搜索是最合适的基于人口的搜索技术,以便在均值和最大归一化方面的搜索的并行重构问题的有效解决方案质量收益。然而,我们观察到,当光束尺寸超过60时,对本地波束搜索的计算时间要求变得相当高。另一方面,即使它无法识别用于更少填充的搜索设置,时间效率和可扩展性的高质量设计人造蜜蜂殖民地搜索的性质使其成为人口尺寸> 200的好选择。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号