CSE591: Cyber-Physical Systems

CSE591: Cyber-Physical Systems: Modeling, Verification and Synthesis


 
NAO driving a BMW
A NAO driving an electric BMW
   
Continental: Cloud as sensor
Continental Cooperation: The Cloud as sensor
 
Close-loop infusion
Major updates:
  • 2016.01.26 : Further details on paper presentation and Blackboard discussion forum.

Introduction

Consider the future smart transportation network. Multiple autonomous vehicles will be communicating over the cloud exchanging vital information on their position, traffic and the state of the roads. Based on this information, each autonomous vehicle will be making decisions on its next action potentially at speeds exceeding 200 mph. On top of that, each vehicle is a system of systems on its own. For example, a vehicle with a hybrid powertrain will have to decide when it is appropriate to use the battery or the gas engine based on complex algorithms. This is a system of systems where cyber components interact with physical components at multiple (both architectural and time) scales. How do we go about designing such a system of systems? What are the properties of such a system of systems and what guarantees can be provided?

As another example, think of the modern close-loop medical devices. Such devices collect physiological measurements from the patient, compute the appropriate medical action and, then, apply it. How do we personalize such devices and how can we guarantee their safety?

Both examples fall under the larger category of Cyber-Physical Systems (CPS), namely, "engineered systems that are built from and depend upon the synergy of computational and physical components" (quote from the NSF CPS program). Surprisingly, a multitude of CPS applications can be modeled using the same mathematical formalism. Thus, the theoretical foundations for modeling, analysis and synthesis of such systems are common for a large range of applications. On the other hand, specializations to particular applications can better translate theory into practical and usable software tools.

This graduate seminar-level course provides an introduction to the mathematical formalisms and resulting software tools that will help you model, analyze and synthesize CPS. In addition, current topics from the CPSWeek conference will be covered as well. In particular, we will study:
  1. Models of software/hardware: How do we mathematically model computation for real time embedded systems? How do we model concurrent/parallel systems? What are the differences between synchronous and asynchronous computation?  
  2. Models of cyber-physical systems: How do we model physical systems? How do we model cyber and physical system behavior in a common framework? What are the properties of interest for cyber-physical systems and how can we specify them?
  3. Analysis and Verification: How do we analyze and verify functional properties of cyber-physical systems? What are the challenges in verifying concurrent cyber-physical systems? What are the limitations of complete verification? When automated testing can be applied?
  4. Synthesis and Control: Is automated synthesis possible? What are the limitations and challenges in controlling CPS?
  5. Specific Topics:
    • Automotive systems
    • Medical devices
    • Security issues in CPS
    • Networked CPS, e.g., through sensor networks

The course emphasizes rigorous thinking and mathematical analysis. To connect theory to practice, we will also use current industrial strength tools based on the Matlab and Simulink platforms. In addition, this year we will also focus on testing theory for CPS which is of growing interest to the industry.


Before registering for the course please make sure that at minimum you feel comfortable with the level of mathematical presentation in "Introduction to embedded systems" by Lee & Seshia


The course has two main goals:

  • Teach the basic theoretical foundations so that
    1. you can understand the limitations and advantages of the existing theory 
    2. you can use both research and industrial software tools
    3. you can read the current literature from the CPSWeek conference
  • Teach the basic skills in discovering problems that you would like to work on and, then, presenting and writing research papers  

What this course is not about: This course does not cover programming of embedded systems, distributed systems or real time systems. The course does not cover security issues of software, internet or internet of things. The course may only partially touch upon some topics that relate to feedback (networked) control, machine learning and artificial intelligence. Actually, ASU offers a variety of courses that cover all the aforementioned topics in detail and you are advised to take these courses as well.


Disclaimer


This is a live web-page so please check it frequently. Moreover, the course is currently under development. Therefore, it is recommended only to adventurous students who can excel within non-fully structured environments.  

