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 -