Abstract—It’s expected that the cyber-physical systems revolution will be more transformative than the IT revolution of the past four decades.
Keywords—Computing: The Next 50 Years; CPS; cyber-physical systems; software; intelligent assistants; human in the loop; intelligent systems
Cyber-physical systems (CPS) are orchestrations of computers, machines, and people working together to achieve goals using computation, communications, and control (CCC) technologies. Although the term CPS was coined only in 2006 by Helen Gill of the National Science Foundation (NSF), the CCC core technologies of CPS have had a rich and long history. Major milestones for CPS include control theory in 1868, wireless telegraphy in 1903, cybernetics feedback in 1948, embedded systems in 1961, software engineering in 1968, and ubiquitous computing in 1988. CPSs have risen from the field of embedded systems to the realm of digital ecosystems and are becoming increasingly intelligent as a result of analytics and machine-learning capabilities being readily available in the cloud and accessible over networks. The advances in the interconnected capabilities of CPSs affect virtually every engineered system and will enable adaptability, scalability, resiliency, safety, security, and usability in future CPSs that will far exceed the systems of today.
Over the past two decades, the number of cyber components has grown gradually to the point where CPSs are now software-intensive systems with more and more integrated computing hardware and computational algorithms. In today’s CPS, software dominates all aspects of connecting the physical and cyber worlds by orchestrating the CCC technologies in CPS applications. Consequently, the engineering of high-confidence CPSs has also evolved. The resulting process is neither an extension of traditional engineering nor a straightforward application of software engineering,1 but rather a new systems engineering science. Granting agencies around the world have recognized this problem and initiated large research programs to investigate CPS foundations. A key goal of the NSF CPS research program is to develop the core systems science needed to engineer complex CPSs. The idea is to abstract from specific systems and application domains to reveal fundamental CPS engineering principles.
Over the years, engineers have been highly successful in developing models for specific control system applications. Integrating discrete, continuous, and adaptive control as well as deterministic and nondeterministic models are fundamental challenges in dealing with uncertainty in modern CPSs. Developing models and modeling frameworks for CPS has become a mature research field.2–4 The software engineering community has made tremendous strides in designing and operating highly dynamical software systems by developing methods and techniques to standardize and distribute CPS components and services effectively through autonomic computing5 (for example, the Monitor-Analyze-Plan-Execute loop operating on a shared Knowledge [MAPE-K] base), to control feedback in computing systems,6 to deal with inherent uncertainty in CPS through models at runtime, and to adapt and then validate CPS at runtime. Several research communities have emerged to deal with software engineering aspects of CPS, including CPS conferences and workshops (such as CPS Week), software engineering for adaptive and self-managing systems (SEAMS),7Models@run.time,8,9 as well as runtime validation, verification, and certification techniques.10
For the past decade, think tanks and granting agencies (such as NSF, NIST, the National Institutes of Health [NIH], EU Horizon 2020, and Europe 2020) have articulated their vision on the future of CPS applications. Their tenor is similar: the expectation is that the CPS revolution will be more transformative than the IT revolution of the past four decades.11,12
Why is this CPS revolution happening now? The primary reason is the recent confluence of technologies, including adaptive systems and runtime models, an increasingly instrumented world due to pervasive sensing and actuating capabilities, advanced real-time and networked control, analytical and cognitive capabilities, and compute and storage clouds. With the advent of cognitive intelligent assistants readily available on personal devices, human-in-the-loop CPSs are proliferating in our lives.13,14 In other words, CPS is at the center of a perfect technology storm. Countries around the world are investing heavily in CPS research programs, seeking a technological and economic edge.1CPS is at the center of a perfect technology storm.
There are several terms and fields closely related and competing with the notion of CPS, including embedded systems, the Internet of Things (IoT), the Industrial Internet (II), the Internet of Everything (IoE), machine-to-machine (M2M), Industry 4.0, Smarter Planet, cyber-physical-human systems (CPHS), smart and intelligent systems, and adaptive systems. While all these fields have their own publications and communities, UC Berkeley professor Edward A. Lee argues convincingly that the CPS term is more foundational and encompassing than these related terms, because the term embodies the fundamental engineering problem of integrating the cyber and physical worlds.2
There are many challenges that must be addressed to be able to harvest CPS’s rich economic opportunities. As Sir Francis Bacon said, “If we are to achieve results never before accomplished, we must expect to employ methods never before attempted.”
First and foremost, creating and maintaining a skilled workforce to support the design, engineering, deployment, and operation of future CPS is a significant challenge for industry, academia, and governments. CPS engineers, scientists, and developers need not only strong backgrounds in CCC, but also significant knowledge in relevant application domains. Existing engineering and computer science programs are challenged in teaching the comprehensive skills required for a successful career in the CPS realm. Urgently, computer science and software engineering programs need to require control engineering courses, and traditional engineering programs need to include advanced software engineering courses.
CPS technologies are becoming the key enablers for building smarter infrastructures for industrial applications. Growing human populations consume enormous natural resources and require increasingly instrumented and optimized food supply chains. Flourishing cities require renewable energy systems and instrumented transportation infrastructure. Connected and autonomous vehicles combine situational awareness in vehicles with the networked infrastructure of the modern city. Rising costs put pressure on healthcare and elder care, requiring outcome prediction based on improved diagnostics using smart medical devices. Assistive healthcare systems—including wearable sensors, implantable devices, and home monitoring systems—are being developed to improve outcomes and quality of life. Thus, the technologies and applications emerging from combining the cyber and physical worlds will provide an innovation and incubation engine for a broad range of industries—creating entirely new markets and platforms for years to come. Our modern societies and economies increasingly depend on integrated, software-intensive CPS.