<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Towards Smart Factory: Multi-Agent integration on industrial standards for service-oriented communication and semantic data exchange</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ronald Rosendahl</string-name>
          <email>ronald.rosendahl@ovgu.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ambra Cala`</string-name>
          <email>ambra.cala.@ovgu.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Konstantin Kirchheim</string-name>
          <email>konstantin.kirchheim@ovgu.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Arndt Lueder</string-name>
          <email>arndt.lueder@ovgu.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nikolai D'Agostinoy</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Otto-v.-Guericke University</institution>
          ,
          <addr-line>Magdeburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>124</fpage>
      <lpage>132</lpage>
      <abstract>
        <p>-The concept of smart factories in the industry 4.0 (I40) paradigm is based on the concept of cyberphysical systems which is more specifically elaborated within the concept of the smart manufacturing component. In that concept an arbitrary production asset is assigned to an administration shell, that covers partial models and services for arbitrary functions. The desired attributes of smart factories to be self-organized, self-optimized, self-learning, etc. is based on the idea of an intelligent cooperation between the smart manufacturing components. However, the actual performing of this co-operation is not appropriately elaborated yet. In this paper the approach of a Multi-AgentSystem to be applied as a well elaborated mean for intelligent co-operation of smart manufacturing components shall overcome this lack. Furthermore the application of existing standards for service-oriented industrial communication infrastructure by OPC-UA and for semantic data exchange by AutomationML provides existing means for realizing the required connectivity and interoperability for intelligent co-operation that shall realize self-X capabilities of smart factories. Index Terms-Agents, Flexible manufacturing systems, Knowledge representation, Service</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>
        Driven by increased demands for shorter life cycles and
a higher degree of individualization of products the
manufacturing industry is looking to raise the dynamics in their
systems. With the evolving technological capabilities strong
social and organizational changes in the management of all
life cycles of those artificial systems are being expected. This
issue was addressed by a funding of the German government
to enforce a 4th industrial revolution and introduced the
term ”Industrie 4.0” (I40) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. In the domain of production
systems engineering the requirements for I40 are in a first step
being addressed by an increase in modularization of system
components. One essential building block in this discussion is
the Smart Manufacturing Component (former: I40 component)
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] which is being developed on the idea of Cyber Physical
Production Systems (CPPS) and constitutes the concept of an
administration shell which combines the presentation of the
physical components of a production system along with its
digital representation [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This modularity renders the creation
and adjustments of systems a semi-automatable process. The
necessary information and data models within such design
processes form an ideal basement for the acquisition, structuring
and management of system related data at the runtime of a
facility. In the area of discrete manufacturing the data model
and metamodeling capabilities of the file format
AutomationML evolved which supports the modular thinking in terms
of mechatronical engineering, high level of model
dynamics and concepts for building common models and libraries
for different engineering domains and disciplines. In several
research activities and industrial applications AutomationML
proved a suitable data model for the multi disciplinary modular
engineering of production systems as well as the transition of
data from the design and virtual commissioning phases of a
system to its runtime. In [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] a concept of an AutomationML
and OPC UA based implementation of I40 components is
being discussed. It is shown how AutomationML projects are
automatically translated into namespaces of OPC UA in a
standardized way following the specification given in DIN
Spec 16592 [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Combining this auto-generated component
description in a standardized communication architecture with
agent technology seems a promising candidate for the
creation of dynamically adaptable system modules thus easily
bringing smart applications to the production domain. An
actual research question is to evaluate how the model and
workflows out of the engineering processes at design time
associated with AutomationML fit the requirements of the
runtime management of a system specifically in an automated
way performed by Multi-Agent-Systems (MAS). Therefor it
has to be proven which methodological and technological
adjustments or extensions are needed to support or enable
the AutomationML ecosystem to be a valuable part of the
development and operation of an MAS.
      </p>
      <p>Within this paper it will be presented how the requirements
for the acquisition of system information by
Multi-AgentSystems will be met by a service based online model of
the system represented in AutomationML. After a brief
introduction to the underlying technologies for the architectural
proposal given in this paper the requirements are collected that
need to be matched to apply an AutomationML knowledgebase
for MASs in the domain of production systems. Special
attention is spent to the modeling capabilities for semantical
concepts of the system. In the following section it is being
explained how this requirements are met by the proposed
technologies and which auxiliary methodologies or
technologies have to be applied to the architecture. The final section
presents a prototypic implementation which is exploited to
prove the solution in a lab size production system.</p>
      <p>II. INDUSTRIAL STANDARDS AND ARCHITECTURES FOR
THE PROPOSED SMART MANUFACTURING COMPONENT</p>
      <sec id="sec-1-1">
        <title>A. Industrial Agents and Architectures</title>
        <p>
          Agent technology is a suitable technology to decentralize
control automation architectures in production systems in
order to dynamically react to changing requirements according
to the I40 paradigm. Especially, MAS [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] have been used in the
past years to develop modular, flexible, robust, adaptive,
reconfigurable and responsive complex production systems, based
on the decentralization of control functions over a community
of distributed, autonomous and cooperative agents. Agents
applied to the industrial domain are called Industrial Agents
[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] and share the same characteristics of software agents, such
as intelligence, autonomy and cooperation. Depending on the
application scenario and the degrees of importance, agents can
fulfill different requirements in production control systems.
Agents have been used historically in industry to connect
the cyber to the physical part. In fact, several distributed
control automation architectures based on MAS technology
have been developed in the past years within research projects,
highlighting their benefits in production systems in terms of
flexibility and reconfigurability [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. These research projects
have derived MAS-based reference architectures focusing on
control, planning and scheduling, and supervision solutions,
positioning agents at the bottom levels of the ISA-95 and
predominantly at MES level. Some of the realized MAS
architectures need to be mentioned, such as GRACE project
[
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], which developed a multi-agent architecture that operates
at all stages of a production line integrating process control
with quality control. The MAS architecture was applied on a
washing machine production assembly line and tested against
planned and unforeseen variation of variables. IDEAS project
[
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] developed a fully distributed and pluggable mechatronic
environment, based on agent technology, capable to
selforganize itself. The assembly system operated with a totally
distributed multi-agent control system. PRIME project [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]
developed a multi-agent architecture using plug-and-produce
principles for semi-automatically configuring production
systems through innovative human-machine interaction
mechanisms. The multi-agent architecture here is used for module
integration including legacy systems. Finally, ARUM project
[
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] also proposed an agent-based architecture aiming at
minimizing the response time to unexpected events during the
ramp up phase of plant. As seen in the past projects, main
requirements of MAS comprise the specific hardware
integration, reliability, fault-tolerance, scalability, industrial standard
compliance, quality assurance, resilience, manageability and
maintainability. For industries that aim at mass production of
individual customized products, MAS can support everyday
operation like variable customization requirements, changes
in plans and schedules, changes in technology, and equipment
failures [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. Other common application scenarios appear in the
transportation and material-handling systems, production
management of frequently disrupted operations, coordination of
organization with conflicting goals and frequently reconfigured
environments [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]. A more comprehensive set of MAS
applications in industry can be found in [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]. Different requirements
in the application domains can be derived also from other
emergent reference control architectures developed within
the ongoing projects like IMPROVE [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], PERFoRM [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ],
BaSys4.0 [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] and INTER-IoT [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ], [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ] and [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. Besides
the general requirements of flexibility, scalability, modularity
and standardized interface as well as common information
model, other requirements can be included depending on the
application use case, such as: data curation; inter-enterprise
data exchange; privacy, integrity and security; service
detection and orchestration; and real-time communication between
architecture participants.
        </p>
      </sec>
      <sec id="sec-1-2">
        <title>B. AutomationML</title>
        <p>In the year 2006 a leading automotive OEM initiated
several cooperations of developer teams of their engineering
departments, service contractors and suppliers. The goal was
to overcome identified waste of resources in the engineering
chain of production systems. One major problem was that
at some transition points between the engineering phases
there was no digital transmission of the engineering data
at all. The manual submission by printed documents lead
to avoidable and error-prone reinterpretations of information
to digital representations. The solution proposal was to
develop a data format which addresses the special needs of a
gapless transmission of digital representations of engineering
information along the whole development cycle of discrete
manufacturing systems. To evolve and promote this format in
the year 2009 the ”AutomationML” society was founded. At
the time of development object orientation and model driven
development where state of the art paradigms and prototypic
object models gained some popularity with the ascent of
web technologies in languages like JavaScript. In consequence
the main requirements to the data model of AutomationML
that where derived together with production system engineers
were:
object orientation to support the modeling of systems
in terms of mechatronical engineering and to represent
a system component with several distinct
(mechanical, electrical, information-technological) aspects as one
unique self-contained entity,
prototypic inheritance to support the reuse of model
elements with the capability to be easily evolved, avoiding
the complexity of managing consistent class hierarchies
at the same time,
weak inheritance rules affecting instance data regarding
the fact that engineering information is assembled at
design time and its associated data will be incomplete
and inconsistent meanwhile,
object relations for the modeling of dependencies
beyond the hierarchical structures as well as
object roles for semantical richness of the model.</p>
        <p>
          Regarding this requirements AutomationML was defined as
an open, XML-based format in a series of standards (IEC
62714) for the model based description of production systems
and components. Given the mentioned capabilities
AutomationML has proven a valuable data model for the exchange of
engineering information of different disciplines in the design
stage of a system [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]. It integrates sets of very
heterogeneous information of the system being modeled and
forms a sound repository of machine readable descriptions of
the system. In several applications it has shown that systems
represented in AutomationML exploiting the full modeling
capabilities form a directory of component descriptions in
a systemic way. Consequently the idea came up to use this
data objects across further life cycle phases of the underlying
system. Several research projects are currently concerned with
the integration of this data at the runtime of a system [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ].
Since the majority of agent based approaches rely on an
information model of the system they are being applied to,
AutomationML seems to be a reasonable candidate for the
acquisition and management of system information enabling
a repository of multi purpose system descriptions [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ].
        </p>
      </sec>
      <sec id="sec-1-3">
        <title>C. OPC-UA Information Models</title>
        <p>
          OPC UA (Open Platform Communications Unified
Architecture) is a platform independent architecture for
communication of devices and systems in industrial communication
networks defined in the series of standards (IEC 62541). It
focuses on providing a unified service oriented infrastructure
for the transport of data and the modeling of information in
order to facilitate vendor independent interoperability between
devices. OPC UA models information as a full meshed
network, consisting of nodes that represent for example types or
objects, and references that describe relation between these
nodes. Following this approach, object-oriented concepts like
inheritance and type hierarchies can be described in a way that
enables clients to query and manipulate instance- and
typerelated information in a uniform manner, while also allowing
the extension of existing type hierarchies. OPC UA imposes
no further limitations on how to model information in order to
allow the representation of arbitrary existing rich information
models [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ].
        </p>
        <p>
          This integration of vendor-specific information models into
OPC UA is specified in so called companion specifications.
DIN Spec 16592 specifies the translation of AutomationML
projects into OPC UA information models, enabling the online
exchange of AutomationML models along with all of OPC
UAs features concerning data management, multi user support,
access methods, security etc. [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ].
        </p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>III. REQUIREMENTS ON LIFE-CYCLE-SPANNING</title>
      <p>INFORMATION MODELS FOR THE SHOP FLOOR</p>
      <p>Multi-Agent-Systems performing tasks on industrial
appliances require suitable descriptions of the underlying hard- and
software. In this section the requirements to a knowledgebase
for such an integration are discussed. After introducing some
basic principles that are being expected as general
requirements for data models applicable with MAS, more specific
concepts will be pointed out. Those address the requirements
derived from the aforementioned use-cases and reference
architectures for MAS. These requirements are evaluated here
against the capabilities of the AutomationML concepts of
the systems engineering phases. On the basis of these facts
implementation gaps are identified and enhancements
suggested to probe the limitations of the proposed solution of
an AutomationML based distributed system model for the use
in MASs.</p>
      <sec id="sec-2-1">
        <title>A. Structure of information</title>
        <p>Not just to the application of MAS one major principle of
information modeling is the Divide and Conquer paradigm.
It helps to manage complexity by breaking huge systems
down to simpler ones and have the responsibility for the
subsystems assigned to a squad of professionals (algorithms,
experts, 3rd party companies) who not just share the load but
are specialized to a certain task. To integrate this partially
managed subsystems and make them work as a whole it is
necessary to conceptualize elements that represent the part and
aggregate its related information. These elements are required
to be coherent compositions of data based on a common
data model and to have an identity. These elements are
subordinate to other elements which represent the (sub-)system
they constitute and recursively form a part of.. hierarchy.
AutomationML meets these requirements with the concept
of an InternalElement (IE) which may contain an unlimited
number of Attributes. The standard specifies a mandatory
identifier for each of this elements. The identifier is defined
to be unique and shall be implemented using Globally Unique
Identifier (GUID) that per definition persists along the
lifecycle of the distributed set of elements. Each InternalElement
may contain an unlimited number of other InternalElements
constituting a tree structure which is contained within a so
called InstanceHierarchy. This way an MAS may browse and
access data of certain assets within the system in a structured
way.</p>
      </sec>
      <sec id="sec-2-2">
        <title>B. Types of information</title>
        <p>A basic principle in all MAS architectures is the
specialization of agents to purpose and asset. If agents with different
purpose access the same asset they may require different
kinds of contained data with distinct semantical meaning not
satisfied by the definitions of the underlying data model and
a static structure. These use cases require the attributes to be
recognized by a name and to have a type to qualify the value
as well as a unit to quantify the value. In AutomationML there
is a mechanism for dynamic typing and only spatial,
spatiotemporal and kinematic information are statically defined.
Therefore as part of the basic concepts each InternalElement
may declare a Frame attribute which specifies its location
by transformation parameters in the three-dimensional space
relative to its parent. Spatio-temporal and kinematic data is
embedded by a specific linking mechanism to instances of the
open standard data model Collada (ISO/PAS 17506) originally
for the purpose of the virtual commissioning. This mechanism
may be useful for autonomous navigation of movable system
parts but is a very special use case for agents and therefore out
of scope of this document. To dynamically define the meaning
of data each Attribute contains an entry Unit to explicitly
quantify a measure and an entry RefSemantic to add a string
based hint for the semantical interpretation to qualify the value.
Additionally AutomationML declares the extended concept of
PropertySets. The definition of PropertySets allows to map
proprietary attributes of AutomationML objects with
semantically predefined attributes. These attributes are managed in
shared libraries of roles. The RoleClassLibrary concept will
be explained in detail in the paragraph about semantical depth.
This way the data models of the platform the agent and the
production system have been defined in are being decoupled
a semantically correct interpretation of the data by the agents
is ensured.</p>
      </sec>
      <sec id="sec-2-3">
        <title>C. Views on information</title>
        <p>
          As already mentioned different types of agents access
different information derived from different subsets of data
of an asset. Depending on the purpose an agent was designed
for there are different decomposition structures of a system.
Therefore it is required to overcome the limitation of a single
hierarchy and represent the same system elements in optional
alternative hierarchies. To avoid the expensive processing of
search and filter operations there are several mechanisms in
AutomationML that may be used to explicitly define
aggregates or subsets of data. To organize the elements in different
decomposition structures a methodology was introduced in
[
          <xref ref-type="bibr" rid="ref28">28</xref>
          ] to implement three distinct views on the same system
elements related to the focus on Product, Process and Resource
(PPR) demands. To represent the same element in more then
one hierarchy the standardized MirrorObject was used which
basically is a pointer to the original element. To aggregate sets
of data the same principle of pointers is used with the extended
concept of a so called GroupObject which containerizes a
set of MirrorObjects. In comparison to alternative hierarchies,
groups may be associated with Facets. A Facet is also one
of the extended concepts of AutomationML and supports the
specification of a sub-view of a parent element. It specifies a
subset of Attributes and ExternalInterfaces of an
InternalElement. Different agents may access the different hierarchies
and signatures of an element to avoid intense search and
preprocessing operations.
        </p>
      </sec>
      <sec id="sec-2-4">
        <title>D. Relations and networks of information objects</title>
        <p>
          In several use cases like self-organization, plug-and produce,
scheduling and logistics the agents have to rely on more
complex relations between elements. While chains of elements
(processes, routes, dependencies) may easily be represented
in ordered sets hierarchical structures are not useful for the
distinction between uni- and bidirectional relations as well
as slopes and cycles up to full meshed networks of elements.
AutomationML has built-in mechanisms for the definition of
connection points of elements called ExternalInterface and
InternalLink objects that establish connections between them.
In [
          <xref ref-type="bibr" rid="ref29">29</xref>
          ] a method is described to exploit this linking mechanism
to define directed graphs in AutomationML. By defining an
InternalElement being an edge object and inserting it in
between two links to the related elements a connection with
rich semantical capabilities may be specified. That way agents
may discern routes through the system, dependencies as well
as logical or physical connections from the model enabling a
variety of applications.
        </p>
      </sec>
      <sec id="sec-2-5">
        <title>E. Semantical depth</title>
        <p>
          To express commonalities of elements for algorithmic
manipulations class based inheritance is a very popular concept.
But for the application of MAS in dynamic system scenarios
statically typed systems of data structures like inheritance of
classes are not practicable. In contrast to applications with a
fixed purpose it is not possible to anticipate all occurrences
of variety and each necessary class structure in advance.
Therefor the information model is required to be capable
of runtime changes. But modifying the model structure
dynamically inhibits the power of type safety. To avoid the
necessity of runtime analysis a concept of an alternate access
pattern to identified structures is necessary. This concept
requires the possibility to indicate the occurrences of the
structural pattern by some kind of annotation to the model.
Patterns used in the application are documented in
application specific pattern catalogs. A possible implementation of
this requirements with prototypical objects was discussed in
[
          <xref ref-type="bibr" rid="ref30">30</xref>
          ]. AutomationML is based on the CAEX standard which
implements its infomration model on prototypical objects. But
in AutomationML the identification of instances was changed
to an explicit addressing scheme by IDs without adjusting
the inheritance concept of CAEX which uses path to allocate
base classes. Additionally the inheritance rules were loosened
to enable the exchange of draft design data which is by
definition incomplete and possibly inconsistent. But at the
same time it also enables more flexible ways to evolve the
data model with changing demands. This freedom requires
carefully defined processes and semantical enhancements. The
semantical expressiveness and extensibility of AutomationML
has been discussed in several publications [
          <xref ref-type="bibr" rid="ref31">31</xref>
          ], [
          <xref ref-type="bibr" rid="ref32">32</xref>
          ], [
          <xref ref-type="bibr" rid="ref33">33</xref>
          ]. The
main concepts defined in the standard are the class libraries
for RoleClasses, InterfaceClasses and SystemUnitClasses. The
concept of prototypic inheritance holds for class hierarchies
and allows the definition of commonalities. Interface- and
RoleClasses allow the semantical enrichment of
ExternalInterfaces and InternalElements. SystemUnitClasses are used to
define prototypes for InternalElements. But the classes are not
meant to be inherited but used as a master copy. For
implementation of typesafe access to the model additional concepts
have to be applied to link content to a standardized feature
system or taxonomy [
          <xref ref-type="bibr" rid="ref34">34</xref>
          ]. Such classification schemes may
be represented in RoleClassHierarchies where each RoleClass
represents an entry and defines the required attributes and
interfaces of an element having this role assigned. Annotating
instance data with standardized assignment of RoleClasses
realizes the alternate access pattern while the weak inheritance
brings the freedom of agility to the information model. This
way the requirements of the application of MAS in dynamic
system setups are met.
        </p>
      </sec>
      <sec id="sec-2-6">
        <title>F. Consistency</title>
        <p>
          To ensure or at least asses the correctness of information
and the agents’ decision based upon it, it is very important to
express constraints on the content in the information model.
Beyond the formal description of the data model by related
XML-Schema definitions which ensures syntactical and basic
structural correctness it is required to define logical and
functional dependencies within the system. In [
          <xref ref-type="bibr" rid="ref31">31</xref>
          ] it has been
shown that the Object Constraint Language (OCL) is
capable of describing logical dependencies within AutomationML
models to proove their semantical correctness. In a different
context MathML was used within AutomationML to describe
functional dependencies in mathematical formulas. Adding
MathML and OCL definitions directly to the AutomationML
model facilitates the dynamic enhancement of the model.
        </p>
      </sec>
      <sec id="sec-2-7">
        <title>G. Interactivity</title>
        <p>
          The ideas of the I40 require production systems to evolve
continuously throughout every stage of their life-cycle. As a
production system changes, agents have to be able to
manipulate its model in order to provide up-to-date information
to other entities. In a full fledged Self-X application on a
dynamically changing production system the MAS has to
rely on a powerful knowlegdebase to aquire and evolve the
system descriptions. This knowlegdebase is meant to contain
all information that may be collected along the life-cycles
of the system. It ranges from static, centralized and well
structured models out of the systems engineering, along still
structured but frequently changing runtime-data to
dynamically evolving and partially unstructured or even inconsistent
support data. This tangle of data raises high demands on
the agility of the applied information models as well as the
information infrastructure for the aggregation and exploitation
of knowledge [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]. As we have shown before AutomationML
adresses the requirements on agility of the information models
with several concepts. The introduced changes in structural
allocation, granularity, existence and availability of elements
in the system have additionally to be supported by the services
representing the model in an online application and form an
agile information infrastructure. To enable a consistent and
vivid runtime solution the characteristics of object orientation
have to be fully implemented serving the need to distribute
the information objects across the infrastructure. Identity and
state have already been applied but the encapsulation and
behavior are partially described in the standard documents.
Also the server applications that were developed together with
the companion specification for AutomationML and
OPCUA didn’t address this characteristics. Therefor a customized
OPC UA AML server has to be utilized that ensures the
encapsulation and realizes the behavior of a component to
change its internal structure and state.
        </p>
        <p>There are (at least) 4 different events that entail agents to
update the production systems model in a modular
configuration:</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Integration of a new resource</title>
      <p>Change of resource
Removal of a resource</p>
      <p>Exchange of a resource</p>
      <p>These modifications implicate different changes to an
AutomationML model. When integrating a new or changing
an existing resource, it may occur that InternalElements,
ExternalInterfaces or SupportedRoles have to be added. In
each of these cases, dependencies (SystemUnitClasses,
InterfaceClasses, RoleClasses) have to be resolved by importing
missing libraries into the model. In order to actually integrate
the added objects into the model, relations to other objects
in the system have to be defined. In AutomationML, this
is accomplished by connecting the objects interfaces with
so called InternalLinks. On the other hand, when removing
elements from the model by either removing or changing an
existing resource, these InternalLinks have to be removed prior
to the execution of the remove operation in order to keep
the model in a consistent state. When removing elements, it
is reasonable to also remove unused dependencies from the
model in order to keep it as slim and performant as possible.
These considerations introduce the need for some kind of
dependency management. In order to encapsulate the model
from the agents, this maintenance should not be performed
by the agents themselves, but rather by the server that holds
the model. This design adds up all the key concepts of
object orientation (identity, state, behavior, encapsulation). Each
object may be represented as an OPC UA node and may be
located on any resource hosting an OPC UA - AML Service.
Given this services agents may manipulate structure, views,
annotations and relations of elements forming knowledgebase
systems.</p>
      <p>IV. INTEGRATION OF PRODUCTION SYSTEM MODELS IN</p>
      <p>SHOP FLOOR FOR THE APPLICATION OF MASS</p>
      <p>As introduced in the previous section there are distinct sets
of requirements to a possible knowledgebase for MASs in a
production system scenario. In the following three subsections
a testbed will be described that was used to evaluate how
the proposed solution meets those requirements. In the first
subsection the general architecture for an integrated system of
AutomationML, OPC UA and MASs will be described. In the
second subsection an example implementation of the proposed
architecture will be presented. In subsection three some
usecases are described that were run on the presented lab size
production system.</p>
      <sec id="sec-3-1">
        <title>A. Architecture Proposal</title>
        <p>The parts of the proposed architecture may be distinguished
into three major conceptual structures that are the execution
and control of the behavior of system parts, the management
of the integral system and the management of knowledge
about the system. The execution structure is located within
or close to the control system on the field or edge level of
the production system. Each appliance for the manufacturing
is self-contained with its control in industrial quality. Therefor
it is connected to the hardware by field bus technologies and
meets constraints on real-time behavior and safety of the
governed system part. For higher level applications each control
interfaces with a service platform e.g. a service API within
the control hardware. As a migration strategy a realization
on state-of-the-art PLC runtime with an integrated OPC UA
server per appliance is suggested. Due to the decoupling of
components by vendor- and platform independent OPC UA
architecture future technologies may transparently replace this
legacy systems. Each of these clusters is associated with field
level agents along with a model based description of their
logical cooperation interfaces in AutomationML, rendering
them intelligent system modules. The closer the agents and
the model are integrated with the control hardware the more
modularity and adaptability is gained.</p>
        <p>The second structure in the architecture is composed by
hard- and software which enables the system to be run as
an integrated whole. Its functions are on a higher level of
abstraction of the production process and therefor called higher
level applications even though they are not necessarily
superordinate to the field level. They contain the planning, operation,
supervision, service and maintenance of the production as well
as the production system. In this sense it heavily overlaps
with traditional functions of manufacturing execution system
(MES), supervisory control and data acquisition (SCADA)
as well as enterprise resource planning (ERP) technologies.
Here functions like “smartness” and “self-X” of the
production and production system are realized by MAS. While the
interfaces to the control system are realized using OPC UA
the implementation of cooperative behavior has been based
on the middleware of the MAS. This design enables the
separation of concerns between different levels of operation
and especially the loose coupling between data describing
the structural conditions of the system and the operational
data of the application executed on the system. This avoids
complex integration dependencies between system modules
and their application and supports platform independence and
maintainability of system parts.</p>
        <p>The third and most novel structure of this proposal is
the information infrastructure. Exploiting the power of the
applied middleware solutions it is well tailored to the
intended purpose. While the information out of the semantical
context of cooperation stays within the implementation of
the MAS the communication with the information repository
and the executive parts of the system is performed using
the open industrial OPC UA technology. Special attention
should be spent to the fact that OPC UA is not only used
as transmission protocol of the data. The strong mechanism
of self-descriptiveness using the OPC UA information models
enables the establishment of the distributed machine readable
knowledgebase which is the cardinal gain of the proposed
architecture. By the instantiation of the AutomationML model
within the information model of OPC UA all the knowledge
collected in the design process of the system may get published
to the servers of the proposed architecture and forms the
distributed knowledgebase which is continuously evolved. For
this purpose an OPC UA server software is used within the
architecture which serves AutomationML files according to
the companion specification for AutomationML extended with
the consistency preservation explained in section III G. A key
feature here is that within this model pointers to remote OPC
UA servers and nodes are represented. This way it realizes an
arbitrary distributable model of the system with the
expressiveness of AutomationML. Within this ecosystem the agents
are able to read AutomationML, browse the description of the
system, learn and reason upon the information and in a mature
implementation enhance or improve the model. Thereby the
model dynamically evolves and satisfies the requirement of the
agility of information model and information infrastructure.</p>
      </sec>
      <sec id="sec-3-2">
        <title>B. Application Example</title>
        <p>
          The application presented here implements an examplary
version of MES agents in the sense of [
          <xref ref-type="bibr" rid="ref36">36</xref>
          ] and [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] integrated
with the mentioned technologies. It consists of a modular lab
size production system of eight modules. The modules may be
arranged in the laboratory arbitrarily. Each module represents
a manufacturing resource and is self-contained with a
state-ofthe-art control system and an integrated OPC UA Server which
serves the control parameters of the PLC to the network (see
figure 1).
        </p>
        <p>Conveyor 2</p>
        <p>B
Fig. 1. architecture of a single component in lab size production system</p>
        <p>The modules are connected to an Industrial Ethernet
infrastructure. In the scope of the whole system the components
are integrated with an aggregating OPC UA server that holds
an AutomationML model (see listing 1). It contains an object
tree with an overall description of the system and points to
the modules’ servers (see figure 2). Changes in the physical
setup of the system have to be observed and reported to this
server. The MAS is built on JADE technology. The agents
are equipped with the feature to surf OPC UA networks and
interpret discovered AutomationML descriptions.</p>
        <p>Modbus TCP</p>
        <p>P</p>
        <p>C
e
t
u
h
C
3
r
o
y
e
v
n
o</p>
        <p>C</p>
        <p>OPC TCP</p>
        <p>PLC
Machine
Conveyor 1
Listing 1. AutomationML segments of production systems’ resource topology static sequence on a module. It forms the base of future work
&lt;InstanceHierarchy Name="ResourceTopology"&gt;
[..]
&lt;InternalElement Name="PPLab" ID="GUID_01"&gt;
&lt;InternalElement Name="Conveyor 1" ID="</p>
        <p>GUID_02"&gt;
&lt;ExternalInterface Name="WPPort_Conv1C"</p>
        <p>RefBaseClassPath="TransportClassLib/</p>
        <p>WPPort" ID="GUID_11" /&gt;
&lt;RoleRequirements RefBaseRoleClassPath="</p>
        <p>PPLabRoleClassLib/TransportNode" /&gt;
&lt;/InternalElement&gt;
&lt;InternalElement Name="Turntable" ID="GUID_03</p>
        <p>"&gt;
&lt;ExternalInterface Name="WPPort_TurnA"</p>
        <p>RefBaseClassPath="TransportClassLib/</p>
        <p>WPPort" ID="GUID_12" /&gt;
&lt;RoleRequirements RefBaseRoleClassPath="</p>
        <p>PPLabRoleClassLib/TransportNode" /&gt;
&lt;/InternalElement&gt;
&lt;InternalLink Name="Conv1_Turn"</p>
        <p>RefPartnerSideA="GUID_02:WPPort_Conv1C"</p>
        <p>RefPartnerSideB="GUID_03:WPPort_TurnA" /&gt;
&lt;RoleRequirements RefBaseRoleClassPath="</p>
        <p>AutomationMLBaseRoleClassLib/</p>
        <p>AutomationMLBaseRole" /&gt;
&lt;/InternalElement&gt;
&lt;/InstanceHierarchy&gt;
&lt;InterfaceClassLib Name="TransportClassLib"&gt;
&lt;InterfaceClass Name="WPPort" /&gt;
&lt;/InterfaceClassLib&gt;
[..]
&lt;RoleClassLib Name="PPLabRoleClassLib"&gt;
&lt;RoleClass Name="TransportNode"&gt;
&lt;ExternalInterface Name="WPPort_NodeX"</p>
        <p>RefBaseClassPath="TransportClassLib/</p>
        <p>WPPort" ID="GUID_22" /&gt;
&lt;/RoleClass&gt;
&lt;/RoleClassLib&gt;
[..]</p>
        <p>
          1) Field Level Components: Each of the 8 modules contains
a single-board computer which operates an industrial PLC
runtime with a built-in OPC UA Server. The PLC program is
written in the PLC programming language structured text (ST)
defined in the 3rd part of the open international standard IEC
61131 [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ] and stored in the related PLCOpenXML exchange
format. For each module there is an AutomationML object tree
containing pointers to the control code and references to its
variables as well as a description of the module behaviors
controlled by the code linking all together (see listing 2).
        </p>
        <p>This behaviors are whitelisted to the OPC UA interfaces of
the PLC and thereby exposed to the outside as a service
of the module. Deploying this AutomationML project to the
PLC programming environment and an aggregating OPC UA
Server capable of AutomationML hierarchies constitutes a
service based interactive module with a description of its
skills. For the prototype presented here the control code
implemented only indecomposable behaviors of the module
while sequences of behaviors were realized outside of the field
control components. At the moment this is realized by an agent
not further introduced in this paper that knows to execute a
of the authors about skill based discovery and commission of
agents on the job shop.</p>
        <p>AutomationML</p>
        <p>Project
OPC UA - AML</p>
        <p>Server</p>
        <p>PLC 1</p>
        <p>PLC n
OPC UA Services</p>
        <p>Logistic
Management</p>
        <p>Agent</p>
        <p>Resource
Management</p>
        <p>Agent</p>
        <p>Resource
Agent 1</p>
        <p>Resource</p>
        <p>Agent n</p>
      </sec>
      <sec id="sec-3-3">
        <title>2) OPC UA Servers with AutomationML backend: To gain</title>
        <p>the full potential of an OPC UA cluster serving
AutomationML models the interactivity had to be realized for the
AutomationML information model in a server application.
Starting from an implementation of a Java based
AutomationML engine joined with the OPC UA Stack implementation
of the MILO project an OPC UA server implementation
was created that allows the object-oriented interaction with
AutomationML object hierarchies. Thereby the agents may not
just acquire information from the model but rather reason upon
the structures based on inference rules to gain new knowledge
and communicate this knowledge through the models.</p>
        <p>Listing 2. AutomationML code segments of OPC-UA declaration
&lt;InternalElement Name="OPCUA Server" ID="5
b196fe6-83a5-4b6e-b011-f21e3436ce1b"&gt;
&lt;Attribute Name="DiscoveryURL"</p>
        <p>AttributeDataType="xs:anyURI"&gt;
&lt;Value&gt;opc.tcp://pplab_master:48010/&lt;/Value&gt;
&lt;/Attribute&gt;
[..]
&lt;RoleRequirements RefBaseRoleClassPath="
DataVariableRoleClassLib/DataSource/OPCUAServer" /&gt;
&lt;/InternalElement&gt;
&lt;InternalElement Name="PLCProgram" ID="
GUID_33" RefBaseSystemUnitPath="</p>
        <p>DataVariableExampleSUCLib/OPCUA-Example"&gt;
[..]
&lt;Attribute Name="OPCUA-Variable_productType"</p>
        <p>AttributeDataType="xs:string"&gt;
&lt;RefSemantic CorrespondingAttributePath="aml
-dataSourceType:OPCUA" /&gt;
&lt;Attribute Name="NodeId"&gt;
&lt;Value&gt;ns=4;s=PROGRAM1.productType&lt;/Value&gt;
&lt;/Attribute&gt;
&lt;Attribute Name="RefDataSource"&gt;
&lt;Value&gt;5b196fe6-83a5-4b6e-b011</p>
        <p>f21e3436ce1b&lt;/Value&gt;
&lt;/Attribute&gt;
&lt;/Attribute&gt;
&lt;/InternalElement&gt;
3) Applied agent types: Within this infrastructure of
modular self describing modules an MAS was set up that was
taught to interpret and execute a production process description
given in AutomationML. The agents automatically acquired
the information of the process order, the capabilities of the
modules and the path the product may travel through the
system. Therefor the following agent types were designed.</p>
        <sec id="sec-3-3-1">
          <title>Resource</title>
        </sec>
        <sec id="sec-3-3-2">
          <title>Agent</title>
        </sec>
        <sec id="sec-3-3-3">
          <title>Product</title>
        </sec>
        <sec id="sec-3-3-4">
          <title>Agent</title>
        </sec>
        <sec id="sec-3-3-5">
          <title>Product</title>
        </sec>
        <sec id="sec-3-3-6">
          <title>Management</title>
        </sec>
        <sec id="sec-3-3-7">
          <title>Agent</title>
        </sec>
        <sec id="sec-3-3-8">
          <title>Resource</title>
        </sec>
        <sec id="sec-3-3-9">
          <title>Management</title>
        </sec>
        <sec id="sec-3-3-10">
          <title>Agent</title>
        </sec>
        <sec id="sec-3-3-11">
          <title>Logistic</title>
        </sec>
        <sec id="sec-3-3-12">
          <title>Agent Logistic Management Agent</title>
          <p>Resource Agent (RA): RAs manage resources. They
are responsible for the initialization of resources, the
execution of processes and the prevention of multiple
resource allocation. Resource agents serve as gateways
between the field level and the MAS.</p>
          <p>Resource Management Agent (RMA): The RMA
manages the Resource Agents. Whenever a resource is added
to or removed from the (model of the) factory,the RMA
will adjust the number RAs accordingly.</p>
          <p>Logistic Agent (LA): A LA offers some simple transport
service to the LMA. (simple in the sense of its abstract
representation within the model)
Logistic Management Agent (LMA): The LMA offers
a complex transport service to the PA. If a good has to
be moved from one place to another, the LMA will (use
sophisticated optimization methods in order to) find the
shortest path from target to destination. Afterwards it will
search for LAs that offer the simple transport services
necessary in order to execute the complex transport and
call for proposals. The cheapest transport offer will be
accepted and scheduled.</p>
          <p>Product Agent (PA): The PA is responsible for the
production of a single product. Upon creation, it will
determine the production steps that have to be performed
in order to create the product (with respect to certain
constraints, e.g deadlines, costs or quality). It will then
sequentially find RAs that offer the execution of the
next production step, call for proposals, commission the
transport (to the cheapest available resource), configure
the machine(s) and execute the appropriate process.
Product Management Agent (PMA): The PMA
manages production orders. When an order is placed, the
PMA spawns new Pas.</p>
          <p>Directory Facilitator: The DF provides a central
discovery service for services offered by other agents in the
MAS architecture.</p>
        </sec>
      </sec>
      <sec id="sec-3-4">
        <title>C. Application Scenarios</title>
        <p>
          The presented testbed primarily serves experiments for
(optimization) methods of the industrial engineering. Different
setups and production program plans are executed on the
system by the agents. According to the physical arrangement
the setups are published and updated to the system in form
of AutomationML models. Additionally an agent monitors
process variables and calculates several KPIs to monitor the
performance of a solution. This way the production system
may be easily reconfigured to simulate different layouts and
programs for a production process. A second scenario that
was successfully implemented for a doctoral thesis is a fault
detection and classification system [
          <xref ref-type="bibr" rid="ref38">38</xref>
          ]. The applied MAS
tracked KPIs and component state indicators. This data was
evaluated against constraints to identify errors. Based on the
fault register recovery strategies where performed by other
agents. A third scenario was implemented which realized
automatic reconfiguration of the system. The modules and
products were equipped with fiducials and a computer vision
system based on openCV was implemented that tracks the
presence and positional relation of products and resources. To
simulate a fault the fiducial of a resource was covered and got
invisible for the agents this way. A specific agent recognizes
the change and updates the AutomationML knowledgebase.
Supervisory agents then successfully adjust the production
and transportation routes in the system based on the dynamic
model. The mentioned scenarios have proven applicable and
give the opportunity to be scaled to industrial implementation.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>V. CONCLUSION</title>
      <p>In this paper it has been shown how the open industrial
standards OPC UA for service-oriented communication as
well as AutomationML for semantic data exchange meet the
requirements of the establishment of a Smart Manufacturing
Component (I40 component). Providing a single service
interface to the semantical description as well as to the behavior
within a self-contained component the infrastructure of Self-X
is realized upon already available standardized technologies.
The presented solution scales from legacy to modern
hardware as well as from small facilities to huge geographically
spread value networks. The applied use cases have shown
the applicability of the approach and the ease of integration
with innovative applications. This proposal enables a lot of
opportunities for the implementation of a knowledge base
system for production and will be the basement for further
work of the authors on third party application integration and
dynamically evolving skillsets of agents.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>H.</given-names>
            <surname>Kagermann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Helbig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Hellinger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Wahlster</surname>
          </string-name>
          ,
          <article-title>Recommendations for Implementing the Strategic Initiative INDUSTRIE 4.0: Securing the Future of German Manufacturing Industry ; Final Report of the Industrie 4</article-title>
          .0 Working Group. Forschungsunion,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>P. I.</surname>
          </string-name>
          <year>4</year>
          .0, “
          <article-title>Structure of the administration shell - continuation of the development of the reference model for the industrie 4.0 component.” ebook (PDF) available</article-title>
          at https://www.plattformi40.de/I40/Redaktion/EN/Downloads/Publikation/structure-of-theadministration-shell.html,
          <volume>01</volume>
          .
          <fpage>04</fpage>
          .
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>DIN</given-names>
            <surname>Spec</surname>
          </string-name>
          , “
          <volume>91345</volume>
          :
          <article-title>Reference architecture model industry 4.0 (rami 4.0</article-title>
          ),” DIN Spec,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>A. L</surname>
          </string-name>
          u¨der,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schleipen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Schmidt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Pfrommer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Henßen</surname>
          </string-name>
          , “
          <article-title>One step towards an industry 4.0 component,”</article-title>
          <source>in 2017 13th IEEE Conference on Automation Science and Engineering (CASE)</source>
          , pp.
          <fpage>1268</fpage>
          -
          <lpage>1273</lpage>
          ,
          <year>Aug 2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>DIN</given-names>
            <surname>Spec</surname>
          </string-name>
          , “
          <volume>16592</volume>
          :
          <article-title>Combining opc unified architecture and automation markup language</article-title>
          ,
          <source>” DIN Spec</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          ,
          <article-title>An Introduction to MultiAgent Systems</article-title>
          . Wiley Publishing, 2nd ed.,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Unland</surname>
          </string-name>
          , “Chapter 2 -
          <string-name>
            <given-names>Industrial</given-names>
            <surname>Agents</surname>
          </string-name>
          ,” in Industrial
          <string-name>
            <surname>Agents (P. Leita</surname>
          </string-name>
          <article-title>˜o and S</article-title>
          . Karnouskos, eds.), pp.
          <fpage>23</fpage>
          -
          <lpage>44</lpage>
          , Boston: Morgan Kaufmann,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P.</given-names>
            <surname>Leita</surname>
          </string-name>
          <article-title>˜o, “Agent-based distributed manufacturing control: A stateof-the-art survey</article-title>
          ,
          <source>” Engineering Applications of Artificial Intelligence</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>7</issue>
          , pp.
          <fpage>979</fpage>
          -
          <lpage>991</lpage>
          ,
          <year>2009</year>
          .
          <article-title>Distributed Control of Production Systems</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>P.</given-names>
            <surname>Castellini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Cristalli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Foehr</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Leitao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Paone</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Schjolberg</surname>
          </string-name>
          , J. Tjønna˚s,
          <string-name>
            <given-names>C.</given-names>
            <surname>Turrin</surname>
          </string-name>
          , and T. Wagner, “
          <article-title>Towards the integration of process and quality control using multi-agent technology</article-title>
          ,
          <source>” in IECON 2011 - 37th Annual Conference of the IEEE Industrial Electronics Society</source>
          , pp.
          <fpage>421</fpage>
          -
          <lpage>426</lpage>
          ,
          <year>Nov 2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Onori</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Maffei</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Durand</surname>
          </string-name>
          , “
          <article-title>The ideas plug and produce system</article-title>
          ,” p.
          <volume>339</volume>
          ,
          <issue>01</issue>
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>N.</given-names>
            <surname>Antzoulatos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Castro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Scrimieri</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Ratchev</surname>
          </string-name>
          , “
          <article-title>A multi-agent architecture for plug and produce on an industrial assembly platform,” Production Engineering</article-title>
          , vol.
          <volume>8</volume>
          , pp.
          <fpage>773</fpage>
          -
          <lpage>781</lpage>
          ,
          <year>Dec 2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>P.</given-names>
            <surname>Leita</surname>
          </string-name>
          ˜o,
          <string-name>
            <given-names>J.</given-names>
            <surname>Barbosa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Vrba</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Skobelev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tsarev</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Kazanskaia</surname>
          </string-name>
          ,
          <article-title>“Multi-agent system approach for the strategic planning in ramp-up production of small lots</article-title>
          ,” in
          <source>2013 IEEE International Conference on Systems, Man, and Cybernetics</source>
          , pp.
          <fpage>4743</fpage>
          -
          <lpage>4748</lpage>
          ,
          <year>Oct 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>F. L.</given-names>
            <surname>Almeida</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. M.</given-names>
            <surname>Terra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Dias</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G. M.</given-names>
            <surname>Goncalves</surname>
          </string-name>
          , “
          <article-title>Adoption issues of multi-agent systems in manufacturing industry</article-title>
          ,
          <source>” in 2010 Fifth International Multi-conference on Computing in the Global Information Technology</source>
          , pp.
          <fpage>238</fpage>
          -
          <lpage>244</lpage>
          ,
          <year>Sept 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>A.</surname>
          </string-name>
          <article-title>L u¨der, A</article-title>
          . Cala´,
          <string-name>
            <given-names>J.</given-names>
            <surname>Zawisza</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosendahl</surname>
          </string-name>
          , “
          <article-title>Design pattern for agent based production system control - A survey,”</article-title>
          <source>in 2017 13th IEEE Conference on Automation Science and Engineering (CASE)</source>
          , pp.
          <fpage>717</fpage>
          -
          <lpage>722</lpage>
          ,
          <year>Aug 2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15] “
          <article-title>Innovative modelling approaches for production systems to raise validatable efficiency (improve)</article-title>
          ..” http://www.improve-vfof.eu/. Accessed:
          <fpage>2017</fpage>
          -12-19.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <article-title>“Perform - production harmonized reconfiguration of flexible robots and machinery</article-title>
          ..” http://www.horizon2020-perform.eu. Accessed:
          <fpage>2017</fpage>
          -12- 19.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <source>[17] “Basissystem industrie 4</source>
          .
          <fpage>0</fpage>
          ..” https://www.basys40.de/. Accessed:
          <fpage>2017</fpage>
          - 12-19.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Luo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Duan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pace</surname>
          </string-name>
          , and G. Fortino, “
          <article-title>Workshop networks integration using mobile intelligence in smart factories,” IEEE Communications Magazine</article-title>
          , vol.
          <volume>56</volume>
          , pp.
          <fpage>68</fpage>
          -
          <lpage>75</lpage>
          ,
          <year>Feb 2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Savaglio</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zhou</surname>
          </string-name>
          , “
          <article-title>Toward opportunistic services for the industrial internet of things</article-title>
          ,”
          <source>in 2017 13th IEEE Conference on Automation Science and Engineering (CASE)</source>
          , pp.
          <fpage>825</fpage>
          -
          <lpage>830</lpage>
          ,
          <year>Aug 2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fortino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Russo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Savaglio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Shen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zhou</surname>
          </string-name>
          , “
          <article-title>Agentoriented cooperative smart objects: From iot system design to implementation,”</article-title>
          <source>IEEE Transactions on Systems, Man, and Cybernetics: Systems</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>A</surname>
            . L u¨der,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
            , and
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Drath</surname>
          </string-name>
          ,
          <source>Standardized Information Exchange Within Production System Engineering</source>
          , pp.
          <fpage>235</fpage>
          -
          <lpage>257</lpage>
          . Cham: Springer International Publishing,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <surname>A</surname>
            . L u¨der,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
            , and
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Rosendahl</surname>
          </string-name>
          , “
          <article-title>Data exchange toward plc programming and virtual commissioning: Is automationml an appropriate data exchange format?</article-title>
          ,” in
          <source>2015 IEEE 13th International Conference on Industrial Informatics (INDIN)</source>
          , pp.
          <fpage>492</fpage>
          -
          <lpage>498</lpage>
          ,
          <year>July 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>L.</given-names>
            <surname>Berardinelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Biffl</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Lu¨ der, E. Ma¨tzler, T. Mayerhofer,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wimmer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Wolny</surname>
          </string-name>
          , “
          <article-title>Cross-disciplinary engineering with automationml and sysml</article-title>
          ,” vol.
          <volume>64</volume>
          , 01
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24] AutomationML e.V., “Automationml - current projects.” https://www.automationml.org/o.red.c/projects.html,
          <year>2018</year>
          . Accessed:
          <fpage>2018</fpage>
          -05-10.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <surname>DIN</surname>
            ,
            <given-names>DKE</given-names>
          </string-name>
          , VDE, “
          <article-title>German standardization roadmap on industrie 4.0</article-title>
          .” Available at https://www.din.de/de/forschungund-innovation/themen/industrie4-0/roadmap-industrie40-
          <volume>62178</volume>
          ,
          <fpage>18</fpage>
          .
          <fpage>05</fpage>
          .
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>W.</given-names>
            <surname>Mahnke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.-H.</given-names>
            <surname>Leitner</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Damm</surname>
          </string-name>
          , OPC unified architecture.
          <source>Springer Science &amp; Business Media</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>M.</given-names>
            <surname>Schleipen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Henßen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Sauer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. D</given-names>
            <surname>'Agostino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Damm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Dogan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Ladiges</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Ewertz</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Go¨ ssling, T. Holm,
          <string-name>
            <given-names>S.</given-names>
            <surname>Hoppe</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Lu¨ der,
          <string-name>
            <given-names>N.</given-names>
            <surname>Schmidt</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Wilmes</surname>
          </string-name>
          , “
          <article-title>Harmonisierung im Kontext Industrie 4.0 AutomationML und</article-title>
          OPC UA,”
          <volume>06</volume>
          2017.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>M.</given-names>
            <surname>Schleipen</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Drath</surname>
          </string-name>
          , “
          <article-title>Three-view-concept for modeling process or manufacturing plants with AutomationML</article-title>
          ,” in
          <source>2009 IEEE Conference on Emerging Technologies Factory Automation</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <year>Sept 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <surname>A</surname>
            . L u¨der,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
            , and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Helgermann</surname>
          </string-name>
          , “
          <article-title>Lossless exchange of graph based structure information of production systems by AutomationML</article-title>
          ,” in
          <source>2013 IEEE 18th Conference on Emerging Technologies Factory Automation (ETFA)</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <year>Sept 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>H.</given-names>
            <surname>Lieberman</surname>
          </string-name>
          , “
          <article-title>Using Prototypical Objects to Implement Shared Behavior in Object Oriented Systems</article-title>
          ,” pp.
          <fpage>214</fpage>
          -
          <lpage>223</lpage>
          ,
          <year>1986</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>M.</given-names>
            <surname>Schleipen</surname>
          </string-name>
          , “
          <article-title>A concept for conformance testing of automationml models by means of formal proof using ocl</article-title>
          ,” in
          <source>2010 IEEE 15th Conference on Emerging Technologies Factory Automation (ETFA</source>
          <year>2010</year>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>5</lpage>
          ,
          <year>Sept 2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>M.</given-names>
            <surname>Sabou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ekaputra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Kovalenko</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Biffl</surname>
          </string-name>
          , “
          <article-title>Supporting the engineering of cyber-physical production systems with the automationml analyzer</article-title>
          ,
          <source>” in 2016 1st International Workshop on Cyber-Physical Production Systems (CPPS)</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          ,
          <year>April 2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <surname>I.</surname>
            Grangel-Gonza´lez,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Collarana</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Halilaj</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Lohmann</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Lange</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.-E. Vidal</surname>
            , and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Auer</surname>
          </string-name>
          , “
          <article-title>Alligator: A Deductive Approach for the Integration of Industry 4.0 Standards,” in Knowledge Engineering and Knowledge Management (E</article-title>
          . Blomqvist,
          <string-name>
            <given-names>P.</given-names>
            <surname>Ciancarini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and F. Vitali, eds.),
          <source>(Cham)</source>
          , pp.
          <fpage>272</fpage>
          -
          <lpage>287</lpage>
          , Springer International Publishing,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>M.</given-names>
            <surname>Obst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Holm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Urbas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Fay</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kreft</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            <surname>Hempen</surname>
          </string-name>
          , and T. Albers, “
          <article-title>Semantic description of process modules</article-title>
          ,” in
          <source>2015 IEEE 20th Conference on Emerging Technologies Factory Automation (ETFA)</source>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          ,
          <year>Sept 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          [35]
          <string-name>
            <given-names>J.</given-names>
            <surname>Scott</surname>
          </string-name>
          , “
          <article-title>A practical guide to microservices and containers.” eBook (pdf</article-title>
          ) available at https://mapr.com/ebooks/microservices-andcontainers/,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          [36]
          <string-name>
            <given-names>V. G. F. .</given-names>
            <surname>Spec</surname>
          </string-name>
          , “
          <volume>2653</volume>
          part3:
          <article-title>Multi-agent systems in industrial automation application</article-title>
          ,” VDI/VDE Spec,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          [37]
          <string-name>
            <given-names>I. E.</given-names>
            <surname>Commission</surname>
          </string-name>
          , “
          <article-title>Programmable controllers - part 3: Programming languages</article-title>
          ,
          <source>” IEC Spec</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          [38]
          <string-name>
            <given-names>H.</given-names>
            <surname>Bayanifar</surname>
          </string-name>
          ,
          <article-title>Agent-based mechanism for smart distributed dependability and security supervision and control of Cyber-Physical Production Systems</article-title>
          .
          <year>2017</year>
          . xvi, 159 Seiten, Illustrationen.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>