Artigo Acesso aberto Revisado por pares

Specialising Software for Different Downstream Applications Using Genetic Improvement and Code Transplantation

2017; IEEE Computer Society; Volume: 44; Issue: 6 Linguagem: Inglês

10.1109/tse.2017.2702606

ISSN

2326-3881

Autores

Justyna Petke, Mark Harman, William B. Langdon, Westley Weimer,

Tópico(s)

Advanced Malware Detection Techniques

Resumo

Genetic improvement uses automated search to find improved versions of existing software. Genetic improvement has previously been concerned with improving a system with respect to all possible usage scenarios. In this paper, we show how genetic improvement can also be used to achieve specialisation to a specific set of usage scenarios. We use genetic improvement to evolve faster versions of a C++ program, a Boolean satisfiability solver called MiniSAT, specialising it for three different applications, each with their own characteristics. Our specialised solvers achieve between 4 and 36 percent execution time improvement, which is commensurate with efficiency gains achievable using human expert optimisation for the general solver. We also use genetic improvement to evolve faster versions of an image processing tool called ImageMagick, utilising code from GraphicsMagick, another image processing tool which was forked from it. We specialise the format conversion functionality to greyscale images and colour images only. Our specialised versions achieve up to 3 percent execution time improvement.

Referência(s)