You are on page 1of 6

A Multi-agent System Approach for Management of

Industrial IoT Devices in Manufacturing Processes


Renato L. Cagnin, Ivan R. Guilherme, Jonas Queiroz, Bruno Paulo, Marcilio F. O. Neto
Department of Statistics, Applied Mathematics and Computing
State University of São Paulo Júlio de Mesquita Filho
Rio Claro, Brazil

Abstract— Industry 4.0 is the new industrial revolution that mainly in an Industry 4.0, applications, must provide high-
uses technologies to enable communication and interaction level information and resources to automate the execution of
between devices. In this new environment, applications are some tasks according to the users’ needs. Thus, new
designed to ensure concepts like connection, data sharing, approaches for devices management must arise in order to
accessibility and process automation. In a process automation ensure the cooperation and coordination of the connected
context, applications must coordinate and manage the execution devices during the execution of such tasks.
of different tasks performed by autonomous devices. Aiming to
support the development of such applications this paper presents The Multi-Agent System (MAS) approach provides a set
an architecture for the development of an approach based on of appropriate abstractions for dealing with the design and
Multi-agent systems (MAS), Service-Oriented Architecture and development of distributed, open, dynamic and complex
Semantic Web technologies. The architecture uses MAS heterogeneous systems, characteristics present in Industrial
organizational approach and ontologies to ensure and automate IoT environments [7]. In this approach, a set of agents are
the devices management in IoT environments. A case study in a designed as independent and autonomous components
simulated industrial environment aiming the manufacturing of responsible to manage each device, establish organizations,
metallic components is presented in order to show the proposal and cooperate during the execution of a task in order to
features and feasibility. achieve a required goal or user needs [7].
Keywords— Internet of Things, Multi-Agent Systems, Service Nonetheless, applications in an IoT environment must also
Oriented Architecture, Semantic Web Technologies. identify when, where and who are the entities which will be
committed to these tasks. These features have been achieving
I. INTRODUCTION by context-aware computing where the usage of ontologies
The Internet of Things (IoT) is a network of heterogeneous has been applied for the determination of contextual
devices communicating with each other in an open and information. In this sense, Semantic Web technologies such as
dynamic environment. Thus, allowing people to connect with ontologies have also been used to identify specific areas,
anything, anytime, anywhere and using any path, network or enabling devices to extract and process data from objects
service [1]. It means IoT promises to create a world where all deployed in the environment to a context in order to better
the things (objects and devices) in different environments are support the activities of a user and satisfy their needs [8-10].
connected to the Internet. These things will be able to interact
This work presents a proposal of an architecture that
with each other, publishing and giving access to their
integrates MAS approach and Semantic Web technologies.
resources and performing tasks autonomously, with minimal
The architecture organization and components were defined
human intervention [2]. Such characteristics make IoT a
and specified in order to be used as a reference model to
feasible approach to handle the requirements of modern
design and develop adaptive applications for the devices
applications in diverse domains, such as in industry, where its
management in IoT-based environments. The architecture was
application has been leveraged by initiatives like the Industrial
tested in a simulated industrial environment for the
Internet of Things [3]. In this context, IoT can be used in
manufacturing of metallic components. The paper is structured
scenarios of industrial manufacturing automation, logistics,
as follows: In Section II is presented the related works based
process management and many others [4]. Hence, it permits
on technologies and concepts used in IoT. Section III and IV
the appliance of some techniques to coordinate, communicate
describe the proposed architecture and the implementation
and recognize heterogeneous devices in an Industry 4.0
issues, respectively. Section V presents a case study based on
environment [5].
Industry 4.0 environment, and finally, a conclusion about the
The IoT scenarios are highly complex environments, feasibility of the proposed architecture.
primarily because they present a large heterogeneous
component (devices and systems), as well as the large amount II. RELATED WORKS
of data produced and communicated between them. It means The IoT is a research field that aims to investigate and
the applications need to integrate and publish the devices data propose solutions to address the new challenges related to the
to be widely accessed on different platforms available for connection, discovery, access, and integration of
different applications [6]. However, only integrate and provide heterogeneous devices, as well as with the retrieving, and
users with environment-measured data may not be adequate to processing of the large amount of data produced [11]. In this
support users’ needs. This means that an IoT environment, context, several approaches have been proposed to handle

