CIS 540: Principles of Embedded Computation, Spring 2015
- Instructor: Rajeev Alur
- Lectures: Monday, Wednesday, 10.30 -- Noon, Moore 212
- Recitation: Friday, Noon -- 1pm, Moore 212
- Teaching Assistant: Nimit Singhania (
- Office Hours: Rajeev Alur: Tuesday, 4-5pm (Levine 609); Nimit Singhania: Monday, 5-6pm (levine 512)
This course is focused on the principles underlying design and analysis of
computational elements that interact with the physical environment.
Increasingly, such embedded computers are everywhere, from
smart cameras to medical devices to automobiles.
While the classical
theory of computation focuses on the function that a program computes,
to understand embedded computation, we need to focus on the
reactive nature of the interaction of a component with its
environement via inputs and outputs, the continuous dynamics of the physical
world, different ways of communication among components, and
requirements concerning safety, timeliness, stability, and performance.
Developing tools for approaching design, analysis, and implementation of
embedded systems in a principled manner is an active research area.
This course will attempt to give students a coherent introduction to
this emerging area.
This course assumes mathematical maturity, commensurate with
either ESE 210 (Introduction to Dynamical Systems) or
CIS 262 (Introduction to Theory of Computation).
It is suitable for students who have undergraduate degree in computer science,
or computer engineering, or electrical engineering. It is also suitable for
Penn undergraduates in CSCI and CMPE as an upper-level elective.
Principles of Cyber-Physical Systems; R. Alur, 2015, MIT Press (To appear).
Draft copy will be given to registered students during the first lecture.
Comments on the textbook draft are most welcome (typos, errors, suggestions for improving the explanation/presentation). Email your comments to alur@cis.
- Six Homeworks (30%): Each such homework will consist of theoretical problems.
- Course Project (20%): The project will focus on design, modeling, and formal analysis of
a representative cyber-physical system.
- Midterm (20%): In-class exam (March 4)
- Final Exam (30%) (May 6, Noon -- 2pm)
- Introduction: Jan 14 (Slides)
- Chapter 2: Synchronous Model: Jan 21 (Slides),
Feb 2 (Slides)
- Chapter 3: Safety Requirements: Feb 4 (Slides), 9 (Slides), 11 (Slides), 16 (Slides)
- Chapter 4: Asynchronous Model: Feb 18 (Slides), 23 (Slides), 25 (Slides), March 2 (Slides)
- Chapter 5: Liveness Requirements: March 16 (Slides), 18 (Slides), 23 (Slides), 25 (Slides)
- Chapter 6: Dynamical Systems: March 30 (Slides), April 1 (Slides), 6 (Slides), 8 (Slides)
- Chapter 7: Timed Model: April 13 Slides, 20 Slides, 22 Slides
- Chapter 9: Hybrid Systems: April 27 Slides, 29
- Homework 1: Due Wed, Feb 4: Exercises 2.3, 2.14, 2.16, 2.19, and 2.23 (25 pts total)
- Homework 2: Due Wed, Feb 18: Exercises 3.8, 3.9, 3.17, 3.18, and 3.21 (25 pts total)
- Homework 3: Due Mon, March 2: Exercises 4.2+4.10, 4.5, 4.8, 4.13, and 4.19 (25 pts total)
- Midterm 1: March 4, Wed, at 10.30am, Preparing for the mid-term
- Homework 4: Due Wed, April 1: Exercises 5.4, 5.5, 5.9, 5.10, and 5.15 (25 pts total)
- Course project: Phase 1 report due April 17; Phase 2 Matlab code due May 1.
- Homework 5: Due Mon, April 20: Exercises 6.3, 6.6, 6.14, and 6.18 (25 pts total)
- Homework 6: Due Wed, April 29: Exercises 7.2, 7.8, 7.15, and 7.17 (25 pts total)
The closest match is
Introduction to Embedded Systems -- A Cyber-Physical Systems Approach
by E.A. Lee and S.A. Seshia. (see online version)
See also the course Foundations of cyber-physical systems by Andre Platzer and corresponding lecture notes.
- Lecture participation: If you are lost during a lecture, do not hesitate to ask questions.
When I ask a question, don't be shy, and answer it the best way you can. Finally, if you do not want to
pay attention during lectures, stay home! You are not allowed to use electronic devices such as laptops
and mobile phones during a lecture.
- Recitation: Recitation will not cover new material, and will be used
to solve exercises, answer questions, and review background material.
- Grades and solutions are posted on canvas.
- Plagiarism policy: For homeworks, projects, and exams, you can use your
personal class notes, lecture notes, and reference books.
Do not copy material from friends or from the web.
For violations of this rule, you will be reported to the Office of the Student Conduct at Penn, which may result in expulsion.
Please take the plagiarism rules serioiusly.
Start working on the homeworks and projects early, and if you get stuck, contact the instructor or the TA.
Maintained by Rajeev Alur