Ontology-driven approach for describing industrial socio-cyber-physical systems’ components

. Nowadays, the concept of the industrial Internet of things is considered by researchers as the basis of Industry 4.0. Its use is aimed at creating a single information space that allows to unite all the components of production, starting from the processed raw materials to the interaction with suppliers and users of completed goods. Such a union will allow to change the established business processes of production to increase the customization of end products for the consumer and to reduce the costs for its producers. Each of the components is described using a digital twin, showing their main characteristics, important for production. The heterogeneity of these characteristics for each of the production levels makes it very difficult to exchange information between them. To solve the problem of interaction between individual components this paper proposes to use the ontological approach to model the components of industrial socio-cyberphysical systems. The paper considers four scenarios of interaction in the industrial Internet of things, based on which the upper-level ontology is formed, which describes the main components of industrial socio-cyberphysical systems and the connections between them.


Introduction
The industrial Internet of things can be seen as a refinement of the concept of the Internet of things for the tasks of the industrial sector. It integrates industrial means of production into socio cyber-physical systems, including a description of business processes and people operating or using these processes and systems. This integration provides for the creation of a single information space in which an exchange takes place between the components of production and customers, which allows changing existing business processes in the direction of increasing the speed and quality of goods manufacturing, as well as increasing customization according to the customer's wishes [1].
The basis of the industrial Internet of things are smart "objects" -machines, people, processed materials and manufactured goods. In the production process, machines and people are able to analyze the current situation and make decisions based on available information about the status of production and the production facility [2,3]. Interaction of objects occurs due to the development of software agents -digital twins, displaying properties of objects and information exchange with each other in the common information space, thus forming a smart factory. Unlike a conventional automated factory, a smart factory is characterized by the complete connection of all elements of production, which makes it possible to create a flexible system that can independently optimize productivity, adapt to new conditions and be trained in real or near-real time, and autonomously execute the production process [4].
In the production process, one or several smart factories can be involved. In the latter case, a network of smart factories is kept in mind that can adapt to complex production conditions, including the production of individual parts of the product, logistics and assembling in the assembly department [4].
Inside one smart factory as well as when they are combined, there is interaction of a large number of heterogeneous devices, as well as people, which requires interoperation and trust between all of them. Considering every element of the smart factory from the machine to the whole factory can be represented by its own software agent, their integration can be viewed as a multi-agent system in which each agent has certain characteristics, competencies and requirements. In multi-agent industrial systems, interoperability is most often provided by using ontologies [5,6].
Ensuring trust and tracking the production process is relevant mainly for the case of combining several smart factories into a single production system. In this case, in the interaction between them, it is necessary to ensure the transparency of the ongoing transactions related to the production, supplying, reception and processing of products. Currently, a promising way to meet these requirements is the distributed decentralized registry technology or blockchain. With this technology, it is possible to organize decentralized distributed immutable storage, in which each record, called a block, will be linked to neighboring ones by computing complex hash functions, the arguments of which are transactions in the blockchain network and neighboring blocks [7]. This paper describes the ontologies used to provide interoperability of elements in smart factories, as well as the place of blockchain transactions in this ontology. The paper is structured as follows. Section 2 describes the application of ontologies in production processes. The main scenarios and ways of using ontologies in them are outlined. Section 3 provides an upper level ontology, combining the presented ontologies into one common. In conclusion, conclusions about the work done and plans for future work are determined.

Application of ontologies in the modern manufactory
One of the main trends of the modern manufactory are globalization and flexibility [8,10]. Problems that arise in this case are ensuring interoperability between heterogeneous components of factories, both local (within the same factory) and distributed (distributed production); the consolidation of information from a variety of heterogeneous sources in order to obtain a new value; and the adaptation of production to rapidly changing customer requirements and production capabilities. The application of ontologies can contribute to the solution of these problems [9].
Analysis of publications and projects devoted to the fourth industrial revolution, the automation of production and the application of modern technologies in production makes it possible to single out the following main approaches/scenarios which can be implemented with the help of ontologies.