l-))) 
these issues, where technologies like service-oriented Finally, the use of ontology and MAS approach ensure
architectures (SOA), semantic web and multi-agent systems, organization and cooperation between devices in IoT
showed to play an important role. applications [18]. Context described using application
ontologies can help agents to check the contextual data of a
The use of SOA approaches in IoT environments allows given action. In Industrial domains, mainly regarding the 4th
system to access and execute device’s operations. For industrial revolution, the combination of these technologies
instance, considering SOA, [4] proposes a SOA-based has been leveraged in the context of Cyber-Physical Systems
architecture, called SOCRADES Integration Architecture, [5], allowing applications to dynamically and autonomously
which manage an IoT environment as a service-oriented, execute tasks, without or with minor human intervention.
hiding the heterogeneity of hardware, software, data formats
and communication protocols. III. PROPOSED ARCHITECTURE
Ontologies have been using for knowledge representation The proposed architecture (Fig. 1) integrates the devices of
and sharing, improving system interoperability and data the IoT environment through a service middleware to MAS
integration. These features are presented in [12], where responsible for devices’ management and tasks’ planning.
ontologies describe the domain concepts such as devices, data Each architecture component is arranged in different layers,
models, events and monitoring and control tasks. Another use being responsible for a set of specific tasks.
of ontologies is the description of the application context in
order to perform the execution of most adequate services in a
given scenario. The work of [13] proposes an architecture for
manages data acquired by devices and coordinate them
according to the user environment and context rules.
Another approach used in IoT environments is the
adoption of MAS, which are a feasible solution to ensure the
execution of automated tasks. The work of [14] presents an
autonomous MAS architecture to control the communication
between devices distributed through network equipment. This
work proposes a four layer architecture: data, control,
knowledge and management. These layers are implemented
from cognitive agents whose functionalities are distributed in
various roles. These roles are organized into two groups of
agents: the cognitive agents and reactive agents. Cognitive
agents are responsible for the control, knowledge and
management layers, and for the supervision of the execution
of the tasks of the other agents. Reactive agents compose the
data layer, responsible for the operational tasks.
Fig. 1. Proposed MAS architecture overview
The usage of layers for architectural approaches increases
system decoupling of data management and activities from the A. Physical Layer
network level. In [15] are present an architecture based on
Corresponds to the physical devices connected to the
MAS paradigm is proposed presenting the separation between
network. These devices are responsible to provide the
the layers of the system agents and the layer composed of
resources and services used by the system. To ensure system
devices. These agents are able to communicate and negotiate
interoperability, SOA technologies wraps devices resources
services to achieve system objectives. The activities are
and allow publishing, subscribing and discovery features
organized according to the roles of each agent, allowing the
along the network. It means that the agents of the MAS can
system data integration actions, sensor management, data
easily and seamlessly search, discover and access them.
processing and adaptation to changes.
The layers in this architecture are connected by B. Multi-agent Layer
interoperability technologies, as shown in [16], where the This layer is organized in two sub-layers, called Reactive
authors propose a MAS approach to simulate a dynamic and and Cognitive Layers. They define a set of agents responsible
emerging infrastructure of a large number of distributed for the integration and management of the resources.
devices, enabled to provide resources in the form of Web
1) Reactive Layer
Services. Consequently, a set of agents with different
Reactive agents are responsible for the detection,
functions are responsible for handling various tasks
communication and management of physical devices. In this
throughout the system. In [17] a multi-agent approach to
layer, the agents play the following roles:
integrated Web and IoT, provides autonomous features for
IoT, enabling the management of the components. In addition, ● Searcher Agent (SA): Searches for devices. Thus when a
the multi-agent proposal on the Web, allows flexible new device is connected, the SA searches for the semantic
processing in heterogeneous platforms using Web protocols description of this device and their resources. After the
and data language with independent formats for semantic description is found, this agent initializes a
communications between agents. "Resource Agent” for handling devices resources. The


