Automated Software Specialisation Using Genetic Improvement

Lead Research Organisation: University College London
Department Name: Computer Science

Abstract

This fellowship will change the face of software development by transferring the challenging and time-consuming task of software specialisation from human to machine. It will develop novel approaches for specialising and improving efficiency of generalist software for particular application domains in an automated way. The developed techniques will be program-agnostic and thus applicable to any type of software. Therefore, they will allow to speed-up computationally intensive calculations that arise, for instance, in the field of bioinformatics or healthcare. This fellowship thus can contribute to driving research development in other fields of research by providing an automated way of adapting and speeding-up existing software used in a plethora of areas, both in research and in the industry.

The project will utilise and develop novel methods in the field of software engineering, called genetic improvement, to achieve the goals of the project. Genetic improvement is a novel field of research that only arose as a standalone area in the last few years. Several factors contributed to the development and success of this field, one of which is the sheer amount of code available online and focus on automated improvement of non-functional properties of software, such as energy or memory consumption.

Dr. Petke is a world-leading expert on genetic improvement, publishing award-winning work on automated software specialisation and transplantation. She won two `Humies' awarded for human-competitive results produced by genetic and evolutionary computation and a best paper award at the International Symposium on Software Testing and Analysis. This work was also widely covered in media, including the Wired magazine and BBC Click. The potential of genetic improvement for automating certain aspects of the software development process has thus been already recognised in the academic community and beyond.

Dr. Petke will collaborate with a UK-based company, called Satalia, which provides the latest optimisation techniques to the industry. She will apply deliverables of this project to automatically adapt and speed-up their generalist optimisation algorithms to particular classes of real-world problems. An example is specialisation of a general routing program to devising an optimal network for broadband connections. Therefore, the deliverables of this project will contribute to the UK economy by providing techniques that will automate the process of software specialisation for real-world optimisation problems.

Planned Impact

The project will have a revolutionary impact on the software development process. It will move the effort of modifying and adapting code from human to machine. By pushing the area of genetic improvement forward fully automated optimisation of large real-world software will be within reach.

The project will have a direct impact on the UK economy through collaboration with the industrial partner, Satalia. The company provides latest software optimisation technology to the industry. The project will lead to faster, automated solutions for Satalia, hence faster solutions to their clients. For example, Satalia optimised vehicle routes for a retailer to let more customers place orders without increasing fleet size. Similarly, generalist state-of-the-art routing algorithms will be automatically adapted for other route scheduling domains using techniques developed during the fellowship.

Through publishing at top software engineering and evolutionary computation venues and organisation of automated software specialisation and continuing the Genetic Improvement workshop series, deliverables of this project will be disseminated to academia. By releasing a tool for automated software specialisation via GitHub, other researchers will be able to optimise their software. More importantly, the techniques developed will be agnostic to the software being optimised. Therefore, researchers from fields outside of computer science will be able to use the tool.

The automated software specialisation tool developed during the fellowship will be open source. Dr. Petke will advertise it on software developer fora to reach out to people outside of academia. Through seminars, advertisement and work with Satalia automated specialisation techniques developed will be released both to academia and industry. It is envisioned that the techniques will be adopted in real-world software automating the software adaptation and optimisation process.

The human vs. computer competition on automated software specialisation will allow students to learn and get involved in the genetic improvement field. Therefore, they will gain access to the latest technology and garner interest to pursue research in this novel field that has huge potential in changing the way people program nowadays by transferring the optimisation effort from human to machine.
 
Description Genetic improvement uses automated search to improve various software properties, such as runtime, memory or energy consumption, It can also be used to fix bugs, or transplant functionality, e.g., adding a feature not previously present in given code. Developed tools during duration of this fellowship can allow software developers to automatically find improvements to their code. Developed benchmarks can form a base for other researchers to improve state-of-the-art in non-functional software improvements.

We developed the Magpie tool (Machine Automated General Performance Improvement via Evolution of software), which provides a program representation allowing for use of multiple optimisation approaches: evolution of code, i.e., typical genetic improvement approach, as well as software parameter value manipulation. Magpie thus provides a common tool for software optimisation that combines genetic improvement, parameter tuning and algorithm configuration. It supports optimisation of code written in Java, Python, C, and others. We also extended another GI framework, called PyGGI, with the ability to work with any programming language.

In collaboration with international researchers, we developed Gin, a framework for genetic improvement of software - a technique that automatically improves software. Out of the box it can improve runtime of Java software. It can also be used for improvement of other properties such as bug fixing, memory or energy consumption. It contains various optimisations for the Java ecosystem. We extended Gin with multi-objective search, and memory profiler, allowing for simultaneous improvement of runtime and memory use of Java applications. We showed its use on a mature piece of code. We also extended Gin to work on the Android domain, improving responsiveness of Android activity navigation of 7 Android apps.

We used the developed tools to extend and improve the current state-of-the art in genetic improvement.
We have established a rigorous protocol for conducting GI experiments, and provided benchmarks to facilitate future work.
Exploitation Route Genetic improvement is a new paradigm in software engineering. This proposal will lead to development of the field by investigating the potential of GI for automated software improvement for particular objectives and applications. We provide tools to facilitate this objective. Gin, the Genetic improvement tool we developed, has been also used at University of Adelaide for educational purposes. Magpie allows for optimisation of software by manipulating code and its parameters.
Sectors Education,Other

URL https://github.com/bloa/magpie;https://github.com/gintool/gin
 
Description Facebook Testing and Verification RFP: Research Award
Amount $9,834 (USD)
Organisation Facebook 
Sector Private
Country United States
Start 10/2018 
 
Title Benchmarks and replication package for the paper "Empirical Comparison of Search Heuristics for Genetic Improvement of Software" 
Description This package provides a dataset of benchmarks for runtime improvement, as well as a replication package for reproducibility purposes. 
Type Of Material Database/Collection of data 
Year Produced 2021 
Provided To Others? Yes  
Impact Not aware of impact yet. 
URL https://ieeexplore.ieee.org/abstract/document/9392013/media#media
 
Title Benchmarks for Automated Improvement of Software's Non-Functional Properties 
Description Performance is a key quality of modern software. Although recent years have seen a spike in research on automated improvement of software's execution time, energy, memory consumption, etc., there is a noticeable lack of standard benchmarks for such work. It is also unclear how such benchmarks are representative of current software. Furthermore, frequently non-functional properties of software are targeted for improvement one-at-a-time, neglecting potential negative impact on other properties. In order to facilitate more research on automated improvement of non-functional properties of software, we conducted a survey gathering benchmarks used in previous work. 
Type Of Material Database/Collection of data 
Year Produced 2022 
Provided To Others? Yes  
Impact We hope this dataset will facilitate more research in automated improvement of non-functional properties of software. 
URL https://arxiv.org/src/2212.08540v1/anc
 
Title Dataset for "Refining Fitness Functions for Search-Based Automated Program Repair: A Case Study with ARJA and ARJA-e" 
Description This is a replication package for the paper "Refining Fitness Functions for Search-Based Automated Program Repair: A Case Study with ARJA and ARJA-e", accepted at SSBSE 2021 (Challenge Track). The compressed package is ~35MB and the uncompressed files are ~52MB. For information about its contents, read README.md or README.pdf. 
Type Of Material Database/Collection of data 
Year Produced 2021 
Provided To Others? Yes  
Impact This is a replication package for the paper "Refining Fitness Functions for Search-Based Automated Program Repair: A Case Study with ARJA and ARJA-e", accepted at SSBSE 2021 (Challenge Track), which is available to others for replication purposes. 
URL https://rdr.ucl.ac.uk/articles/dataset/Dataset_for_Refining_Fitness_Functions_for_Search-Based_Autom...
 
Title Dataset of Non-Functional Property Improving Commits in Mobile Apps 
Description We present, the first to our knowledge, dataset of execution time, memory consumption, bandwidth usage and frame rate improving commits for the Android domain. We gathered 560 such commits. 
Type Of Material Database/Collection of data 
Year Produced 2022 
Provided To Others? Yes  
Impact This dataset is a result of the work "How do Android developers improve non-functional properties of software? " (EMSE 2022) by Callan et al. (doi: 10.1007/s10664-022-10137-2). This dataset allowed us to devise new operators for genetic improvement for future work. We hope this set will facilitate future work on performance improvement in the Android domain. 
URL https://github.com/SOLAR-group/NonFunctionalAndroidCommits/
 
Title Replication Package for "Enhancing Genetic Improvement of Software with Regression Test Selection" 
Description This is the replication package for the paper "Enhancing Genetic Improvement of Software with Regression Test Selection", accepted at ICSE 2021.The data is 360MB compressed and around 1GB uncompressed.The full package contains: tool used to run the experiments, subject programs, data analysis scripts, and resulting data from our experiments. Moreover, we provide .md files with guides on how to setup and run the experiments.In order to run the experiments, you will need Java 8 installed. In order to analyse the experiments, you will need R installed. More details can be found in "REQUIREMENTS.md".More information can be found in the "README.md" file included in this package. 
Type Of Material Database/Collection of data 
Year Produced 2021 
Provided To Others? Yes  
Impact It allows other researchers to replicate and extend on our work. 
URL https://rdr.ucl.ac.uk/articles/dataset/Replication_Package_for_Enhancing_Genetic_Improvement_of_Soft...
 
Title Gin: A Toolbox for Experimentation with Genetic Improvement 
Description Genetic improvement (GI) is a young field of research on the cusp of transforming software development. GI uses search to improve existing software. Researchers have already shown that GI can improve human-written code, ranging from program repair to optimising runtime, from reducing energy-consumption to the transplantation of new functionality. Much remains to be done. The cost of re-implementing GI to investigate new approaches is hindering progress. Therefore, we present Gin, an extensible and modifiable toolbox for GI experimentation, with a novel combination of features. Instantiated in Java and targeting the Java ecosystem, Gin automatically transforms, builds, and tests Java projects. Out of the box, Gin supports automated test-generation and source code profiling. We hope Gin will facilitats experimentation and will speed innovation in GI. 
Type Of Technology Software 
Year Produced 2019 
Open Source License? Yes  
Impact Several publications so far have used Gin, including the award-winning work: " Software Improvement with Gin: a Case Study " (SSBSE 2019). The tool has been used for educational purposes at the University of Adelaide. 
URL https://github.com/gintool/gin/releases/tag/v2.0
 
Title Magpie: Machine Automated General Performance Improvement via Evolution of software 
Description Magpie is a tool for automated software improvement. It uses the genetic improvement methodology to traverse the search space of different software variants to find improved software. Magpie provides support for improvement of both functional (automated bug fixing) and non-functional (e.g., execution time) properties of software. Two types of language-agnostic source code representations are supported: line-by-line, and XML trees. Magpie also enables parameter tuning and algorithm configuration, both independently and concurrently of the source code search process. 
Type Of Technology Software 
Year Produced 2022 
Open Source License? Yes  
Impact Magpie is a general software optimisation tool that combines two techniques: parameter tuning and genetic improvement, to improve primarily non-functional properties of software, such as its execution time. In our initial work we show how can it also be used to find efficient compiler configurations: "MAGPIE: Machine Automated General Performance Improvement via Evolution of Software" by Aymeric Blot and Justyna Petke. 
URL https://arxiv.org/abs/2208.02811
 
Title PyGGI 2.0: language independent genetic improvement framework 
Description In collaboration with researchers from KAIST we extended a genetic improvement tool with an intermediate XML representation, making it now feasible to improve software regardless of in which programming language it was already written. The vast majority of implementation effort was conducted by Dr Aymeric Blot. 
Type Of Technology Software 
Year Produced 2019 
Open Source License? Yes  
Impact Several publications so far have used PyGGI, with the extension allowing to target for instance C software. 
URL https://dl.acm.org/doi/10.1145/3338906.3341184
 
Description A talk at the 61st CREST Open Workshop on the role of testing in Genetic Improvement of Software 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on the role of software testing in genetic improvement at the 61st CREST Open Workshop, on Statistics, Learning, Genetic Improvement and Testing for Programs.. Dr. Petke posed questions and proposed research directions for future work, triggering discussion and getting feedback from the audience. The talk was attended by about 50 workshop participants, coming from both academia and the industry.
Year(s) Of Engagement Activity 2019
URL http://crest.cs.ucl.ac.uk/cow/61/
 
Description A talk at the 62nd CREST Open Workshop on tooling on `Gin and PyGGI: General Frameworks for Genetic Improvement 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on her research at the 62nd CREST Open Workshop on Automated Program Repair and Genetic Improvement. In particular, she presented two genetic improvement tools, development of which she and Dr. Blot contributed towards. She posed questions and proposed research directions for future work, triggering discussion and getting feedback from the audience. The talk was attended by about 50 workshop participants, coming from both academia and the industry.
Year(s) Of Engagement Activity 2020
URL http://crest.cs.ucl.ac.uk/cow/62/
 