Logistics

  • Class: Monday and Wednesday 10:30am-11:45am, BYENG M1-09
  • Instructor: Georgios Fainekos (fainekos at asu)
  • Office hours: By appointment or check my scheduled office hours on my calendar.
  • Office: Centerpoint 203-17
  • Teaching assistant: None 
  • Announcements will only be posted on Blackboard (sometimes also in class on the slides).
  • On-line discussions will take place on Blackboard.
  • Electronic communication policy:
    • I do not respond to emails or to on-line discussions over the weekend.
    • If you have any question that is not related to personal issues, then you MUST first post it on the discussion board on Blackboard under the most relevant topic.
    • We will be responding to any questions on Blackboard after 1 business day. This will let your classmates enough time to attempt to answer your question for class participation credit.
    • Important: Blackboard does not send email notifications when a new comment or question is posted on Blackboard unless you have subscribed to that forum. After you select a discussion forum, e.g., hw1, then the subscribe button is on the top left.
    • If you think you must send me an email due to the personal nature of your question or you think that your question might not be interesting to the rest of the class, then send me an email.
    • Before sending an email please follow the excellent advice here: 

Prerequisites


Undergraduate courses in calculus and linear algebra are mandatory. An undergraduate course in differential equations is preferred. Some knowledge about linear systems and automata theory is an advantage. However, the course will provide a short review on the necessary background material. Finally, it is assumed that the students are familiar with some programming language, such as C or MATLAB.

Textbooks & Readings

Note that no existing textbook is going to cover everything in the syllabus. The recommended textbook covers a large portion of the material at the appropriate mathematical level. In case you do not want to purchase the recommended textbook, you can cover most of the reading material using the alternative textbooks for which we have on-line access through the ASU library.
  • Recommended Reading: 


Grading

Grades will be based on: 

    1. 3-6 homeworks 40% 
      • You may form discussion groups for the HW problems of up to 3 members. However, the HW submission will be individual and you must mention the members of the discussion group on your submission. 
      • Late submission policy: For everyday you delay submitting the homework a 5% penalty is applied to your grade until the homework solutions are distributed to class. After the solutions are out, the maximum score you can receive for a homework set is 40% of the total score.
    2. Class project 40%
      • See below for details
    3. Cutting edge literature review and presentation 20%
      • See below for details
    4. Class participation
      • If you are within 1% point of moving to a higher letter grade, then class participation can help you. 
      • Class participation consists of:
        • Finding typos, bugs, etc in the book, slides, lecture notes, homework problems etc
        • Answering questions (correctly) in the class
        • Answering questions (correctly) on the discussion board
        • Active discussion in class on the lecture material
      • Class participation is not an one time contribution. It must be continuing activity throughout the semester.
  • Grading scale:

A+

>100%

B-

[75-80)%

A

[95-100]%

C+

[70-75)%

A-

[90-95)%

C

[65-70)%

B+

[85-90)%

D

[55-65)%

B

[80-85)%

F

<55%


Note: The above might still change depending on the number of students and the available resources. For example, it is possible that a lab component might be introduced, if resources become available.

Project description

A perfect project will be graded 100pt. An exceptional project, i.e., new results that can lead to publication, will receive grade more than 100pt. The project option can be used by MCS students for their project portfolio. No group projects will be allowed unless you have a provide a detailed work plan for each group member and I approve it.

Project ideas:


  • Literature review from last CPSWeek (ICCPS and HSCC conferences) or ESWeek (EMSOFT conference).
    • For the literature review you will have to select 2-5 papers, summarize them and then compare the advantages and disadvantages of each approach. 
    • If the papers are experimental, then 
      • Two papers are allowed if the algorithms are complex and no software tools have been made available by the authors.
      • Three papers are allowed if the software tools are available. The comparison should be performed on the same benchmarks.
      • Four or five papers are needed if the comparison is going to be on the results published by the authors.
    • Warning: Simply copying or permutating the text of the original papers is not acceptable and it will be considered plagiarism! Plagiarism is considered cheating by the university and the procedures stated in the university policy will be followed.


  • A theoretical problem which could lead to publication
    • Please schedule a meeting with me if you are interested in a project along these lines

  • Something related to your own research/work
    • You must demonstrate that you are using at least 2 topics from the list in the Introduction above. 
    • This must not be previously published work of yours (this is going to be automatically verified) or unpublished on-going research effort (this is going to be checked with your research adviser).

Remarks:

  • If your project involves implementation (simulation or a physical system), then the final product must be a working one.
  • If you decide to work on the something related to your project than you must demonstrate that this is something new that you have not be looking at. I will not accept projects which are just a rewriting of you prior or current research work.   

