Automatic program repair with evolutionary computation

Westley Weimer, Stephanie Forrest, Claire Le Goues, Thanhvu Nguyen

Research output: Contribution to journalArticlepeer-review

137 Scopus citations


There are many methods for detecting and mitigating software errors but few generic methods for automatically repairing errors once they are discovered. This paper highlights recent work combining program analysis methods with evolutionary computation to automatically repair bugs in off-the-shelf legacy C programs. The method takes as input the buggy C source code, a failed test case that demonstrates the bug, and a small number of other test cases that encode the required functionality of the program. The repair procedure does not rely on formal specifications, making it applicable to a wide range of extant software for which formal specifications rarely exist.

Original languageEnglish (US)
Pages (from-to)109-116
Number of pages8
JournalCommunications of the ACM
Issue number5
StatePublished - May 1 2010
Externally publishedYes

ASJC Scopus subject areas

  • Computer Science(all)


Dive into the research topics of 'Automatic program repair with evolutionary computation'. Together they form a unique fingerprint.

Cite this