Description A talk on Genetic Improvement as part of the Research Methods in Software Engineering course 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Local
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on genetic improvement as part of the Research Methods in Software Engineering course at UCL. The lecture was attended by about 40 MSc students. A few students showed great interest, and two expressed interest to do a final year project with Dr. Petke over the summer.
The two projects resulted in workshop publications in 2021 (doi: 10.1109/GI52543.2021.00009, 10.1109/APR52552.2021.00008).
Year(s) Of Engagement Activity 2019
 
Description A talk on Genetic Improvement as part of the Research Methods in Software Engineering course 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Local
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on genetic improvement as part of the Research Methods in Software Engineering course at UCL. The lecture was attended by about 40 MSc students. A few students showed great interest, and two did a final year project with Dr. Petke over the summer, with one leading to a workshop publication (doi: 10.1145/3520304.3534004), which won the best paper award.
Year(s) Of Engagement Activity 2020
 
Description A talk on Genetic Improvement as part of the Research Methods in Software Engineering course 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Local
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on genetic improvement as part of the Research Methods in Software Engineering course at UCL. The lecture was attended by about 30 MSc students. A few students showed great interest, and one expressed interest to do a final year project with Dr. Petke over the summer.
Year(s) Of Engagement Activity 2022
 
Description A talk on Genetic Improvement as part of the Research Methods in Software Engineering course 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Local
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk on genetic improvement as part of the Research Methods in Software Engineering course at UCL. The lecture was attended by about 40 MSc students. A few students showed great interest, and two did a final year project with Dr. Petke over the summer as a result, with plans made to extend the work for future publication.
Year(s) Of Engagement Activity 2021
 
