首页> 外文会议>IEEE Annual Computer Software and Applications Conference >Search-Based Efficient Automated Program Repair Using Mutation and Fault Localization
【24h】

Search-Based Efficient Automated Program Repair Using Mutation and Fault Localization

机译:基于搜索的高效自动化程序维修,使用突变和故障定位

获取原文

摘要

Program faults are unavoidable phenomena in the software development. The application of mutation and fault localization techniques is effective in automated program repair, but suffers the inevitable high execution cost as the number of mutants increases exponentially for large industrial programs. The combination with fault localization techniques can reduce the cost by mutating the statements with high suspicious values first. However, the accuracy of fault localization techniques has not been good enough for real applications, and some faults may occur on a statement which is related to the statement with a high suspicious value rather than itself. Therefore, the greedy strategy used currently may not be effective, resulting in inefficient repairs. Finding a mutant as a correct patch should be regarded as a continuous process of searching the global solutions. In this paper, we proposed the search-based automated program repair using mutation and fault localization, which not only takes advantage of fault localization but also overcomes the disadvantage of the greedy strategy used in the mutation generation. The initial population of the search algorithm is constructed by the mutants generated from the statements with high suspicious values using the fault localization, which is a set of rough solutions. A hybrid-crossover operator is then designed where the fixed position crossover operator is used to converge to the global optimal solutions and the random position crossover operator is used to explore the entire search space faster, respectively. The experimental results on the Siemens suite indicate that the proposed approach can improve the efficiency with the same effectiveness compared to the exhaustive approach, and show that the non-random initial population method and the hybrid-crossover strategy can improve the efficiency of the search process.
机译:软件开发中的程序故障是不可避免的现象。突变和故障定位技术的应用在自动化程序维修中是有效的,但随着大型工业计划的突变数量增加,遭受不可避免的高执行成本。故障本地化技术的组合可以首先通过将具有高可疑值的语句突变的语句来降低成本。但是,故障本地化技术的准确性对于真实应用程序并未足够好,并且某些故障可能会发生在与具有高可疑值而不是自身的语句的语句中的语句中。因此,目前使用的贪婪策略可能没有有效,导致维修低效。应将突变体作为正确的补丁视为搜索全局解决方案的连续过程。在本文中,我们提出了使用突变和故障定位的基于搜索的自动化程序修复,这不仅利用了故障​​定位,而且还克服了突变生成中使用的贪婪策略的缺点。搜索算法的初始群体由使用故障定位的具有高可疑值的语句生成的突变体构成,这是一组粗略解决方案。然后设计混合交叉运算符,其中固定位置交叉操作者用于收敛到全局最优解,随机位置交叉运算符分别用于分别更快地探索整个搜索空间。西门子套件上的实验结果表明,与详尽的方法相比,该方法可以提高与效率相同的效率,并表明非随机初始群体方法和混合交叉策略可以提高搜索过程的效率。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号