RLocator:面向缺陷定位的强化学习
软件工程
2024-10-01 v3 人工智能
摘要
软件开发人员将大量时间用于修复项目中的缺陷。为简化该过程,已有缺陷定位方法被提出以识别可能对特定缺陷负责的源代码文件。先前工作提出了若干基于相似度的机器学习缺陷定位技术。尽管这些技术取得显著进展,它们并未直接优化评估指标。我们认为直接优化评估指标可对缺陷定位方法的性能产生积极贡献。因此,本文中我们利用强化学习(RL)技术直接优化排序指标。我们提出 RLocator,一种基于强化学习的缺陷定位方法。我们使用马尔可夫决策过程(MDP)来形式化 RLocator 以直接优化评估指标。我们介绍了该技术并基于来自六个高流行 Apache 项目的 8,316 份缺陷报告的基准数据集进行了实验评估。评估结果揭示 RLocator 取得了 0.62 的平均倒数排名(MRR)、0.59 的平均精度均值(MAP)和 0.46 的 Top 1 分数。我们将 RLocator 与两种最先进的缺陷定位工具 FLIM 和 BugLocator 比较。评估显示 RLocator 以显著优势优于这两种方法,MAP 提升 38.3%、MRR 提升 36.73%、Top K 指标提升 23.68%。这些发现凸显直接优化评估指标对缺陷定位问题性能提升的贡献可观。
引用
@article{arxiv.2305.05586,
title = {RLocator: Reinforcement Learning for Bug Localization},
author = {Partha Chakraborty and Mahmoud Alfadel and Meiyappan Nagappan},
journal= {arXiv preprint arXiv:2305.05586},
year = {2024}
}