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.
Grading
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
Schedule
1.CPS introduction
Course
introduction
CPS
definitions
CPS
trends
Areas
of interest
Fundamental
approach
CPS
examples
CPS
Genesis, Modeling, Design, Verification and Validation, Assembly and
Deployment
2.Review
Calculus
Differential
equations
Markov
models
Linear
systems
3.Models
Nature
and Computation Myths: Airborne Collision avoidance examples