In the context of concurrency, programming is complicated by a number of issues that need to be addressed, such as mutual exclusion, liveness, and fairness. Petri nets (PNs) are formal models developed in Computer Science for the modeling of concurrent systems. In Control Systems, PNs have been used in the context of supervisory control (SC) of discrete event systems (DES) and powerful theoretical results have been developed. However, these results have not yet been systematically applied to Computer Science problems for which PNs were created. This research would apply SC tools to the automatic synthesis of programming code based on high-level supervisory control program specifications. SC is of interest because various desirable features of programs can be seen in terms of supervisory control specifications. The goal of the research is to reduce programming effort by having more of the higher level requirements implemented automatically by the SC tools. While SC methods have been used to obtain control software, neither the application to the synthesis of concurrent programs nor the application of PN based SC methods have been done so far. PNs are natural models of concurrency that allow the use of a number of efficient supervisory control methods, without excluding other approaches. Another new feature of the work is the extraction of a SC specification from a specification language. This topic is of interest in order to obtain compact and easy to develop specifications, hiding the size of the underlying DES models and the technical details involved in the formulation of SC problems. Finally, the research is unique in the way it handles the SC, in an attempt to take advantage of multiple methods available in the literature.

The programming code produced by the SC tools is correct by construction and the programmer has only to manage simpler high-level specifications. The research pursued represents a fresh and novel approach to writing concurrent programs and it involves software development and research on supervisory control methods, specification languages, and code generation strategies. On one hand, the project provides a step forward towards a higher level of automation in the development of concurrent programs. On the other hand, this project will provide a platform for testing, comparing, and developing DES methods in general. Parts of the project will involve students at undergraduate level, will also benefit undergraduate students via undergraduate research and design projects. A major part of the proposed work is being carried out at a primarily undergraduate institution.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Type
Standard Grant (Standard)
Application #
0834057
Program Officer
D. Helen Gill
Project Start
Project End
Budget Start
2008-09-15
Budget End
2011-08-31
Support Year
Fiscal Year
2008
Total Cost
$270,000
Indirect Cost
Name
University of Notre Dame
Department
Type
DUNS #
City
Notre Dame
State
IN
Country
United States
Zip Code
46556