|
||||||||||||||
|
Course Web Site: http://www.cse.psu.edu/~saraswat/cse598f
Course Description: Complex, embedded, computational electro-mechanical artifacts are becoming increasingly central to the conduct of modern life. A fundamental question arises: How does one program an agent (or a small collection of agents) to achieve a specific goal in the face of internal faults or uncertainty about the environment? Over the past decade a powerful new framework for the development of such embedded and hybrid systems has taken form. Called model-based computing or model-based programming, this approach is rooted in the development of declarative, multi-use, veridical (probabilistic and timed/hybrid) models of system components and their connections. Software necessary for various engineering tasks -- such as simulation, diagnosis, mode identification, control, real-time planning -- is obtained systematically by applying specially developed (but model independent) reasoners to these models. Using these techniques, software has been shipped to control Xerox reprographics machines and run the NASA spacecraft Deep Space-1, among other tasks.
This course will systematically develop (discrete- and continuous-) timed, probabilistic concurrent constraint programming as a foundation for model-based programming. The purpose of this course is to expose the student to advanced research material in these areas, and to introduce the student to research methodology and techniques. In particular, we shall cover ideas in foundations, language implementation, as well as applications. Mathematical rigor and theory will be emphasized, as well as an appreciation for proper system design.
Textbook: There is no textbook for this course. Lecture notes will be handed out, and students will be expected to read prescribed research papers.
Mailing list: Announcements concerning the course will be sent by email, via the mailing list of the course.
Grading: Final grades will be determined via a combination of class participation (20%), homework assignments (40%) and a term project (40%). A list of term projects will be provided by Week III.
Assignments: There will be approximately four homework assignments, each worth 10% of the grade. Students will have about three weeks for each homework assignment. The assignments will require students to read specified research papers, and think their way through to solutions. Some assignments may require programming as well.
Academic Integrity: Every student is expected to submit only their own original work, or where applicable, to cite the origin of the code. Any work submitted by a student which they did not originally develop must explicitly indicate the source of the work. Such sources include the textbook, other reference books, material on the web, and other individuals. The exception is material presented or distributed in class which can be used freely. Failure to follow these guidelines will result in swift and severe actions.
Other dates: For late drop date, holidays, etc., see the Academic Calendar.