Description A talk on Genetic Improvement as part of the Research Methods in Software Engineering course 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Local
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a talk about her research as part of the Research Methods in Software Engineering course at UCL. The lecture was attended by about 30 MSc students. A few students showed great interest, sparking discussion about the work.
Year(s) Of Engagement Activity 2018
 
Description An invited seminar talk at the University of Kent 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave an invited seminar talk at the University of Kent about her research, in particular, related to the ongoing work on genetic improvement. The audience consisted of postgraduate students and academic staff. The talk sparked many questions, as it presented a different way of optimising software, using meta-heuristic search to modify software. The discussion carried on after the talk with a few people who were particularly interested in the work presented.
Year(s) Of Engagement Activity 2019
URL https://www.cs.kent.ac.uk/research/groups/plas/seminarcalendar.html?eid=34460&view_by=month&date=201...
 
Description An invited talk at Facebook 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Industry/Business
Results and Impact Dr. Petke gave an invited seminar talk at Facebook's London office about her research, in particular, related to the ongoing work on the grant. The audience consisted of mainly Facebook employees. The talk sparked many questions, as it presented a different way of optimising software, that uses meta-heuristic search to modify code. The discussion carried on after the talk with a few people who were particularly interested in the work presented.
Year(s) Of Engagement Activity 2019
 
Description An invited talk at the Facebook Testing & Verification Symposium 2019 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact Dr. Petke was invited to give a talk about the winning research proposal that she submitted to the Facebook Testing and Verification call for proposals. On the first day, when she gave the talk, the audience consisted of academics who also won the awards from that call for proposals and a few of the Facebooks' employees. This provided an opportunity to talk about genetic improvement research with other academics, but also with people from the industry. The following two days were open to a wider audience of around 200 people.
Year(s) Of Engagement Activity 2018
URL https://facebooktestingverificationsum.splashthat.com/
 
Description Co-chaired the Demonstrations Track at ICSE 2019 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact Dr. Petke co-organised the Demonstrations track at the International Conference on Software Engineering. The track serves as a venue for publishing and presenting advances in software engineering tools that advance the practice, research, or both. The track is a highly interactive venue in which researchers and practitioners can demonstrate their tools and discuss them with attendees. Academics, students as well as practitioners attended the event.
Year(s) Of Engagement Activity 2019
URL https://2019.icse-conferences.org/track/icse-2019-Demonstrations?track=ICSE%20Demonstrations
 
Description Co-chaired the SBSE track at GECCO 2019 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Search-Based Software Engineering (SBSE) is the application of search algorithms and strategies to the solution of software engineering problems. Evolutionary computation is a foundation of SBSE, and since 2002 the SBSE track at GECCO has provided the unique opportunity to present SBSE research in the widest context of the evolutionary computation community. Last but not least, participating to the SBSE track and, more generally, to GECCO allows to be informed by advances in evolutionary computation, new cutting edge meta-heuristic ideas, novel search strategies, approaches and findings.

