“Explorations in Cyber-Physical Systems Education”
Communications of the ACM, May 2022, Vol. 65 No. 5, Pages 60-69
By Sanjit A. Seshia
“The intellectual core of CPS is in models and abstractions that conjoin computation and physical dynamics.“
In 2006, Helen Gill at the U.S. National Science Foundation coined the term “cyber-physical systems” (CPS) to capture an emerging discipline concerned with the integration of computation with physical processes. A nascent research community emerged, building on a momentum that cut across fields such as embedded systems, real-time systems, hybrid systems, control theory, sensor networks, and formal methods. Discussions began about developing curricula to train students who were interested in working in the broad area of CPS.
During the 2006–2007 academic year, a small group of educators from the University of California, Berkeley’s Electrical Engineering and Computer Sciences (EECS) department—including Edward Lee, Claire Tomlin, and myself—met to discuss the creation of an undergraduate CPS curriculum. Berkeley had already been a pioneer in CPS research and graduate education for several years, but no undergraduate courses focused on CPS. A major challenge to this effort was the breadth of topics needed to cover the area. A further obstacle was trying to balance theoretical content with practical, lab-based coursework. From these discussions, however, emerged the basic contours of an undergraduate course, which developed over the next decade into a broader “expedition” in CPS education.
Major expeditions to explore the unknown are generally best undertaken by a team; this has been true of expeditions to discover new worlds, and it is true of expeditions in research and teaching. I have been fortunate to join several academic colleagues, industry collaborators, and students on the CPS education expedition described in this article. It has comprised several smaller explorations, undertaken roughly in parallel over the last 14 years, along various “trails” in CPS education. This article is my attempt to report these explorations, the results, the lessons learned, and to extrapolate them as ideas for the future of CPS education. It is not meant to be a survey of approaches to CPS education; for that, I refer the reader to a recent article by Marwedel et al. The trails are presented in rough, but not strict, chronological order. An early version of this article appeared as “Cyber-Physical Systems Education: Explorations and Dreams.”
Trail 2: A CPS Textbook
By the fall of 2009, we had already offered EECS 149 twice. As noted earlier, the course was, at the time, unique for its coverage of a broad set of topics and its integration of theoretical and practical content. Edward Lee and I could not find a single book that covered all the content we wanted to teach. Therefore, we started developing our own course notes, which gradually grew into something more coherent. We decided to put them together as a textbook, and in 2010–2011, this effort culminated in the publication of the first edition of Introduction to Embedded Systems: A Cyber-Physical Systems Approach.
In earlier articles and in the book’s preface, we have discussed at length the various design decisions made in writing the textbook and how it differs from the other excellent CPS textbooks available—for example, those by Alur and Marwedel. Therefore, I will focus on aspects that have not been covered in depth elsewhere.
Definition of CPS. A textbook on cyber-physical systems must define what that class of systems is. Cyber-physical systems have been informally described as integrations of computation with physical processes. Some definitions emphasize the networked aspect of these systems. Still others make distinctions between CPS and other terms, such as the IoT, embedded systems, Industrial Internet, and Industry 4.0.
We chose an inclusive approach, formulating the following definition: A cyber-physical system is an integration of computation with physical processes whose behavior is defined by both cyber and physical parts of the system.
This defines CPS as being about the intersection, not the union, of the physical and the cyber. It also emphasizes the behavior or semantics of CPS. It is not sufficient to separately understand the behavior of physical components and the computational components; we must instead understand their interaction. Our definition of CPS does not refer to networking or other specific characteristics. We believe the terms CPS, embedded systems, IoT, Industry 4.0, and so forth to be essentially equivalent, describing the same class of systems while emphasizing different characteristics of those systems.
Lessons Learned and Outlook
Evolution of the course and lessons learned. The 14-year expedition described herein has been a productive educational experiment in many ways. Here is a selection of the main lessons learned:
- Durability of course topics…
- Evolution of lab content…
- Theory and practice…
Outlook to the future. As I think about the future of CPS education, and of engineering education in general, two sets of articles come to mind. The first is a pair of thought-provoking articles written by Lee and Messerschmitt, one discussing the future of engineering education and the other presenting an innovative viewpoint on higher education in the year 2049. The second set of articles covers recent studies of and opinions about the impact of automation and information technology (IT) on jobs.
A few threads emerge. First, rapid technological change and increasing automation make lifelong learning ever more important. Second, humans will increasingly need to collaborate with intelligent machines in their jobs. How should we design CPS education for such a future? I approach this question from the viewpoint of leveraging the work described in the preceding sections.
About the Author:
Sanjit A. Seshia is a professor of Electrical Engineering and Computer Sciences at the University of California, Berkeley, CA, USA.