semantic description of the various types of devices is the agents, and as interfaces between the MAS and other
predefined and stored in the system Knowledge Base. layers. The artifacts encapsulate the other Java frameworks
(JMEDS and Jena) functionalities (Fig. 2).
● Resource Agent (RA): defines a set of activities for the
management of devices in accordance with its requirements
and specifications. During the execution of tasks, a RA
executes the devices’ operations according to the knowledge
described in the system Knowledge Base. Agents playing this
role should also monitor the state of the devices’ variables,
informing the agents of the Cognitive Layer possible changes
and abnormalities.
2) Cognitive layer
Responsible to perform reasoning and inferences along the
application knowledge in order to control and coordinate other
agents in the execution of the application tasks. These agents
are responsible for decision-making and plan coordination. To
perform this set of functions, this layer presents five roles
called:
● Knowledge Manager Agent (KMA): provides an access
interface to the system knowledge for the other agents. This
knowledge includes the semantic description of data models, Fig. 2. JaCaMo entities used in the architecture implementation
devices and processes and is structured according to
application ontologies. Contexts (i.e., a set of system A. Physical Layer implementation
scenarios/conditions) and tasks are also described in
ontologies and are stored in the knowledge base. The Devices and Services layer was implemented by the
● Monitor Agent (MA): coordinates the RA’s during the components of the framework JMEDS (https://sourceforge.net
execution of a task. This agent must check if the task is being /projects/ws4d-javame/). The framework JMEDS implements
executed according to the organization functional the Devices Profile for Web Services(DPWS) stack
specification. This agent is also responsible to perform the task specification for Java- based applications. The DPWS is a set
execution according to the system needs and according to the of service-based protocol which presents functionalities for
task priority specification. Similarly, when changes occur in finding, detecting and discovering devices and services [19]. It
the system context, this agent is responsible for taking the also supports Plug & Play features that allow the agents in the
necessary measures, such as abort the execution of a task. architecture to handle new connected devices.