The application of the multi-agent system concept in smart factories
The concept of multi-agent system involves the creation of software agents for production components (production machines, schedulers, process analysers) interacting with each other in a common environment to coordinate actions and share information [11,12]. For agents' interaction a common language is needed, which can be an ontology. The interaction environment can be a common smart space in which agents can publish their knowledge and query knowledge of others. The application of this concept allows providing modularity and simplifying the implementation of changes in production processes, thus providing the necessary flexibility.
Examples of the multi-agent system concept application in production are presented in many papers, including [13-15].

Collecting and analyzing of information about the products usage
One aspect of the Industry 4.0 concept is the closer integration of consumers with manufacturers and the receipt of a feedback about the products usage and state. Through the analysis of this information, manufacturers can improve the quality of their future products, as well as support users: Paper [16] describes a scenario for collecting information on the use of the production equipment by its supplier in order to predict possible malfunctions and suggest repair/replacement services. This approach can reduce/prevent possible downtime. Service providers can also be third-party organizations.
Paper [14] describes solution for industrial IoT to enable pervasive monitoring of industrial machinery and products to provide predictive maintenance applications.
Thus, the problem of storage of information about the products state and functioning appears. Products can be divided into classes that have common and individual indicators. In addition, products can consist of parts supplied by different organizations (after assembling the final product, or as a result of the replacement during repair), and the indicators of interest can be considered for both the individual component and the whole product on the basis of the whole information. All this makes it expedient to use ontologies.

Collecting and provisioning of complete products information about supply chain to stakeholders
The availability of complete products information about supply chain (about materials used during production, its components, production methods, storage and transportation methods and etc.) can increase the confidence of the supply chain participants in a current state and location of their assets (for example, for long-distance deliveries), allowing early detection of errors and frauds. And for consumers to guarantee the quality of supplied products, for example, to confirm the license (that the product has not been forged, stolen and delivered illegally) or, in the event of a poor quality of materials/defects in the components/malfunction of production machines, to track which products were affected and where their current position.
This approach has become particularly relevant with the development of the blockchain technology [17], which allows to build a common decentralized information space of independent participants without a single point of trust and failure. Ontology in this case is necessary for presentation of comprehensive product related information.
The advantages of the increased transparency and awareness in supply chains are described in many works, including [18][19][20]. In [18], an overview of projects successfully using the blockchain technology for supply chains support is given, including tracking of fish in Indonesia to counter illegal activities; tracking the supply of products to counter the supply of low-quality products; tracking supplies by Walmart, etc.

The automation of enterprises interaction for participating in a single production and dynamic supply chain processes
Services provided by enterprises (supply of materials, production, transportation of goods, etc.) can be presented as web services with program interfaces for orders formation. This can increase the automation of interaction and, even, allow the automatic search and use of services. This becomes especially relevant in the context of availability of interchangeable service providers and a competition between them. In turn, for service providers, closer cooperation between industries can increase the efficiency of production resources and capacities utilization. Especially if production systems are flexibly configurable and can be used to produce a large class of products (like additive manufacturing).
The description of such services should include a service type, conditions of provisioning, an access interface (for example, REST or WSDL), as well as allow automatic searching and reasoning, which justifies the use of ontologies.
Services themselves can be implemented as REST, WSDL or other types of web services, but for their automatic search, a common registry containing the up to date information updated by the providers themselves is required. Such registry can be a common decentralized smart space, created, for example, based on the blockchain technology.
The automation of service search and execution of transactions between participants in supply chains is mentioned in a number of works, including [21][22][23].
In paper [21], the scenario of the automatic electricity supplier selection and purchase of the required amount of energy by a factory is described. The main criterion of choice is the current price. As a platform for transactions accounting a blockchain is used.
Paper [22] proposes the so-called Production as a Service framework for provision of production capabilities as services designed to help manufacturers use underutilized resources. Some of the shortcomings of the proposed solution are the low flexibility in description of orders and production capabilities, as well as the orientation towards manufacturing services, while supply chain services can include transportation, storage, etc.
In paper [23], the development of service-oriented manufacturing is also predicted, and a possible basic architecture of the solution is described.

