This project is extending the science of automatic programming, using concepts derived from evolutionary biology and software engineering, to permit the evolution of general and robust computational systems with multiple interacting functionalities and interfaces. The project uses the PI's Push programming language as the target language for evolved programs. Push programs are syntactically unconstrained, which facilitates evolution, but they can make use of arbitrary control and data structures; this supports the evolution of complex, modular programs.

This project will add new features to the Push language and develop new methods that allow requirements specifications and tests, of the type employed in software engineering practice, to be transformed into fitness functions that drive evolution. The cumulative effect of these extensions will be to support the evolution of significantly more general and robust computational systems.

The effectiveness of the technologies developed in this project will be demonstrated in two application areas: the automatic programming of small but complete productivity software applications and the automatic programming of robustly intelligent software agents for complex, time-varying economic games. The project is contributing to long-standing goals in computer science of building robustly intelligent systems and automatic synthesis of useful computer programs.

Project Start
Project End
Budget Start
2010-09-01
Budget End
2015-08-31
Support Year
Fiscal Year
2010
Total Cost
$423,288
Indirect Cost
Name
Hampshire College
Department
Type
DUNS #
City
Amherst
State
MA
Country
United States
Zip Code
01002