RLocator: Reinforcement Learning for Bug Localization

by   Partha Chakraborty, et al.

Software developers spend a significant portion of time fixing bugs in their projects. To streamline this process, bug localization approaches have been proposed to identify the source code files that are likely responsible for a particular bug. Prior work proposed several similarity-based machine-learning techniques for bug localization. Despite significant advances in these techniques, they do not directly optimize the evaluation measures. We argue that directly optimizing evaluation measures can positively contribute to the performance of bug localization approaches. Therefore, In this paper, we utilize Reinforcement Learning (RL) techniques to directly optimize the ranking metrics. We propose RLocator, a Reinforcement Learning-based bug localization approach. We formulate RLocator using a Markov Decision Process (MDP) to optimize the evaluation measures directly. We present the technique and experimentally evaluate it based on a benchmark dataset of 8,316 bug reports from six highly popular Apache projects. The results of our evaluation reveal that RLocator achieves a Mean Reciprocal Rank (MRR) of 0.62, a Mean Average Precision (MAP) of 0.59, and a Top 1 score of 0.46. We compare RLocator with two state-of-the-art bug localization tools, FLIM and BugLocator. Our evaluation reveals that RLocator outperforms both approaches by a substantial margin, with improvements of 38.3 K metric. These findings highlight that directly optimizing evaluation measures considerably contributes to performance improvement of the bug localization problem.


page 1

page 2

page 3

page 4


BuGL – A Cross-Language Dataset for Bug Localization

Bug Localization is the process of locating potential error-prone files ...

D&C: A Divide-and-Conquer Approach to IR-based Bug Localization

Many automated tasks in software maintenance rely on information retriev...

DRAST – A Deep Learning and AST Based Approach for Bug Localization

Context: Given a bug report and source code of the project, bug localiza...

Broccoli: Bug localization with the help of text search engines

Bug localization is a tedious activity in the bug fixing process in whic...

Duplicate Bug Report Detection: How Far Are We?

Many Duplicate Bug Report Detection (DBRD) techniques have been proposed...

Machine Learning for Microprocessor Performance Bug Localization

The validation process for microprocessors is a very complex task that c...

IncBL: Incremental Bug Localization

Numerous efforts have been invested in improving the effectiveness of bu...

Please sign up or login with your details

Forgot password? Click here to reset