Printable Version of this PageHome PageRecent ChangesSearchSign In

Creativity and Computer Programming: A New Research Program

Bringsjord, Selmer
Rensselear Polytechnic Institute

This project investigates human creativity as a basis for: creating computational models of such creativity; advancing the area at the intersection of artificial intelligence and software engineering known as automatic programming; and developing educational technology to better teach computer programming. The project advances computational creativity with a new theoretical model of creativity in computer programming, steps toward a significant contribution to automatic programming, and insights into better education in computer programming. The project will devise a formal theory of computer programming as a creative process. This formal theory would place clear constraints on an overarching computational theory of domain-independent human creativity. Some initial implementations and corresponding demonstrations of the formal theory will be engineered. As a precursor to the formal theory, a general architecture of programming creativity will be developed. The project will develop algorithm-sketches showing how the creativity of human programmers can by exploited to develop a new approach to automatic programming.

The formal models of computational creativity and automatic programming will provide guidance as to how to better train computer programmers. Students will be exposed to computational models of programming creativity that integrate deductive, inductive, and abductive reasoning. Students will also be introduced to the role of diagrammatic thinking and reasoning in visualizing data structures and transformations on such data structures during the creative/exploratory part of programming. An emphasis on creativity in the teaching of programming will entice a greater number of students to pursue computer science.

Last modified 16 August 2007 at 6:43 am by haleden