The SBSE track, co-organised by Dr. Petke, invited papers on search-based software engineering. It was held with the top conference on genetic and evolutionary computation (GECCO). It is a premier venue in the area. The event attracted both students and more senior academics and the topics ranged from program repair to software testing using SBE and evolutionary computation. The event triggered lots of discussion.
Year(s) Of Engagement Activity 2019
URL https://gecco-2019.sigevo.org/index.html/Program+Tracks#id_SBSE%20-%20Search-Based%20Software%20Engi...
 
Description Genetic Improvement of Software - Seminar Talk at Humboldt-Universität zu Berlin, Germany 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave an online invited talk at the Humboldt-Universität zu Berlin's seminar series. She received a few questions after the talk, sparking discussion.
Year(s) Of Engagement Activity 2022
 
Description Genetic Improvement of Software - Seminar Talk at Royal Holloway University of London (RHUL), UK 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Postgraduate students
Results and Impact Dr. Petke was invited to give a talk on her research in genetic improvement at the University of Royal Holloway, in the Computer Science Department, which sparked questions and discussions.
Year(s) Of Engagement Activity 2022
 
Description Genetic Improvement of Software - Seminar Talk at the University of Sheffield, UK 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave an invited research talk as part of University of Sheffield's seminar series. She received several questions and a few follow-up emails.
Year(s) Of Engagement Activity 2022
 
Description Genetic Improvement of Software - invited lecture at the University of Passau, Germany 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach Regional
Primary Audience Undergraduate students
Results and Impact Dr. Petke gave an invited lecture at the University of Passau, Germany, in January 2022. It was part of a seminar so various academics across different departments attended. It was an online lecture. Dr. Petke received several questions and follow-up emails.
Year(s) Of Engagement Activity 2022
 
Description Genetic improvement of Software website 
Form Of Engagement Activity Engagement focused website, blog or social media channel
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact The grant allowed for maintenance and improvement of the genetic improvement website. It is the go-to place for anyone wanting to learn about genetic improvement, the community and associated events. It was created in 2018 to supersede previous workshop websites, with a short introduction to GI. In 2020 it was redesigned to include a living survey and information about the community and all GI events to-date.
Year(s) Of Engagement Activity 2018,2019,2020,2021,2022,2023
URL http://geneticimprovementofsoftware.com/
 
Description How to achieve high quality research - Keynote at the Early Career Researchers Workshop at the 2021 European Computer Science Summit (ECSS) 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Petke gave a keynote talk at the Early Career Researchers Workshop at the 2021 European Computer Science Summit (ECSS).
The goal of this workshop was to support early career researchers (PhD students and Postdocs) in the development of their soft skills related to presentation abilities, networking, developing a research plan, and connections to industry.
Due to COVID the talk was given online, thus hard to measure impact.
Year(s) Of Engagement Activity 2021
URL https://www.informatics-europe.org/ecss/program/career-development-workshop.html
 
Description Keynote speaker at the 14th International Symposium on Search-Based Software Engineering (SSBSE), Singapore, November 2022 (online) 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Other audiences
Results and Impact Dr. Petke was invited to give the online keynote speech at the 14th International Symposium on Search-Based Software Engineering (SSBSE), Singapore, November 2022. The symposium is the top venue for SBSE research. It is attended both by academics, students, and the industry. Dr. Petke got several questions and was nominated and elected to the SSBSE Steering Committee.
Year(s) Of Engagement Activity 2022
URL https://conf.researchr.org/track/ssbse-2022/ssbse-2022-keynotes?
 
Description Keynote speaker at the 2020 IEEE Autumn Meeting on Power Electronics and Computing 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Undergraduate students
Results and Impact Dr. Petke was invited to give a keynote at the 2020 IEEE ROPEC conference on power electronics and computing. The invite was in recognition of my research in genetic improvement the field Dr. Petke co-founded. Organisers believed it would be very attractive to the participants of the conference.
Most of the authors of the over 100 papers accepted came from Mexico, South and Central Americas. Indeed the online event attracted over 100 attendees. The keynote provided a unique opportunity to present research on genetic improvement to not only typical conference participants, but also to many undergraduate students who asked where they could learn more and how could they start research in the area.
Year(s) Of Engagement Activity 2020
URL https://ropec.org/keynote-speakers/
 
Description Organised the 10th International Genetic Improvement Workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact The 10th Genetic Improvement workshop, co-organised by Dr. Petke and Dr. Blot, gathered researchers (both academics and students) in the area to discuss the latest findings. We also organised a keynote talk by Prof. Stephanie Forrest, from Arizona State University. It was the fourth time the workshop was held with the International Conference on Software Engineering (ICSE) and it attracted roughly 50 participants. Given the events populartiy plans were made for future such events.
Year(s) Of Engagement Activity 2021
URL http://geneticimprovementofsoftware.com/events/icse2021
 
Description Organised the 11th International Genetic Improvement Workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact The 11th Genetic Improvement workshop, co-organised by Dr. Petke and Dr. Blot, gathered researchers (both academics and students) in the area to discuss the latest findings. We also organised a keynote talk by Prof. Westley Weimer from University of Michigan, US. It was the eight time the workshop was held with the Genetic and Evolutionary Computation Conference, premier conference in evolutionary computation. Plans were made for future such events.
Year(s) Of Engagement Activity 2022
URL http://geneticimprovementofsoftware.com/events/gecco2022
 
Description Organised the 4th International Genetic Improvement Workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact The 4th Genetic Improvement workshop, co-chaired by Dr. Petke, gathered researchers (both academics and students) in the area to discuss the latest findings. We organised a keynote talk by Claire Le Goues, who is a well-known expert in automated software repair. We also provided studentships for students whose work was accepted at the workshop. Even though it was the first time it was held with ICSE it was one of the most attended workshops of the whole conference, with new publications, lots of discussion and new connections made for future work in the area.
Year(s) Of Engagement Activity 2018
URL https://geneticimprovementofsoftware.com/events/gi
 
Description Organised the 6th International Genetic Improvement Workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact The 6th Genetic Improvement workshop, co-chaired by Dr. Petke, gathered researchers (both academics and students) in the area to discuss the latest findings. We organised a keynote talk by Nadia Alshahwan, from Facebook, who gave a talk on Industrial experience of Genetic Improvement in Facebook. We also provided studentships for students whose work was accepted at the workshop. It was the second time the workshop was held with the International Conference on Software Engineering (ICSE) and it attracted roughly 50 participants. An article came out as a result of the discussions held at the workshop, entitled "The State and Future of Genetic Improvement", published in ACM SIGSOFT Software Engineering Notes (doi: 10.1145/3356773.3356801).
Year(s) Of Engagement Activity 2019
URL http://geneticimprovementofsoftware.com/events/icse2019
 
