Font Size: a A A

Refinement implemented as planning operators

Posted on:2009-11-29Degree:M.ScType:Thesis
University:University of Alberta (Canada)Candidate:Matichuk, Bruce AllenFull Text:PDF
GTID:2442390005960831Subject:Computer Science
Abstract/Summary:
Programming is a difficult task that very few humans can perform, and yet it is arguably the most important and broadly influential technology in society today. The challenge of Software Engineering is to make programmers more effective. Promising advances in Al Planning and program comprehension provide tools to address the challenge. This research demonstrates the use of Program Refinement laws to construct planning operators in a code planning domain. The purpose of this domain is to automate code generation (also referred to as code synthesis). Using dynamically generated plans as programs, these methods can assist with the task of Software Engineering by providing tools for model checking and automated programming. The goal of the research is to provide a framework that will enable programmers and system designers to build larger and more complex systems than possible with the current approaches to program construction. The proposed technique can apply to low-level code or it can also apply to high-level code constructs used in the areas of workflow validation and automated service assembly. The dynamic nature of this method also enables the creation of a new type of software that makes decisions about how to behave at run time without human intervention. The research demonstrates the viability of the technique for small programs and programs without looping. One of the significant barriers to this technology's adoption is the difficulty in translating specifications into planning statements.
Keywords/Search Tags:Planning
Related items