TY  - JOUR
A1  - Blot, A
A1  - Petke, J
KW  - Software
KW  - 
Search problems
KW  - 
Genetic programming
KW  - 
Statistics
KW  - 
Sociology
KW  - 
Computer bugs
KW  - 
Navigation
KW  -  Genetic Improvement
KW  - 
Search-Based Software Engineering
KW  - 
Stochastic Local Search
KW  - 
Genetic Programming.
JF  - IEEE Transactions on Evolutionary Computation
UR  - http://dx.doi.org/10.1109/TEVC.2021.3070271
N2  - Genetic improvement uses automated search to improve existing software. It has been successfully used to optimise various program properties, such as runtime or energy consumption, as well as for the purpose of bug fixing. Genetic improvement typically navigates a space of thousands of patches in search for the program mutation that best improves the desired software property. While genetic programming has been dominantly used as the search strategy, more recently other search strategies, such as local search, have been tried. It is, however, still unclear which strategy is the most effective and efficient. In this paper, we conduct an in-depth empirical comparison of a total of 18 search processes using a set of 8 improvement scenarios. Additionally, we also provide new genetic improvement benchmarks and we report on new software patches found. Our results show that, overall, local search approaches achieve better effectiveness and efficiency than genetic programming approaches. Moreover, improvements were found in all scenarios (between 15% and 68%). A replication package can be found online: https://github.com/bloa/tevc _2020 artefact.
ID  - discovery10126812
N1  - This version is the author accepted manuscript. For information on re-use, please refer to the publisher?s terms and conditions.
Y1  - 2021/03/31/
AV  - public
TI  - Empirical Comparison of Search Heuristics for Genetic Improvement of Software
ER  -