EPSRC logo

Details of Grant 

EPSRC Reference: EP/M025853/1
Title: GGGP: Grow and Graft Genetic Programming
Principal Investigator: Clark, Dr DJ
Other Investigators:
Researcher Co-Investigators:
Dr B Langdon
Project Partners:
Microsoft Visa Europe Limited
Department: Computer Science
Organisation: UCL
Scheme: Standard Research
Starts: 28 October 2015 Ends: 27 January 2020 Value (£): 581,560
EPSRC Research Topic Classifications:
Software Engineering
EPSRC Industrial Sector Classifications:
Information Technologies
Related Grants:
Panel History:
Panel DatePanel NameOutcome
14 Apr 2015 EPSRC ICT Prioritisation Panel - Apr 2015 Announced
Summary on Grant Application Form
Programming is hard. Adding new functionality to an existing, large, and perhaps poorly-understood system is a challenge, even for the most competent human programmer. Despite much progress in software development environments, programming still includes many human activities that are dull, unproductive and tedious. The GGGP project is motivated by the frustration often expressed as questions such as "Why do software engineers spend so long repeatedly performing the same tedious low level software development tasks?" and "How many times do programmers work out how to express the idea of null pointer checking in a particular context or adapt existing code for searching an iterated data structure?"

We want to find a radically new approach to software development, supported by automated search that, we believe, will yield a dramatic reduction in development time. We propose a new approach to software development: Grow and Graft Genetic Programming (GGGP), in which a new feature is grown (using genetic programming) and subsequently grafted into an existing system. This grow and graft development approach aims to reduce the amount of tedious effort required by human programmer in order to develop and add new functionality into an existing system.

Our initial proof of concept work found that surprisingly little human guidance and domain knowledge is required from the programmer to guide Grow and Graft Genetic Programming. We therefore believe that it can radically change programming,

making it faster and less error prone, with a consequent transformative effect on the software industry. We also believe it may make it more enjoyable to a wider range of people, with potentially transformative impact on the wider public involvement in

(and understanding of) software development.

Our approach can be best understood in the context of the recent trend in Search Based Software Engineering (SBSE) called "genetic improvement", which uses existing code as "genetic material" that helps to automatically improve existing software systems, which has achieved several recent notable breakthroughs, such as speed ups of 7 to 70 times on real-world systems, human competitive results in optimising constraint solvers, and automated bug fixing and repair work on existing systems.
Key Findings
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Potential use in non-academic contexts
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Description This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Date Materialised
Sectors submitted by the Researcher
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk
Project URL:  
Further Information:  
Organisation Website: