Recent News
UNM student creates game-changing in-seat food delivery service
April 1, 2025
Dissertation defense, April 7: Ala Jararweh
March 31, 2025
Dissertation defense, April 4: John Ringer
March 31, 2025
Computer Science Colloquium will discuss the use of AI in cyber-physical systems
March 27, 2025
News Archives
[Colloquium] Automatically Finding Patches Using Genetic Programming
February 25, 2010
- Date: Thursday, February 25th, 2010
- Time: 11 am — 12:15 pm
- Place: Mechanical Engineering, Room 218
Westley Weimer
Assistant Professor
Dept. of Computer Science
University of Virginia
Abstract: Automatic program repair has been a longstanding goal in software engineering, yet debugging remains a largely manual process. We introduce a fully automated method for locating and repairing bugs in software. The approach works on off-the-shelf legacy applications and does not require formal specifications, program annotations or special coding practices. Once a program fault is discovered, an extended form of genetic programing is used to evolve program variants until one is found that both retains required functionality and also avoids the defect in question. Standard test cases are used to exercise the fault and to encode program requirements. After a successful repair has been discovered, it is minimized using structural differencing algorithms and delta debugging. We describe the proposed method and report experimental results demonstrating that it can successfully and rapidly repair multiple types of defects from many different programs.