This chapter examines at a high level the knowledge required to engineer cyber-physical systems (CPS). It draws on an examination of existing courses, programs, and instructional materials as well as consideration of the topics highlighted in comments to the committee from industry experts. Many of these foundations are also present in areas like computer science, engineering, and robotics, but the emphasis in CPS is on the integration of physical and cyber aspects. The chapter starts with a discussion of this integration and associated principles.
Drawing on these principles, this chapter identified six foundations for a CPS curriculum: basic computing concepts, computing for the physical world, discrete and continuous mathematics, cross-cutting applications, modeling, and CPS system development. The chapter turns next to a discussion of system characteristics such as scale, complexity, and safety criticality. These topics are best introduced early and infused throughout in CPS coursework and projects, much as the best practice in engineering is to address these issues from the outset of system design. The chapter closes with a discussion of complementary skills of value for CPS careers: learning to learn and critical thinking, soft skills, and entrepreneurship.
Given that the potential content for CPS is broad and evolving, the emphasis here is on general principles, foundations, system characteristics, and skills rather a large array of specific facts or techniques. This approach is especially important in light of the wide breadth of material relevant to engineering CPS and the emerging and fast-paced nature of
the field. With the right foundations, students will be positioned to learn about new developments on the job.
Because engineering courses and curricula are already packed, it is not viable to simply add more material to span the physical and cyber dimensions—and certainly not to double the amount of material. Nor can all relevant topics fit into the CPS core curriculum or these principles and foundations. For example, bio-memetics, an approach that is useful in areas such as robotics, is not included. (Robotics is instead treated as an elective course in the representative curricula in Boxes 3.4 through 3.7.)
The core principle of CPS is the bridging of engineering and physical world applications and the computer engineering hardware and computer science cyber worlds. Basic principles of the physical world include elements of physics, modeling, and real-world intangibles such as uncertainty and risk. Concurrently, the principles of computer engineering and computer science worlds deal with embedded systems, networking, programming, and algorithms. CPS education thus goes beyond exposure to the traditional dynamical systems models (ordinary differential or difference equations) to an understanding of physical impacts not only at the physical layer, but also across the physical-cyber interface.
Sensors are an example of a hardware bridge between the physical and cyber worlds. They are the primary devices that collect data from the physical world that are then used as input to the cyber world. Understanding the properties and principles of sensors and how to use them in a manner that is aware of sensor and real-world constraints is critical. Unfortunately, high-level abstractions used to simplify system development often have the undesirable side effect of hiding key physical world principles that programmers need to know if the CPS they develop are to work properly. Once raw data are collected, they are processed via signal processing techniques. The required principles of signal processing include linear signals and systems theory, analog and digital filtering, time and frequency domain analysis, convolution, linear transforms like the discrete Fourier transform and fast Fourier transform, noise and statistical characterization of signals, machine learning, and decision and sensor fusion. In CPS, considerations of the implementations of these signal processing techniques on embedded CPUs, running in real time and with safety critical implications, are necessary, as is the topic of sensor reliability. Often these issues are not considered in classical signal processing courses.
Control is a central tenet of CPS. Relevant elements of control theory include stability and optimization as well as control techniques in the
context of networks, hybrid systems, stochastic systems, and digital systems. Of particular importance in the cyber domain are the implications for control of distributed systems and the inherent delays they impose.
In today’s networked, wireless, and real-time world, and as cyber-physical systems become embedded in our economy and society, knowledge of the principles underlying these topics is also necessary for CPS engineering. Areas where students need this knowledge include the following:
- Communication and networking. CPS requires an understanding from physical-layer principles to protocols, layered architectures, and the many real-world properties of wireless communications.
- Real time. An understanding of topics like real-time scheduling theory, temporal semantics in programs, and clock synchronization in networks is needed.
- Distributed systems. The distributed and networked nature of CPS in many of the applications of interest should be included in CPS education. Even though distributed systems and networking are covered in traditional engineering or computer science curricula, these courses often do not address CPS issues. CPS combines the hardware implementation with the software that runs the algorithms, all operating in a natural world setting.
- Embedded systems. A strong education and training on the principles of embedded software, the many principles of programming, algorithms, software design, formal methods, and platforms (architectures and operating systems) are necessary to enable the development of reliable and high-quality cyber components of a CPS system.
- Physical properties. It is important to understand and be able to model the physical properties of the environments and hardware platforms. Software design principles that address the realisms of the physical world in such a way as to satisfy safety, reliability, real-time performance, risk management, and security requirements need to be part of the curriculum.
- Human interaction. Human factors design, human-in-the-loop control, and understanding and accounting for the behavioral responses of humans are important for many CPS. One important design issue is making CPS easy for humans to operate, control, and maintain. Similar to other engineering disciplines, hands-on projects and interdisciplinary teamwork are also fundamental to understanding and seeing core principles applied.
FINDING 2.1: Core CPS knowledge involves not only an understanding of the basics of physical engineering and cyber design and
implementation, but also understanding how the physical and cyber aspects influence and affect each other.
RECOMMENDATION 2.1: Cyber-physical systems educational programs should provide a foundation that highlights the interaction of cyber and physical aspects of systems. Most current courses fail to emphasize the interaction, implying that new courses and instructional materials are needed.
Drawing on these principles, the committee identified six key overarching foundations for a CPS curriculum (Box 2.1).
- Foundation 1, basic computing concepts, is included to emphasize that the cyber expertise required cannot be achieved with only one or two programming classes; it can only be attained with solid training in computing that draws on examples and case studies from the physical domain. In particular, it is necessary to teach how the properties of the
physical world have to be addressed in the cyber world to achieve the system characteristics listed in the next subsection.
- Foundation 2, computing for the physical world, highlights the need to include properties and constraints of the physical world. Real-world complexities often give rise to situations not addressed by the software, often resulting in failures; consequently, it is necessary to have a foundation in laws of the physical world. Software designs and implementations need to take into account the resource limitations of the platforms themselves as well as conditions that the real world imposes on the platform.
- Foundation 3, discrete and continuous mathematics, highlights advanced math beyond calculus needed for CPS engineering. This reflects the fact that CPS deals with both continuous and discrete systems, and the knowledge on how to deal with that integration is critical.
- Foundation 4, cross-cutting application of sensing, actuation, control, communication, and computing encompasses knowledge of control, signal processing, and embedded software design and implementation that one would expect to permeate all aspects of the curriculum
- Foundation 5, stresses the need for modeling of heterogeneous and dynamic systems integrating control, computing, and communication with an emphasis on uncertainty and heterogeneity. Such work is especially challenging because physical and cyber modeling use different and often incompatible models. Focusing on the merging and interactions of models across the physical and cyber aspects of systems is necessary.
- Foundation 6, CPS system development identifies the requirements for a life-cycle view of developing a CPS from initial requirements to certification to deployment. Concepts that transcend the entire life cycle include safety, resilience, security, and privacy.
Building systems that operate with increased confidence in the presence of uncertainty and with acceptable levels of risk requires an understanding of how to address relevant design aspects (i.e., security, reliability, and dependability). Consider, for example, what it takes to design a city-scale autonomous transportation system that people can confidently use with minimal safety concerns. The committee also sees examples of gaps in today’s deployed systems, such as the vulnerability to cyberattacks and poor interoperability. The following attributes and the associated design approaches and mindset are best introduced early in the CPS curriculum and infused throughout in CPS coursework and projects:
- Security and privacy. All information technology-based systems are subject to cyberattacks. Many CPS are especially vulnerable either
because they are located in open environments or can be communicated with wirelessly. Ensuring that those designing such systems are familiar with security and privacy risks and techniques for protecting them will be crucial.
- Interoperability. Especially in large-scale CPS, systems will be composed of components from different vendors, and portions may be operated by different entities. Realizing the full promise of CPS will require interoperability among heterogeneous components and systems. Achieving interoperability requires knowledge of how to define and use common architectures, standardized interfaces, and data standards.
- Reliability and dependability. Many CPS will be part of our daily lives, and their utility will require high reliability and dependability. New problems arise because many CPS devices have limited computational power, memory, and energy. The best systems are those designed from the start with reliability (and safety) in mind—not as something to be fixed during testing. CPS will also need to be robust to uncertainties that may be difficult to quantify in the design phase. In order to make sure these uncertainties are addressed, they must be tracked and addressed during implementation stages.
- Power and energy management. The compact size and autonomous operation of some CPS components make energy management a critical engineering design priority.
- Safety. With the proliferation of CPS into daily lives, it becomes exceedingly important to ensure that actions taken on humans and the environment are safe and that the risks associated with these actions can be assessed and managed.
- Stability and performance. The stability of CPS, which are dynamic and stochastic systems, involves such factors as the linearity or nonlinearity of the system, the bandwidth of the systems, sampling rate, the poles and zeroes of the system, the modeling of the noise and uncertainty affecting the system, and limitations of sensors and actuators such as noise corruption or saturation.
- Human factors and usability. Human factors design, human-in-the-loop control, and understanding and accounting for the behavioral responses of humans are all important for many CPS applications. For instance, critical CPS are used to support the health care and well-being of the elderly.
These considerations are often essential in ensuring a system will operate with increased confidence in the presence of uncertainty and with acceptable levels of risk. The importance of improving education in these areas is highlighted by the prevalence of cyberattacks against CPS, poor usability, and lack of interoperability.
Most CPS will have to be developed with these system characteristics in mind. As a result, these concepts will need to be woven throughout a state-of-the-art CPS curriculum at all levels. The challenge in building software and hardware systems that have these properties is not unknown to the computer science and engineering domains. Exploring these challenges and learning how to determine if systems have these properties are essential to deploying better CPS.
A 2004 National Academy of Engineering (NAE) report on the future of engineering highlights the implications for engineering education of the pace of change in science and engineering knowledge and the decreasing length of product cycles.
The comfortable notion that a person learns all that he or she needs to know in a four-year engineering program just is not true and never was. Not even the “fundamentals” are fixed, as new technologies enter the engineer’s toolkit. Engineers are going to have to accept responsibility for their own continual reeducation, and engineering schools are going to have to prepare engineers to do so by teaching them how to learn.1
This observation is especially apt for an emerging and rapidly changing area like CPS, and suggests that CPS courses and programs need to emphasize ongoing learning and critical thinking about technology as well as specific techniques and methods.
The NAE report also takes note of the growing scale and complexity of engineering systems, which mean that engineers are increasingly working collaboratively with experts from multiple disciplines. It describes the “soft skills” needed to work effectively in such environments:
Essential attributes for these teams include excellence in communication (with technical and public audiences), an ability to communicate using technology, and an understanding of the complexities associated with a global market and social context. Flexibility, receptiveness to change, and mutual respect are essential as well. For example, it already is found that engineers may come together in teams based on individual areas of expertise and disperse once a challenge has been addressed, only to regroup again differently to respond to a new challenge.2
The need for such skills is especially acute for CPS, where the engi-
1 National Academy of Engineering, 2004, The Engineer of 2020: Visions of Engineering in the New Century, The National Academies Press, Washington, D.C., p. 24.
2 Ibid., pp. 34-35.
neering work is inherently interdisciplinary. There are many opportunities to teach students about effective teamwork, especially in project activities culminating in a capstone project course.
Another trend in engineering education relevant to CPS is the integration of entrepreneurship. A 2013 article by Byers et al. observed that
. . . It is no longer enough to come out of school with a purely technical education; engineers need to be entrepreneurial in order to understand and contribute in the context of market and business pressures. For engineers who start companies soon after graduation, entrepreneurship education gives them solid experience in product design and development, prototyping, technology trends, and market analysis. These skills are just as relevant for success in established enterprises as they are in startups; students with entrepreneurial training who join established firms are better prepared to become effective team members and managers and can better support their employers as innovators.3
Indeed, several speakers at the workshops organized for this study observed that engineering students increasingly wish to be entrepreneurial. Given the potential economic impact of CPS, related areas, and their applications, there is likely to be growing demand for integrating entrepreneurship into CPS engineering education. Entrepreneurship would naturally fit into capstone or other project-based courses.
3 T. Byers, T. Seelig, S. Sheppard, and P. Weilerstein, 2013, Entrepreneurship: Its role in engineering education, The Bridge 43(2):35-40.