Genetic improvement uses computational search to improve existing software with respect to a user-defined objective function, while retaining some existing behaviour, usually captured by testing. Work on genetic improvement has already resulted in several awards. This includes work on automated program repair. GI has been used, for instance, to automate the process of software specialisation, optimise program efficiency, and to minimise memory and energy consumption. GI has also been used to transplant functionality from one software to another in an automated way. I will give an overview of the genetic improvement area and present key components of a GI framework.
Cornwallis South West,
University of Kent,