Description Organised the 8th International Genetic Improvement Workshop 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact The 8th Genetic Improvement workshop, co-organised by Dr. Petke, gathered researchers (both academics and students) in the area to discuss the latest findings. We also organised a keynote talk by Prof. Mark Harman, from Facebook/UCL. It was the third time the workshop was held with the International Conference on Software Engineering (ICSE) and it attracted roughly 50 participants. An article came out as a result of the discussions held at the workshop, entitled "Genetic Improvement @ ICSE 2020", published in ACM SIGSOFT Software Engineering Notes.
Year(s) Of Engagement Activity 2020
URL http://geneticimprovementofsoftware.com/events/icse2020
 
Description Organised the first Dagstuhl Seminar on Genetic Improvement 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Professional Practitioners
Results and Impact The seminar, co-chaired by Dr. Petke, intended to bring together researchers from various areas related to genetic improvement of software. The expertise of participants ranged from automated software repair through genetic programming and software testing to biological and evolutionary computation. Invited academics and students talked about the latest research and speculations on future research both in the practical applications of genetic improvement, such as energy consumption optimisation and automated parallelisation, to initial results on much lacking GI theory. Other talks covered software testing and bug repair. The participants also identified a set of benchmarks and tools for GI. These have been published at the https://geneticimprovementofsoftware.com/ website to allow other researchers to compare their new technologies against the state-of-the-art.

Aside from gathering a list of tools and benchmarks, the seminar's impact can be already seen in recent publications. For example, four papers accepted to the 4th International Genetic Improvement Workshop (GI-2018), co-located with the International Conference on Software Engineering (ICSE) (top conference in software engineering), were written by one or more workshop participants. Indeed most were started in Dagstuhl. Several other collaborations have been established, with plans for visits and further research on topics identified at the seminar. We look forward to results of this work initiated at Dagstuhl.
Year(s) Of Engagement Activity 2018
URL https://www.dagstuhl.de/en/program/calendar/semhp/?semnr=18052
 
Description Research talk a the 11th International Genetic Improvement Workshop (GI@GECCO 2022) 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented their joint work at the 11th International Genetic Improvement Workshop (GI@GECCO 2022), sparking discussions about the state of genetic improvement tooling. This work was awarded with the best paper award.
Year(s) Of Engagement Activity 2022
URL https://geneticimprovementofsoftware.com/events/gecco2022
 
Description Research talk at the 23rd European Conference on Genetic Programming 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented their joint work on comparing different search algorithms in genetic improvement, sparking discussion and questions about future work.
Year(s) Of Engagement Activity 2020
URL https://www.evostar.org/2023/eurogp/
 
Description Research talk at the 23rd annual congress of the French Society for Operational Research and Decision Support ROADEF'2022 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach National
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented their joint work on genetic improvement, which sparked questions and discussions at the conference.
Year(s) Of Engagement Activity 2022
 
Description Research talk at the 7th International Genetic Improvement Workshop at GECCO 2019 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented their joint work on Adaptive Specialisation in Genetic Improvement, sparking discussion about future directions.
Year(s) Of Engagement Activity 2019
URL https://geneticimprovementofsoftware.com/events/gi
 
Description Research talk at the International Symposium on Search-Based Software Engineering, Challenge Track (SSBSE 2019) 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot presented joint work of Dr. Petke and Dr. Brownlee presenting a case study with Gin - a tool for automated software improvement. This work won the Challenge Track award that year.
Year(s) Of Engagement Activity 2019
URL http://ssbse19.mines-albi.fr/
 
Description Research talk at the Tenth International Genetic Improvement Workshop (GI@ICSE 2021) 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented joint work on different selection strategies in GI-based program repair. The talk sparked discussions about future work.
Year(s) Of Engagement Activity 2021
URL https://geneticimprovementofsoftware.com/events/icse2021
 
