Computing systems are more and more pervasive and embedded in almost all objects in current life. These systems bring intelligence everywhere and are usually referred to as Cyber-Physical Systems (CPS).
There are various descriptions of CPS around; a very usable description is: “Cyber-Physical Systems are integrations of computation with physical processes; embedded computers and networks monitor and control the physical processes, usually with feedback loops where physical processes affect computations and vice versa (Lee 2008).”
For a part CPS will evolve towards Autonomous Cyber-Physical Systems. From a functional perspective, their role in complex systems is becoming increasingly dominant (in cars, trains, airplanes, health equipment, etc.) because of the new functionalities they provide (including safety, security, autonomy). They are also required for the interconnection and interoperability of systems of systems (smart cities, air traffic management, etc.). Because of their close integration with the physical world, the systems have to take into account the dynamic and evolving aspect of their environment, to provide altogether deterministic, high-performance and low-power computing as well as efficient processing of deep-learning algorithms.
Increasingly, software applications will run as services on distributed system-of-systems involving heterogeneous devices (servers, edge devices, etc.) and networks with a diversity of resource restrictions. In addition, CPS need the capability to evolve and adapt during run-time, e.g., by updates in the field and/or by learning. Building these systems and guaranteeing their safety, security and certification, requires innovative technologies in the areas of modelling, software engineering, model-based design, verification and validation (V&V) technologies, and virtual engineering for high-quality, certifiable CPS that can be produced (cost-)effectively.
CPS are becoming increasingly networked with each other as well as with ‘cloud-based’ services. This forms tightly interacting Systems of Systems (SoS) and creates machine-to-machine interactions without any human intervention in the control loop. Autonomous SoS engineering is an attractive approach resulting in reduced costs by moving effort from engineers to machines. This will move engineering effort to the handling of SoS functionality and security complexity. Moreover, there is typically no single ‘system integrator’, but networked SoS are formed in a dynamic and ad-hoc manner. These include constituent sub-systems that evolve and are updated at different intervals and times with possibly unforeseen emerging behavior. This requires completely new methods and techniques, such as scenario and model-based safety analysis, online safety assessment, re-certification, architectural support not only for the functionality but also for verification, and validation.
Cybersecurity functionality and management will ensure the safety and security of people and goods in each application. As IoT and Systems of systems include higher levels of distribution and therefore increased communication, the demands on (cyber)-security increase as well. This technology domain covers security and life cycle trustworthiness for devices with AI and communication capabilities. Safety is also covered in case safety functions are realised via connected devices. This includes IoT nodes like networked sensors and actuators, fixed and wireless networks as well as centralized (cloud computing systems) and non-centralized (fog and edge computing) processing elements. It also covers security for communication protocols on different layers. The ambition is to facilitate the worldwide uptake of “European Technology” and infrastructure with the goal to earn international reputation for secure, safe and trustable networking elements, in particular for industrial applications.
Note that the “Things” in the Internet of Things are Cyber-Physical Systems, but not every Cyber-Physical System is a “Thing” in the Internet of Things.
Moving more computing, analytical capabilities and functionalities on edge represent a valid answer to the performance and security constraints, bandwidth/storage costs and latency requirements that are emerging from the IoT and SoS applications. Computing in the cloud is a consolidated way to find more long-term trends, plan strategies and manage operations at enterprise level, while edge computing allows in near real time to control data at the edge and solve problems at the source, with a security and service improvements, and a consistent costs reduction. No vendor has a complete end-to-end solution, but a good balance between cloud and edge computing can simplify the creation of an IoT ecosystem and the related value networks.
The shift towards the edge is supported by the increased autonomy of CPS (autonomous cars, robots, home automation, etc.), which implies complex decision-making based on AI combined with strict timing constraints as well as reliability, safety and security constraints. Developing solutions for AI at the edge (e.g. for self-driving vehicle, personal assistants and robots) is in line with European requirements/regulations (privacy, safety) and knowhow (embedded systems). Solution at the extreme edge (small sensors etc.) will require even more efficient computing systems, because of their low cost and ultra-low power requirements.
The challenges of transforming current centralised software to the projected computing and connectivity future shall not be underestimated. Thus, Europe has to transform the basis of our current leading position using legacy technologies to highly distributed, edge and heterogenous embedded computing.
The distribution of computing to the edge and heterogenous embedded hardware will require widespread usage of new software paradigms like Service Oriented Architecture and software agent technologies, adaptation of cloud software technologies to the edge and embedded platforms and new embedded software technologies suitable for real time distributed AI and analytics. The new tools should support a continuum of computing between edge and the cloud, where data is processed where it is more efficient. In addition, new and highly efficient engineering tools and tool-chains are necessary to meet the projected market demands at System of Systems solutions.
European companies are in the leading pack for embedded microcontrollers. Automotive, IoT and all embedded systems consume a large number of low-cost microcontrollers, integrating a complete system, computing, memory and various peripherals in a single die. Innovation is necessary to cope with the new applications and constraints for Edge computing, especially when embedded AI is required. All the new applications require more processing power, available only with more efficient and powerful processors and microcontrollers.
The shift to the edge of computing intensive software, analytics and decision making requires bringing data center capabilities and performance to field-deployable applications. In the IoT/SoS infrastructure some of the CPS have to provide supercomputing performances in a reduced space, weight and power consumption, ensuring at the same time, an adequate level of robustness and reliability.
Similar computing requirements will be increasingly relevant also for embedded applications in new demanding areas such as autonomous driving cars or, more in general, for a large class of autonomous systems (such as automotive, train, aircraft) based on embedded vision, complex decision making and sensor data processing (Radar, Lidar, Positioning, etc.) that require a computing power available only with classical high performance computing (HPC) systems, typically installed in large dedicated rooms with a controlled environment, and offering an energy consumption and robustness/reliability profile that does not satisfy the requirements of a field-deployable application.
Computing and AI at the edge will be constrained from energy supply. Thus new energy efficient hardware paradigms like neuromorphic computing architectures and hardware become important. Energy reduction of 2-3 order of magnitude are widely published. However, software for neuromorphic architectures and hardware is a rather unexplored domain. Thus, it becomes both an opportunity and a threat to European industry. To exploit combined digital and neuromorphic computing hardware, radically new approaches to software and software development are needed. A strong commitment in this direction will further strengthen application areas currently dominated by Europe.
Integration (technical) platforms for digitalization are essential to build strong eco-systems for accelerating the innovation and the creation of new business models. SoS require secure and efficient integration platforms that are capable of orchestrating and managing the complexity and heterogeneity of the SoS throughout its entire lifecycle.
From a digital perspective, SoS can be compared to our nervous system, that is partially centralized and partially distributed: SoS are similarly partially centralized in the cloud and partially distributed in the various entities composing the SoS infrastructure, including the edge. A SoS platform is the software entity of the SoS that enables full monitoring and control of its parts, manages product/service production, their operation with real time business models including action and monetisation transaction over the full product/service life-cycle., This will require trust at both device and ecosystem level.
New and emerging embedded and SoS software technologies will require new approaches to it’s engineering. Low level functionality and interoperability will move to autonomous engineering. Thus releasing human engineering resources to more advance SoS engineering related to value network functionality, security, safety, evolution, maintenance etc.
Therefore, software engineering processes are of increasing importance and needs to be adapted to the specific requirements of SoS based CPS’s. Further complexity will be imposed by the introduction of AI, M2M business and monetisation at the edge. Here SoS Engineering processes (methods & tools, quality assurance, testing, validation & verification techniques and methods on all levels of individual IoT and in the SoS domain) solely depends on software technologies and on software engineering tools.