Cyber-physical systems are systems comprising both a physical part and a software part, whereby the physical part of the system sends information about itself to the software part, and the software sends information, usually in the form of commands, to the physical part. The development of cyber-physical systems, therefore, requires knowing a mix of competencies relative to physical systems, on the one hand, and software systems, on the other hand. Because physical systems have "a life of their own", and they can often harm operators (think airplanes, medical devices, or cars) and/or cost a fortune to repair (think power grid and centrifuges), the development of programs that control these systems cannot rely much on "trial and error". This course introduces the tools and models that will allow attendees to develop high confidence in the resulting system's proper operation prior to any operational test. Included are tools for model-based systems engineering, and cyber-physical system verification and validation currently in use by the CPS industry. Numerous examples will be considered, from aerospace, automotive, medical devices etc. The frequent presence of human operators is also acknowledged and discussed in-depth. Various verification and validation formalisms (formal methods) are described and applied to simple examples.
A Computer Science or Engineering Bachelor or equivalent degree.
Computer Languages used in this course
This class mixes physical systems, signal processing, program specification, and programming. The class will use AADL and Simulink as engineering specification languages. It will use Matlab and C as programming language. AADL will be taught explicitly. Students without these coding backgrounds who are willing to learn have also been successful in this course.
This course will be primarily driven by homework and projects. A take-home final exam will help everyone test their ability to solve specific, simple problems.
Approximate grade distribution:
- Class participation as measured on Piazza: 5%
- Homework: 40%
- Projects: 40%
- Final: 15%
Letter grading scale:
A: 90-100, B: 80-89, C: 70-80, D: 60-69, F: 0-59
Areas of interest
CPS Genesis, Modeling, Design, Verification and Validation, Assembly and Deployment
Nature and Computation Myths: Airborne Collision avoidance examples