Description Research talks at the Genetic Improvement and Automated Program Repair Workshops at ICSE 2020 
Form Of Engagement Activity A talk or presentation
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Dr. Blot, Dr. Petke's research associate, presented 3 pieces of work at 2 international workshops co-located with the International Conference on Software Engineering. All three talks sparked lots of discussion.
doi:
10.1145/3387940.3392175
10.1145/3387940.3392174
10.1145/3387940.3392180
Year(s) Of Engagement Activity 2020
URL https://geneticimprovementofsoftware.com/events/gi
 
Description The 61st CREST Open Workshop - Statistics, Learning, Genetic Improvement and Testing for Programs. 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Software testing is expanding, growing, and finding new connections and uses like some strange mutant changeling. This workshop aims to reflect and celebrate this. To this end we wanted to attract software engineering researchers with interest and expertise in some of the following areas: applications of statistics to problems in SE, applications of machine learning to problems in SE, Genetic Improvement of Programs and, last but not least, Software Testing. Examples of illustrative developments in the union of these areas from within my research group include Software Transplantation, novel approaches to testing machine learning systems, information theoretic models of failed error propagation and oracle improvement in software testing, the use of deep neural nets to create and reconfigure search landscapes in testing, the use of search in adversarial machine learning, and the use of testing in the application of GI to a long list of types of software improvement. To grow and deepen these connections, this workshop, co-organised by Dr. Petke, presented a list of talks in the union (and sometimes the intersections) of these areas.
Year(s) Of Engagement Activity 2019
URL http://crest.cs.ucl.ac.uk/cow/61/
 
Description The 62nd CREST Open Workshop - Automated Program Repair and Genetic Improvement 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Postgraduate students
Results and Impact Program repair has the potential to reduce the significant manual effort that developers devote to finding and fixing software bugs. Recent years have witnessed a dramatic growth of research in program repair. Researchers have proposed a large number of techniques aimed to address fundamental challenges of program repair such as scalability and test-overfitting, and have successfully deployed program repair in industry. One of the techniques that has been used in the repair field has been genetic improvement. GI uses automated search in order to improve existing software. Aside from bug fixing, GI has been used to optimise other software properties, such as runtime, memory and energy consumption. It has also been used for other kinds of improvement such as specialising and porting.

The goal of this workshop, co-chaired by Dr. Petke, was to reflect on the progress that the research community has made over the last years in those two closely related fields, share experience in research and deployment, and identify key challenges that need to be addressed in future research. Speakers and audience came from both academia and industry. Top experts in the field of repair and GI came to the event and exchanged ideas. Many postgraduate students also attended. We hope it will lead to future collaborations.
Year(s) Of Engagement Activity 2020
URL http://crest.cs.ucl.ac.uk/cow/62/
 
Description Work on automated bug fixing covered by the NewScientist 
Form Of Engagement Activity A press release, press conference or response to a media enquiry/interview
Part Of Official Scheme? No
Geographic Reach International
Primary Audience Public/other audiences
Results and Impact We were contacted by the NewScientist for an interview regarding our article on the use of ChatGPT for automated bug fixing. The first author of that work, Dominik Sobania, whose visit Dr. Petke hosted at UCL in summer 2022, did the interview, with article about the work appearing online soon after attracting over 2900 views within the first 24 hours. The research work covered (https://arxiv.org/abs/2301.08653) was a direct result of the collaboration between Dr. Petke and Dominik Sobania, Aside from the NewScientist, it was covered by ZDNET and PCmag: (https://www.zdnet.com/article/chatgpt-can-write-code-now-researchers-say-its-good-at-fixing-bugs-too/, https://uk.pcmag.com/news/145150/watch-out-software-engineers-chatgpt-is-now-finding-fixing-bugs-in-code).
Year(s) Of Engagement Activity 2023
URL https://www.newscientist.com/article/2356482-chatgpt-can-find-and-fix-bugs-in-computer-code/