● Organization Manager Agent (OMA): responsible for B. The Multi-agent Layer implementation
the creation of organizations composed of RA’s and MA’s to The multi-agent layer was implemented by the JaCaMo
carry out the tasks associated with the identified contexts. The framework. JaCaMo not only allows the implementation of
determination of the application context means to analyze the BDI agents [20], but also offers tools for the implementation
current resources (devices and information) and associate of organizations. In these organizations, agents play a defined
them with the tasks that can be performed. When a context is role, which is responsible for missions and goal achievements.
identified, this agent establishes a new organization formed by
The organization establishes three dimensions known as
the RA’s that are able to perform the related tasks.
structural, where the interaction between the roles and
● User Agent (UA): The agents performing this role are restrictions are specified; functional dimension states the
responsible to manage the interfaces between the users and the coordination of the tasks of each agent in the organization; and
application, e.g., towards graphical interfaces present the the normative, which links the roles to the functional tasks.
functionalities that the system can execute with all the This allows the coordination of agents’ achievements along a
connected devices. task execution. In this sense, the agents can also interact with
each other cooperating in the execution of tasks. Tasks are
IV. THE ARCHITECTURE IMPLEMENTATION described by the relationships between the structural,
The architecture implementation uses different functional and normative dimensions of the agent organization
technologies based on SOA, MAS and Semantic Web. Each according to the Organization Oriented Programming [21].
layer was implemented by a set of different frameworks. The For the structural dimension, the roles are organized into
frameworks used are the JMEDS (https://sourceforge.net/ groups according to the tasks that each one executes. The
projects/ws4d-javame/) for Devices and Services Layers, groups are called “Reactive Layer” and “Cognitive Layer”.
JaCaMo (http://jacamo.sourceforge.net/) for the Multi-Agent The agents performing the “Searcher Agent” and the
Layer and Apache Jena (https://jena.apache.org/) as an “Resource Agent” roles compose the group “Reactive Layer”.
interface for Knowledge Base. In this sense, according to The agents performing the other roles compose the “Cognitive
environment programming based on JaCaMo approach, Layer”.
functional entities called artifacts are used as support tools for


There are three abstract roles named “Cognitive Agent”, During the execution of a task the system will search for
“Reactive Agent” and “Agent”, used to represent the the related resources needed in the IoT environment. The
authority-acquaintance relationship between both groups of resources necessary to accomplish a given task is described as
agents. devices concepts such as its embedded services and
operations.
The functional dimension is represented by sets of
missions and plans, these concepts are components of the Once the task has been requested or triggered
organization schemes. These plans and missions are used by automatically by the system, it is necessary to identify the
the Organization Manager Agent and the Resource Agents roles and missions that each agent will perform. In this context
who will manage the execution of the operations of the a mission is a set of goals to be achieved by the organization's
various connected devices. The scheme can be characterized Resource Agents. In addition, the goals of each agent are
as a goal decomposition tree that describes the order and the associated with the operations of the devices connected to the
goals and subgoals, each mission must be achieved to ensure a Service Layer.
global goal.
Finally, the last set of concepts in the KB is associated to
The normative dimension relates the structural dimension generic concepts to describe when and who will perform a
with the functional dimension as the norms relates a set of certain system task. As time dependent context, a task can be
missions to a specific role. executed in a specific time instant or continually in an interval
of time. From this information, the system can tell whether
The OMA uses two artifacts called GroupBoard and the task will be performed automatically or from a user
SchemeBoard, these artifacts are part of the JaCaMo request.
framework. The first one (GroupBoard) is used by this agent
to check the organizational dimension related to the roles, and V. CASE STUDY
to check the viability for the organization to execute a global
task. The second (SchemeBoard) is used by the RA and MA in The results presented in this section stand for a simulation
the architecture to execute each task according to the missions, scenario representing an intelligent factory, which produces
norms and global plans. metallic components. The process simulated in this case study
can be divided in six stages presented in Fig. 3.
The MA uses the SchemeBoard created by the OMA agent
to ensure that the scheme is executed according to the Begin Melting Degassing
Injection of
molded metal
functional specification needs, the task control was
implemented only with the usage of the JaCaMo KQML
messages. As RAs execute a particular mission in a functional End Painting Heat treatment Structural
inspection
scheme, the MA checks the status of this mission. In the case
of failure, or the need for waiting a particular resource, the
scheme can be destroyed or stopped. These actions can be Fig. 3. Overview of the manufacturing process
performed by coordination of these agents.
The environment of this case study presents several
C. The knowledge base implementation different devices commonly used in such process. The devices
The Knowledge Manager agent handles an Artifact which are a furnace, which is used as a melting unity for metal
represents an interface with the ontology responsible to alloys, a degassing oven, an injection unity, a x-ray unity, a
describe semantically the devices data. This artifact thermal treatment unity and a painting unity.
encapsulates the Apache Jena Framework offering to this For this purpose, a DPWS simulator was implemented,
agent the ability to query and retrieve knowledge from the written in Java language, which contains a set of JMEDS
ontology. All the agents in the architecture can request or send devices classes simulating the real devices. Each device
to the KMA agent data to be consulted or annotated. presents services representing machinery functions used along
The application ontology was developed in OWL the process. Each of these functions was designed according to
language, with Protégé (http://protege.stanford.edu/). The the real machines presented in an industrial environment. Each
concepts described in the ontology are the DPWS devices simulation was stopped as system achieved the global task
according to the JMEDS specification and the DPWS after thirty times. In each simulation the system has to detect,
metadata; the organization definition according to the Moise identify and execute a global task, with no human
framework specification and contexts. intervention, only using the technologies described in the
section IV.
The concepts described in the KB (Knowledge Base) are
related to the necessary technologies used during the A global task representing the whole process was created
execution of the functional architecture requirements, i.e., and stored in the KB according to the JaCaMo functional
concepts related to the tasks, the rules of the organization, the specification. Each set of tasks performed by a different agent
devices and the contexts. For the device description some is defined as a mission related to the agent role.
classes of the Semantic Sensor Network ontology Both structural and functional specifications for this case
(www.w3.org/TR/vocab-ssn/) were reused in order to increase study are represented as OML diagrams [21] (see Fig. 4 and
the semantic interoperability. Fig. 5). In this organizational specification each RA is
considered as a machinery operator, while the other agents are


responsible for tasks of monitoring and controlling of the for a new connected device or will search for the network
overall production stages. using a common namespace.
As new devices are found, SA starts new RAs that will
retrieve devices’ metadata (Fig. 7). All the devices’ metadata
are send to the cognitive agents. These metadata will ensure if
a given RA can play a role during the manufacturing
execution.

Fig. 7. Device’s metadata retrieved by RA

Fig. 4. Case study structural specification of the organization OMA, will check if all required connected devices are
present to start a new manufacturing plan. According to the
devices specification searched in the KB, OMA, sends a role
to each of RA, able to enter the organization according to the
resource handled. RA will play this role during the
manufacturing plan execution (Fig. 8).
Fig. 5. Functional specification of the organization

The organization specification ensures that all the


individual goals of the RA can be achieve according to the
organizational rules. It means that all agents will execute a
given individual task along the overall process as specified by
the manufacturing plans. The normative specification will
relate a mission to a role. And the role is related to an IoT
device according to its semantic description. For example, RA
handling a furnace device, will have to commit to a mission,
where “castingfeedstock” (Fig. 5) is one of its goals. For this
purpose, KMA will query the KB ontology to check which
device relates to this goal. According to the device semantic
description, KMA retrieves the role “furnaceOp” and sends it
to the OMA and the RA. This interaction is achieved by
exchange of KQML messages as AgentSpeak believes. Using
the device’s semantic description and MOISE specification, Fig. 8. RA agents receiving a role according to the resource handled.
system can assign the expected roles to each of the RAs.
As all the RAs receives a specific role, OMA then creates
a “schemeboard” and starts a MA responsible to check the
organization missions and eventual failures during the
manufacturing execution. In this stage, the system has a total
of 11 agents running, where 6 are RAs responsible to manage
the different industrial devices.
The RAs will then commit to a mission, as described in the
organization plans. It means that each agent will achieve its
goals that are relating to the real devices’ operations as
predefined by the functional specification. As the system
finishes the task and all RAs achieve its corresponding goals,
the MA starts a new manufacturing plan (Fig. 9). The MA can
also stop a task if any of the missions or goals not fulfilled.
For this purpose, MA checks each of agent’s obligation status.
Fig. 6. Searcher detecting devices during simulation initialization A total of 10 different simulations were executed and, in
all of them, all of the expected number of goodies were
For a manufacturing plan starts, SA looks for the required produced, i.e., the system achieved the expected global plan.
resources needed (Fig. 6). For this purpose, system will wait The DPWS proved to be a flexible tool for access, discovery


and identification of the devices. The ontology was necessary [3] L. Da Xu, W. He and S. Li, "Internet of Things in Industries: A Survey",
for the system integrate the device’s metadata with the MAS IEEE Transactions on Industrial Informatics, vol. 10, Issue: 4, pp. 2233
- 2243, 2014.
organizational approach. The JaCaMo framework presented as
[4] P. Spiess, S. Karnouskos, D. Guinard, D. Savio, O. Baecker, L. Souza,
an efficient tool for coordinate devices. Although, some issues V. Trifa, SOA-based integration of the internet of things in enterprise
were noted when system tried to execute two tasks services, in: Proc. of IEEE ICWS 2009, Los Angeles, USA, July 2009.
simultaneously. [5] J. Lee, B. Bagheri, Hung-An Kao, "A Cyber-Physical Systems
architecture for Industry 4.0-based manufacturing systems”,
Manufacturing Letters, v. 3, pp. 18-23, 2015.
[6] J. Gubbi, R. Buyya, S. Marusic, M. Palaniswami. “Internet of Things
(IoT): A vision, architectural elements, and future directions”. Future
Generation Computer Systems, v. 29, n. 7, 1645–1660, 2013.
[7] A. W. Colombo, S. Karnouskos, J. M. Mendes, P. Leitão, “Chapter 4 -
Industrial Agents in the Era of Service-Oriented Architectures and
Cloud-Based Industrial Infrastructures”, Industrial Agents pp. 67-87,
Morgan Kaufmann, 2015.
[8] H. Aloulou, M. Mokhtari, T. Tiberghien, J. Biswas, C. Phua, L.
Kenneth, H. Jin, P. Yap. “Deployment of assistive living technology in a
nursing home environment: methods and lessons learned”. BMC
medical informatics and decision making, v. 13, 2013.
[9] G. D. Abowd, A. K. Dey, P. J. Brown, N. Davies, M. Smith, P.
Steggles..”Towards a better understanding of context and context-
awareness”. In: Proceedings of the 1st international symposium on
Handheld and Ubiquitous Computing, London, UK: Springer-Verlag,
pp. 304–307, 1999.
[10] M. Ruta, F. Scioscia, E. DIi Sciascio, D. Rotondi, S. Piccione, S.
“Semantic-Based Knowledge Dissemination and Extraction in Smart
Environments”. In Proceedings of the International Conference on
Advanced Information Networking and Applications Workshops, 27,
1289–1294, 2013.
[11] A. M. Alberti, D. Singh. “Internet of Things: Perspectives, Challenges
Fig. 9. MA agent starting a new task. and Opportunities”. International Workshop on Telecommunications
(IWT 2013), May 6-9, 2013.
VI. CONCLUSION [12] Z. Song, A. Cardenas, R. Masuoka,. “Semantic Middleware for the
Internet of Things”. Internet of Things (IOT), Tokyo, Japan, November
This work proposed an architecture based on MAS, SOA 29-December 1, 2010.
and Semantic Web technologies to automate the integration [13] S. N. Han, G. M. Lee, N. Crespi, N. “Semantic Context-Aware Service
and management of devices in IoT environments. Together, Composition for Building Automation System”. IEEE Transactions on
these technologies can create a software infrastructure to Industrial Informatics, v. 10, n. 1, 752–761, 2014.
support the development of applications based on IoT [14] G. Pujolle, “An Autonomic-oriented Architecture for the Internet of
environments, allowing the execution and coordination of tasks Things”. In Proc. of the IEEE JVA International Symposium on Modern
Computing, vol. 1, pp. 163-168, 2006.
according to the context. Ontologies were used to describe
[15] R. Fuentes-Fernández, M. Guijarro, G. Pajares, A multi-agent system
tasks’ and agent’s organization that allowed the system to architecture for sensor networks. Sensors, Vol. 9(12), pp. 10244-10269,
dynamically and automatically select and execute tasks with 2009.
non-human intervention. [16] S. Karnouskos, M; M. J. Tariq. “Using multi-agent systems to simulate
dynamic infrastructures populated with large numbers of web service
A prototype system was implemented and tested in a enabled devices”. International Symposium on Autonomous
simulated environment of a manufacturing context. In this Decentralized Systems, pages. 1–7, 2009
context the system demonstrated the ability to adapt, [17] P. Leong, L. Liming. Multiagent “Web for the Internet of Things”. In
incorporating new features; and flexibility presented several Proceedings of the International Conference on Information Science and
Applications (ICISA), 1 – 4, 2014.
possibilities to perform tasks by simply changing the field of
[18] P. Angulo-Lopez, G. Jimenez-Perez. “Collaborative agents framework
concepts in KB. In addition, future works propose use of for the Internet of Things”. Workshop Proceedings of the 8th
ontologies to describe security and monitoring features, the International Conference on Intelligent Environments, 191 – 199, 2012.
possibility for the system connect to devices using a different [19] Docs.oasis-open.org. (2018). OASIS Devices Profile for Web Services
service technology, the execution of multiple tasks and the (DPWS). [online] Available at: http://docs.oasis-open.org/ws-
dd/ns/dpws/2009/01 [Accessed 1 Jun. 2018].
application of the architecture in another IoT contexts.
[20] A. S. Rao. “AgentSpeak(L): BDI agents speak out in a logical
REFERENCES computable language” in Proceeding MAAMAW '96 Proceedings of the
7th European workshop on Modelling autonomous agents in a multi-
[1] O. Vermesan, P. Friess, P. Guillemin, “Internet of things strategic agent world : agents breaking away: agents breaking away, 42-55, 1996.
research roadmap,” The Cluster of European Research Projects, 2009, [21] J. Hübner, J. Sichman, O. Boissier. “Using the Moise+ for a Cooperative
available from URL http://www.internet-of-things-research.eu/ Framework of MAS Reorganisation” Advances in Artificial
pdf/IoT_Cluster_Strategic_Research_Agenda_2011.pdf, 2009 Intelligence–SBIA, 481-517, 2004.
[2] C. Perera, A. Zaslavsky; P. Christen, D. Georgakopoulos, “Context
Aware Computing for The Internet of Things: A Survey”. IEEE
Comunications, vol. 16, n. 1,pp. 414–454, 2014.



You might also like