Created by W.Langdon from gp-bibliography.bib Revision:1.8120
The first contribution of this thesis is an investigation into applying GI to Android with minimal changes from the standard technique, however, we achieved limited success. Next, we mined git repositories to try to find the changes that real developers make to improve the non-functional properties of applications. With what we learned in this study, we modified and successfully applied GI to improve the responsiveness of Android applications. We then moved on to multi-objective improvement, improving execution time and memory usage, but failing to improve network usage. We also provide a benchmark of tested applications that can be used to evaluate future automated improvement tools. We developed a profiler to find the most network-intensive methods to target and a novel mutation operator. Our final contribution is an adapted version of GI framework for network usage optimisation.
We found that Genetic Improvement is an effective tool for improving multiple non-functional properties of Android apps. We found that by using simulation-based testing, rather than testing variants on devices, we could make GI faster and more practical. We found that there were many opportunities for GI to more closely mimic the types of changes made by developers and that caching in particular is an effective change type. We recommend future work further explores this direction.",
Genetic Programming entries for James Callan