Lab Home | Phone | Search | ||||||||
|
||||||||
A pressing challenge for computer science over the next decade is reducing the total cost of software. This includes the billions of dollars that are lost each year from software defects. The number of software defects far outstrips the resources available for repairing them, and most software is shipped with both known and unknown bugs. This problem arises because human programmers still develop, maintain, and repair computer programs largely by hand, despite many years of progress in machine learning and artificial intelligence. The talk will describe recent research that shows how evolutionary computation can be combined with program analysis methods to automatically repair bugs in off-the-shelf legacy C programs.
Initial results will be presented on C programs, including security vulnerabilities such as integer overflow, denial of service, format string, and buffer overflow. Finally, the talk will describe how the automatic repair mechanism can be combined with anomaly intrusion detection to produce a closed-loop repair system. |