Evolution of cyber-physical systems (CPS) and extension of their application areas complicate, among other things, their software design and development. This requires improvements in programming techniques used to build CPS. One of the important tasks arising in complex CPS is a situation assessment (SA) based on data received from diverse sources. In the chapter, an ontology-driven approach for CPS SA software design and development automation is proposed. The approach is based on the JDL data fusion model and flexible enough to be applied for any class of CPS applications. In contrast to known approaches, ontologies are used not only for domain knowledge representation but also for SA calculation process formalization. It provides a higher level of automation of SA software synthesis and, in the end, increases design and development efficiency.
TopIntroduction
The integration of information processing capabilities and network communications of various devices has been actively developed in recent years within the framework of the concepts of “Cyber-Physical Systems” (CPS) and “Internet of Things” (IoT). Examples of such systems vary in a very wide range – from intelligent vehicles to advanced manufacturing systems, in such diverse sectors as energy, agriculture, smart cities, public security and others (Greer, Burns, Wollman, & Griffor, 2019; Yang, Yang, & Plotnick, 2013)
According to ITU-T Y.2060 recommendation IoT architecture includes four levels (Guth et al., 2018):
In recent years, a considerable progress has been made in the realm of development of wireless access technologies for sensor networks and IoT networks (LoRa, Wi-Fi HaLoW, ZigBee, Sigfox, and etc) (Fujino, Ogawa, & Minowa, 2016; Kocakulak & Butun, 2017; Lazarescu, 2017; Lea, 2018).
Nowadays the creation of technologies that helps to increase the efficiency of CPS/IoT design processes at the Application Layer becomes relevant.
As CPS/IoT complexity is increasing, the number of sensor nodes is growing and the volume of data from these nodes is going up, the Application Layer task of situation assessment (SA) is becoming increasingly important. Within different domains (e.g. mass event security) SA exploiting perceived data is used to support decision-making processes. In this context, a consideration of CPS/IoT from the position of People in the Loop (Petrov et al., 2018) concept becomes crucial.
The key features of the current stage of CPS/IoT development are the transition to the mass practical use of such systems and their complications both in quantitative (increasing the number of interacting nodes) and in qualitative (complicating data processing algorithms) terms. Given these trends, a lot of attention has recently been paid to the development of platforms for CPS/IoT (Guth et al., 2018; Meiling, Purnomo, Shiraishi, Fischer, & Schmid, 2018).
An important intelligent function of CPS/IoT systems is data fusion from many sources including real-time situation assessment (SA). As systems become more and more complex the value of this function increases significantly. Given this, an urgent task at present is to create platform solutions that allow situation assessment software to be effectively implemented for a wide range of applications.
The article discusses the approach, formal models and methods for automating processes of designing and developing software for SA systems (SAS) using ontologies. Ontologies provide the ability to flexibly and quickly focus on the domain of a specific application. The approach allows reducing the time needed for designing and developing SAS software. The software framework to solve this problem is considered. An example of building a situation assessment system for CPS to ensure the security of public events is considered to illustrate the proposed approach.
TopBackground
In recent years, CPSs have been rapidly evolving and have been found to have extensive use in widespread application areas (Greer et al., 2019). Therefore significant attention has been put on CPS platforms allowing replication of single applications and effective implementation of concrete applied CPS (Guth et al., 2018).
There are a wide number of questions that are discussed within the context of CPS platform development. In (Theodoropoulos et al., 2017) issues on building scalable software and hardware solutions for CPS supporting parallel programming are discussed. In (Sun, Yang, & Zhou, 2017) classification of CPS platforms into three categories based on the software architecture is suggested: based on components, based on services, and based on agents. For each category, several design approaches, key challenges, and solutions are considered.