Basic ontologies for solving of described tasks of modern industry
Scenarios in the solution of which ontologies can be applied are described above. This section presents specific ontologies that can be used as a base for developing final solutions.
The ontology required for the scenario 2.1 (the application of the multi-agent system concept in smart factories) should describe raw materials, manufactured products and components, production machines and their functionality.
The ontology required for the scenario 2.2 (collecting and analysing of information about the products usage)should describe products and components, their state and functioning indicators.
The ontology required for the scenario 2.3 (collecting and provisioning of complete products information about supply chain to stakeholders) should also describe products and components, as well as an information on operations performed at different stages of the life cycle (for production, transportation, storage and etc.).
The ontology required for the scenario 2.4 (the automation of interaction of enterprises participating in a single production process, and the formation of dynamic supply chains) should describe services, particularly services itself (raw materials supply, food production, storage, transportation, etc.), terms of their provision (cost, geographic location, etc.) and interfaces for automatic requesting.
Thus, the required ontologies can be broken into: -Products and materials. The ontology of types of products and materials; -State and functioning indicators. The ontology of products state and functioning indicators; -Structural relations. The ontology of structural relations between products and materials (structural components, used materials, etc.); -Supply chain operations. The ontology of operations that were performed with products during supply chain passage (from what materials it was produced, in what way; what machines were used in production; how it was transferred and transported; in what environmental conditions it had been stored (temperature, humidity, illumination), etc.); -Manufacturing machines and capabilities. The ontology of machines, parameters of functioning and other elements necessary for the development of multi-agent systems of smart factories; -Services. The ontology of supply chain services (product manufacturing, supply of materials, transportation, storage, etc.) with a description of program interfaces for the orders formation. Figure 1 depicts the ontologies relations. The products and materials ontology is central and is used by all other ontologies: the state and functioning indicators ontology and the structural relations ontology use it as a base; the services ontology use it for describing inputs and outputs; the manufacturing machines and capabilities ontology use it in the description of manufacturing processes; the supply chain operations ontology use it for the description of objects of operations. Also, the supply chain operations ontology uses the manufacturing machines and capabilities ontology and the services ontology for the description of subjects of operations and concretizes the structural relations ontology (it describes operations by which relations were formed). Also, some well-known standards and ontologies which can be used as parts of the described ontologies are shown in Figure 1, in particular GoodRelations [24], OWL-S [25], eCl@ss [26], eClassOWL [27], IEC 62264 [28]. In addition to the standard ontologies, there are many papers devoted to automation of production which describe their own ontologies that can be used in the development of the Manufacturing machines and capabilities, Supply chain operations and Structural relations ontologies, for instance, [8,29,30]. As the basis for the implementation of scenario presented in section (2.4) GoodRelations [24], OWL-S [25], eCl@ss [26] (eClassOWL [27]) and other public ontologies of assets (for instance, see the list from http://wiki.goodrelations-vocabulary.org/Vocabularies) can be used. The relationship of these ontologies is shown on Figure 1.
GoodRelations is an ontology for describing commercial offers, for instance, on the sale/lease of assets or the provision of services. The ontology allows you to describe information about the provider, terms of the offer (cost, quantity, available methods of delivery, payment, etc.) and assets or services. To describe specific assets or services, the ontology relies on third-party standards, for instance, eCl@ss. However, this ontology is not enough to accept offers automatically because it misses a description of the service's program interfaces, the expected sequence of calls (protocol) and possible responses.
OWL-S is an ontology for describing Semantic Web Services. Its purpose is to provide the opportunity for automatic search, call and composition of web services. The ontology consists of three main parts: a service profile for search, a process model for operations description and grounding as a connection with physical interfaces. The profile contains a description of the service provider, a description of the service as a set of functions (with preconditions, input, output and effects) and a description of the service properties (service category, rating, etc.). It is assumed that the process model contains a more detailed description of the operations than presented in the profile, but they can also coincide. However, OWL-S contains only basic structural elements and recommendations for their addition. To specify the services provided, OWL-S can be integrated with GoodRelations.
The standard eCl@ss contains a description of many classes and properties of assets and services. eClassOWL is an ontology representing the standard eCl@ss in the OWL language.
OWL-S is an ontology for describing Semantic Web Services. Its purpose is to provide the opportunity for automatic search, call and composition of web services. The ontology consists of three main parts: a service profile for search, a process model for operations description and grounding as a connection with physical interfaces. The profile contains a description of the service provider, a description of the service as a set of functions (with preconditions, input, output and effects) and a description of the service properties (service category, rating, etc.). It is assumed that the process model contains a more detailed description of the operations than presented in the Profile, but they can also coincide. However, OWL-S contains only basic structural elements and recommendations for their addition. To specify the services provided, OWL-S can be integrated with GoodRelations. The integration point can be OWL-S Process referring to GoodRelations Offering. In this case, the process itself will describe the protocol of the offer usage, additional preconditions, results and possible responses.
The standard eCl@ss contains a description of many classes and properties of assets and services. eClassOWL is an ontology representing the standard eCl@ss in the OWL language.
Let's consider the application of these ontologies in the following example. Assume that in a certain region there are number of offers for steel sheets supply. Suppliers can be enterprises specialized in the steel supply or enterprises that use steel sheets in production and have unnecessary residues that take up space in the warehouse and are desirable to be utilized in short time (especially if materials are perishable). Offers can differ in cost, available quantity and method of delivery of the material. Consuming enterprises may have software agents whose task is to search for offers of required materials, to make deals for the acquisition of materials and to add actions on the handling of supplies to the schedule. The availability of unpredicted offers, more profitable than the offers of major suppliers, can increase the profit of enterprises.
The result of the offers selection by the enterprise agent can be presented as an ontology containing a description of the selected services and their operations for selling assets with specified parameters (quantity of assets, delivery address, etc.). This ontology can then be passed as input to a software library that will perform the required invocations (for example, via the REST interface of service provider) and return the result. Due to the standardization proposed by OWL-S, this library can be used for calls of any web services by their description.
To store the ontologies of the presented scenarios 2.1-2.4, a Smart Space shared by the stakeholders is required. However, the requirements for the Smart Space are different depending on the number of stakeholders. In scenarios 2.1 and 2.2 (when analysing the indicators of products of a single supplier) there is only one organization-stakeholder. In scenarios 2.3 and 2.4 (and, in some cases, in 2.2), there may be several organizations-stakeholders. In the first case, a centralized Smart Space platform can be used (for example, Smart-M3 [31]), but in the second case, a centralized solution is undesirable due to a single point of trust and failure -all organizations-stakeholders need to rely on the Smart Space provider, and to put on con their income. The solution can be a decentralized Smart Space, for example, developed based on the blockchain platform [32]. In this case, there is no single point of trust and failure, and the failure of a participant's node can only lead to a failure of the processes in which he took an active part.

Conclusion
The article describes the use of ontologies for solving the problems of interoperability between components of the industrial Internet of things. This task arises from the presence of a large number of heterogeneous components in production. In addition, the possible consolidation of smart factories in one production also requires interoperability.
In the work, four scenarios of using ontologies in the industrial Internet of things were revealed. All scenarios are related to different aspects of the interaction between production components and the support of final products: the interaction of devices within a single factory; collecting telemetry of products usage to identify possible malfunctions; collection of the complete productions information to support supply chain participants; and automation of production and distribution in several smart factories.
The individual ontologies used for each scenario can be combined into a common upper level ontology, providing interoperability between individual components of production and creating a link between scenarios. Based on the received ontology in the future, flexible production can be created, which allows to ensure high customization of the final product. At the same time, it is proposed to provide information support for intermediate production operations and the supply chain using blockchain technology, thanks to which it is possible to create an unchangeable distributed transaction log. This log can be used to ensure the transparency of intermediate production operations.
Further work will focus on expanding the resulting ontology and providing higher integration with the blockchain technology, particularly by creating an ontology of blockchain transactions to describe the contracts that can be concluded between the individual participants of the production chain. Contracts will describe such aspects as the transfer of components of the finished goods, resources and payment for services, etc.