eprintid: 10126812 rev_number: 14 eprint_status: archive userid: 608 dir: disk0/10/12/68/12 datestamp: 2021-04-28 08:19:14 lastmod: 2021-10-11 22:45:52 status_changed: 2021-04-28 08:19:14 type: article metadata_visibility: show creators_name: Blot, A creators_name: Petke, J title: Empirical Comparison of Search Heuristics for Genetic Improvement of Software ispublished: pub divisions: UCL divisions: B04 divisions: C05 divisions: F48 keywords: Software, Search problems, Genetic programming, Statistics, Sociology, Computer bugs, Navigation, Genetic Improvement, Search-Based Software Engineering, Stochastic Local Search, Genetic Programming. note: This version is the author accepted manuscript. For information on re-use, please refer to the publisher’s terms and conditions. abstract: 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. date: 2021-03-31 date_type: published official_url: http://dx.doi.org/10.1109/TEVC.2021.3070271 oa_status: green full_text_type: other language: eng primo: open primo_central: open_green verified: verified_manual elements_id: 1860208 doi: 10.1109/TEVC.2021.3070271 lyricists_name: Blot, Aymeric lyricists_name: Petke, Justyna lyricists_id: ABLOT72 lyricists_id: JPETK66 actors_name: Petke, Justyna actors_id: JPETK66 actors_role: owner full_text_status: public publication: IEEE Transactions on Evolutionary Computation citation: Blot, A; Petke, J; (2021) Empirical Comparison of Search Heuristics for Genetic Improvement of Software. IEEE Transactions on Evolutionary Computation 10.1109/TEVC.2021.3070271 <https://doi.org/10.1109/TEVC.2021.3070271>. Green open access document_url: https://discovery.ucl.ac.uk/id/eprint/10126812/1/main.pdf