**Preface to "Challenges and Directions Forward for Dealing with the Complexity of Future Smart Cyber-Physical Systems"**

This book represents a collection of papers stemming from the Special Issue on "Challenges and Directions Forward for Dealing with the Complexity of Future Smart Cyber-Physical Systems" of *Designs*, closed in 2018.

**We would like to dedicate this book to our colleague Harold "Bud" Lawson, one of the co-editors of the Special Issue**. He sadly passed away in 2019. Bud Lawson spent a large portion of his life in combatting complexity, all the way from computer engineering and real-time systems to systems engineering (see https://en.wikipedia.org/wiki/Harold Lawson).

A key aspect of cyber-physical systems (CPS) is their potential for integrating information technologies with embedded control systems and physical systems to form new or improved functionalities. CPS thus draws upon advances in many areas. This positioning provides unprecedented opportunities for innovation, both within and across existing domains. However, at the same time, it is commonly understood that we are already stretching the limits of existing methodologies. In embarking towards CPS with such unprecedented capabilities it becomes essential to improve our understanding of CPS complexity and how we can deal with it. Complexity has many facets, including complexity of the CPS itself, of the environments in which the CPS acts, and in terms of the organizations and supporting tools that develop, operate, and maintain CPS.

This book is a result of the abovementioned journal Special Issue, with the objective of providing a forum for researchers and practitioners to exchange their latest achievements and to identify critical issues, challenges, opportunities, and future directions for how to deal with the complexity of future CPS. The contributions include 10 papers on the following topics: (I) Systems and Societal Aspects Related to CPS and Their Complexity; (II) Model-Based Development Methods for CPS; (III) CPS Resource Management and Evolving Computing Platforms; and (IV) Architectures for CPS.

Of course, many of these topics are not independent, but the above structure provides a high-level overview of the included topics and may act as a guide to readers in finding topics of their interest. A brief introduction to the 10 papers is now provided.

#### **(I) Systems and Societal Aspects Related to CPS and Their Complexity**

The first three papers in the book serve as a useful introduction by setting the scene with helicopter perspectives to complexity and "smartness" aspects of CPS.

The paper "How to Deal with the Complexity of Future Cyber-Physical Systems?" introduces a number of perspectives to complexity, including general notions as well as those specific to CPS. The paper further provides an analysis of limitations of existing methodologies for dealing with the complexity of CPS and discusses what is needed in order to address those limitations.

The second paper "Sharpening the Scythe of Technological Change: Socio-Technical Challenges of Autonomous and Adaptive Cyber-Physical Systems" relates to the first paper, and specifically treats safety challenges of future CPS considering the increasing use of artificial intelligence (AI) and machine learning (ML) as part of CPS. In addition, the paper also emphasizes the need to incorporate socio-technical aspects, including trustworthiness, responsibility, liability, as well as the ability to learn from past events.

The third paper, "A Computational Framework for Procedural Abduction Done by Smart

Cyber-Physical Systems", treats "smartness" of CPS in terms of reasoning and decision-making mechanisms within a CPS. In particular, procedural abduction as a knowledge-based computation and learning mechanism is investigated, and a computational framework is proposed as an extension and more detailed elaboration of patterns such as "monitor, analyze, plan, execute".

#### **(II) Model-Based Development Methods for CPS**

Papers 4 and 5 treat model-based development CPS as one approach to managing complexity.

Paper 4, "Testing of Complex Embedded Systems Using EAST-ADL and Energy-Aware Mutations" addresses testing in the context of embedded systems architecting with considerations of low-energy computing. The paper highlights the limits of traditional testing methods for future CPS, and advocates using early testing with architectural models, shifting some testing efforts to system models. The paper proposes a method based on fault-based testing to derive tests and executes automated tests leveraging mutation testing, statistical model-checking, and architectural models.

Paper 5, "A Full Model-Based Design Environment for the Development of Cyber-Physical Systems", addresses model-based development of CPS with emphasis on development of the application of the CPS targeting synthesis of logic controllers, i.e., the "cyber" side of a CPS. The paper describes a modeling language and a tool, and describes experiences in its design, including trade-offs, drawing upon developments of production grade systems.

#### **(III) CPS Resource Management and Evolving Computing Platforms**

Papers 6 through 9 address resource management and evolving computing platforms in the context of CPS. Paper 6, "A Lazy Bailout Approach for Dual-Criticality Systems on Uniprocessor Platforms", treats resource management and, in particular, scheduling of activities of different criticalities as part of a CPS. A mixed-criticality scheduling method is proposed along with a quality criterion for comparing mixed-criticality scheduling approaches.

Paper 7, "Fighting CPS Complexity by Component-Based Software Development of Multi-Mode Systems", addresses resource management and modeling abstractions to deal with the growing software complexity of CPS. The proposed approach combines two "partitioning approaches", dividing a system into operational modes specified at design time (switching between modes at run-time) with component-based software engineering (integration of independently developed software components). The approach addresses the reconciliation between these two partitioning strategies by introducing a hierarchical mode concept, mode mapping, and mode transformation approaches to link the bottom-up component-based approach and system-level modes.

Paper 8, on "Adaptive Time-Triggered Multi-Core Architecture", addresses time-triggered resource management for multi-core platforms, with the goal of reconciling the benefits of static resource allocation for safety critical CPS with adaptation as a key factor to deal with energy efficiency and fault recovery. Adaptive time-triggered multi-core architecture is introduced, featuring adaptation using multi-schedule graphs while preserving the key properties of time-triggered systems. The architecture is based on a network-on-a-chip with building blocks for context agreement and adaptation. An evaluation is presented using scenarios employing adaptation for improved energy efficiency.

Paper 9, "A Two-Layer Component-Based Allocation for Embedded Systems with GPUs", investigates software component design for embedded systems composed of CPU and GPUs, addressing the increasing heterogeneity—and thereby complexity—of CPS platforms. The paper proposes and evaluates and approach using a two-layer component-based architecture in order to reduce the complexity of component allocation.

#### **(V) Architectures for CPS**

Many of the above described papers address, in various ways, architectures or the architecting of CPS. Paper 10, "Developing Self-Similar Hybrid Control Architecture Based on SGAM-Based Methodology for Distributed Microgrids", explicitly addresses architectures for future CPS in the context of microgrids as a CPS domain with specific relevance to sustainable energy. As a basis for the design of the specific distributed software architecture, the characteristics of microgrids are analyzed and the requirements derived, including interoperability (for heterogenous devices and multiple communication protocols), modularity, and scalability to support various functionalities such as island mode operations, energy efficient operations, energy trading, and predictive maintenance. The architecture, which features distributed decision-making, plug-and-play capabilities, and self-similarity of software components, has been applied to a real system of residential buildings, and implementation and deployment details are discussed.

#### **Martin Torngren, ¨ Didem Gurd ¨ ur¨ Broo, Elena Fersman, Harold (Bud) Lawson, Vincent Aravantinos** *Editors*
