Back to Search
Start Over
Improved representation and genetic operators for linear genetic programming for automated program repair.
- Source :
- Empirical Software Engineering; Oct2018, Vol. 23 Issue 5, p2980-3006, 27p
- Publication Year :
- 2018
-
Abstract
- Genetic improvement for program repair can fix bugs or otherwise improve software via patch evolution. Consider GenProg, a prototypical technique of this type. GenProg’s crossover and mutation operators manipulate individuals represented as patches. A patch is composed of high-granularity edits that indivisibly comprise an edit operation, a faulty location, and a fix statement used in replacement or insertions. We observe that recombination and mutation of such high-level units limits the technique’s ability to effectively traverse and recombine the repair search spaces. We propose a reformulation of program repair representation, crossover, and mutation operators such that they explicitly traverse the three subspaces that underlie the search problem: the Operator, Fault and Fix Spaces. We provide experimental evidence validating our insight, showing that the operators provide considerable improvement over the baseline repair algorithm in terms of search success rate and efficiency. We also conduct a genotypic distance analysis over the various types of search, providing insight as to the influence of the operators on the program repair search problem. [ABSTRACT FROM AUTHOR]
Details
- Language :
- English
- ISSN :
- 13823256
- Volume :
- 23
- Issue :
- 5
- Database :
- Complementary Index
- Journal :
- Empirical Software Engineering
- Publication Type :
- Academic Journal
- Accession number :
- 130897404
- Full Text :
- https://doi.org/10.1007/s10664-017-9562-9