Project deliverables:

  • Project Proposal:
    • 1-2 page project proposal (due date posted on schedule)
    • Proposal Template
    • The proposal should include the following:
      • Introduction to general topic area that you are going to look into with a few bibliographic references on the background.
      • A precise problem description which also indicates which aspects of the course are relevant / will be used to solve the problem. Recall that that you need to demonstrate that at least 2 modules from the course will be relevant to your project.
      • An outline of what you plan to do to solve the problem and a schedule with the expected milestones. This section does not have to be very detailed since some of the topics are going to be covered later in the course.
      • The expected deliverables of the project.

  • Progress report:
    • A 2 page midterm progress review (due date posted on schedule).
    • No specific format is required.

  • Final project deliverable:
    • Any software developed (if applicable)
      • The code is going to be checked for plagiarism through SafeAssign on Blackboard and Moss (the latter is able to check structural similarities in code).
      • Note that you are allowed to use existing code as long as
        1. this is used as a library or a component in your system
        2. you clearly state your sources in your report
    • 6-10 page paper in IEEE conference format
      • The report is going to be checked for plagiarism through SafeAssign on Blackboard.
      • Here is a template (not in IEEE format) with the expected components for your report.
    • TBD one of the following options: (i) 15-30min presentation, (ii) poster presentation or (iii) oral examination
      • The examination option will depend on the number of students enrolled and the topics that will be covered in class.

Paper review and presentation

Since this is a research seminar level course, you will have to read and present a cutting edge research paper. The purpose of this exercise is twofold: 1) you will gain exposure to the conferences and topics related to this course and 2) you will receive some training in making research presentations.

You will have to choose a paper from the most recent conferences (in no particular order):

  1. CPSWeek (http://www.cpsweek.org/) and in particular the ICCPS and HSCC conferences.
  2. ESWeek (http://www.esweek.org/) and in particular the EMSOFT conference.

and give a presentation in class using this Powerpoint template.

The paper does not have to be related to your class project. However, you may want to choose something related to your research.

The due date for selecting the paper is announced on the class schedule. You need to send me by email the full citation for the paper. That is the authors, title, conference and year.

Some useful resources:

Your talk is going to be graded by the instructor (30%) and by your peers (70%) in terms of presentation according to the following criteria (organization, understanding of the material, visual quality of the slides and engagement of the audience). Further details on the criteria will be provided on Blackboard.

Class evaluations and feedback

I take very seriously class evaluations and feedback. During the semester, I will be posting surveys on Blackboard for feedback on both the course organization and the course content. I will appreciate it if you respond to these surveys. Ideally, the changes I implement will help you better succeed in the course. Responding to surveys counts toward to your class participation grade.

Finally, it is extremely important that you respond in the final anonymous survey solicited by the university at the end of the school year. The overall feedback helps me make changes for the next year.

Plagiarism Policy

Your work for this course must be the result of your own individual effort or - when permitted - the result of your group. Having said that, you are allowed to discuss problems with your classmates or me, but you must not blatantly copy others' solutions. 


Copying (or slightly changing) solutions from online sources, other books or your friends is easily detectable and not permitted. 


If such copying is detected, then a zero grade is applied to the respective assignment, -5% to the final grade and a formal report will be filed! 


Do not forget that if you can find an answer online, then so can we! Actually, if there is an answer on-line, then we download 10 versions and we check your answers for copying. Use on-line sources for the homework and project only when explicitly allowed.

Special Needs

If you are entitled to extra accommodation for any reason (such as a disability), I will make every reasonable attempt to accommodate you. However, it is your responsibility to discuss this with the instructor at the beginning of the course. For further information, please visit the website of the ASU Disability Resource Center at

https://eoss.asu.edu/drc/

Title IX

Title IX is a federal law that provides that no person be excluded on the basis of sex from participation in, be denied benefits of, or be subjected to discrimination under any education program or activity.  Both Title IX and university policy make clear that sexual violence and harassment based on sex is prohibited.  An individual who believes they have been subjected to sexual violence or harassed on the basis of sex can seek support, including counseling and academic support, from the university.  If you or someone you know has been harassed on the basis of sex or sexually assaulted, you can find information and resources at 

http://sexualviolenceprevention.asu.edu/faqs/students.