Fundamentals 9 min read

How MIT’s Genesis System Cuts Bug‑Fix Time in Half with Automated Patch Generation

MIT researchers introduced the Genesis system, which automatically learns from existing patches to generate and evaluate new patch templates, achieving nearly double the bug‑fix success of the best hand‑crafted approaches and reducing programmers' fixing time by about 50%.

21CTO
21CTO
21CTO
How MIT’s Genesis System Cuts Bug‑Fix Time in Half with Automated Patch Generation

MIT’s research team has created a system called Genesis that automatically learns from previously applied patches, generates patch templates, and evaluates candidate patches. The system’s bug‑fix success rate is almost twice that of the best hand‑crafted template systems, allowing programmers to spend roughly half the time fixing bugs.

Key Contributions

Template‑AST and generator‑based transformations that abstract patch and application specifics to capture common patterns across multiple patches.

A novel patch generalization algorithm that automatically creates transformations capturing common generation patterns from a set of patches.

An innovative search‑space reasoning algorithm, including a new sampling method and an ILP‑based selection solution, to identify promising subsets of training patches.

A complete patch‑generation system with bug localization and candidate‑patch evaluation, demonstrated on large‑scale real‑world applications.

Experimental Results

In experiments on 41 bugs from 49 test cases across 21 open‑source Java projects, Genesis correctly repaired 21 bugs, whereas the best existing hand‑written Java patch generator repaired only 11. The system selected 85 diverse templates from an initial pool of 5–10 hand‑crafted ones, improving both coverage and precision.

All experimental data, including Genesis source code, inference templates, and generated patches, are available at http://groups.csail.mit.edu/pac/patchgen/ .

software engineeringMITautomated program repairgenesis systemPatch Generation
21CTO
Written by

21CTO

21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.