EURIDICE – An enabler for intelligent cargo for the logistics sector

EURIDICE – An enabler for intelligent cargo
for the logistics sector
Jens SCHUMACHER
Process and Product Engineering, University of Applied Sciences
Dornbirn, 6850, Austria
and
Manfred GSCHWEIDL
Process and Product Engineering, University of Applied Sciences
Dornbirn, 6850, Austria
and
Mathias RIEDER
Process and Product Engineering, University of Applied Sciences
Dornbirn, 6850, Austria
ABSTRACT
EURIDICE is an EU funded project which deals with the
development and implementation of new concepts in the area of
intelligent Cargo. The goal of EURIDICE is to develop a free
and open standards based platform for intelligent goods, by
using distributed mobile systems. This paper will provide an
overview about the architecture and key technologies.
Keywords: Distributed intelligence, Intelligent goods,
Logistics, Mobile Agents, SOA, JADE, FIPA, Collaboration
platform and communication infrastructure
goal therefore has to be to increase the utilization of the
transport vehicles..
A high quality standard in this area is the basic prerequisite for
the success. The investments in mobile infrastructures related to
information and communication (e.g. UMTS, Galileo) allow a
re-orientation of the logistics control systems to guarantee a
comprehensive quality assurance of the logistics processes.
Starting point for the project EURIDICE [2] is the single
logistics object which should be pursued and controlled
individually. By using mobile systems and communication
resources logistics objects are able to reach a very high degree
in self-control, which allows them to immediately react to
unexpected events independently of central control structures..
INTRODUCTION
Transport and logistics act in a worldwide distributed business
world as an aorta of the economic system. The Logistics area
has seen a huge growth in the last few years. This growth is on
the one hand a result of the globalization which has led to
international supply chains requiring sophisticate logistics
concepts. The exponential growth of ecommerce has
additionally boosted the need for logistics concept. While the
overall consignment number has increased the consignment size
has decreased, leading to more and smaller consignments that
need to be transported to different locations. The smaller
consignments pose a huge problem to the logistics services
providers and their goal to keep the bundling of the
consignments as long as possible in order to enable the best
usage of the transport vehicles with as much consignments as
possible. This goal hasn‟t been reached so far and thus e.g. the
utilization of trucks is in some countries lower than 70% within
the EU. [1] This rather weak utilization of the transport vehicles
does not only pose an economic problem to the logistics
services providers as well as forwarders, but also poses a
substantial problem to our environment. The emissions caused
by transport are still very high, as for example within the EU the
transport sector accounted for 23% of total CO2 emissions, with
road transport generating 71% of total transport emissions in
2006, and are expected to increase until 2030. [1] The ultimate
18
SYSTEMICS, CYBERNETICS AND INFORMATICS
The basic idea of EURIDICE is the implementation of a
federative platform for information services related to
intelligent cargo in the centre are the single goods and their
interactions with the most different IT systems and users.
By utilization of new information and communication
infrastructures and usage of the provided services, it is possible
to define a uniform information triple item (time, place, status)
for all transported goods in Europe. Currently this data is only
used for „tracking and tracing“. EURIDICE is going to develop
new value added services on this data which should allow an
individual self-control of the transported goods. For an effective
implementation the data acquisition and decision-making
should result to the greatest extent possible on mobile devices,
installed at the cargo (e.g. a box) itself, being able to react on
one hand without delays to logistics events and on the other
hand to reduce communication overheads.
VISION OF INTELLIGENT CARGO
The fundamental question that is related to this issue is whether
it is worthwhile to retain to structured business processes or
whether it would be better to define a new self-controlled
business process regarding future logistics operations. The
European project EURIDICE is investigating the later approach.
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524
The project is based on the assumption that in the future the
usage of passive and active RFID chips will increase and as
such the availability of intelligent mobile devices will likewise
also increase. This leads to a situation where more and more
local intelligence is available which allows the local processing
of information and thus leads to local decisions on the basis of
this information. EURIDICE tributed to the fact that computing
capabilities are increasingly decentralized, which leads to a
situation where distributed computing capabilities are used on
the spot to make local decisions within the local environment
and current context, instead of taking the typical hierarchical
client server approach.
The core design of the platform is based on available standards
like SOA (Service Orientated Architecture) and Multi-AgentSystems (MAS). This core is enhanced with implemented
services derived from extensive requirements analysis from
different stakeholders in logistics chains, e.g. logistics services
providers, infrastructure providers, ports and authorities and
production companies (Figure 1).
ARCHITECTURE
Figure 2: General levels and scopes of EURIDICE services
The common EURIDICE specific services (CS) allow the
composition of applications specific services for the definition
and orchestration of business processes on top of them. These
application specific services or business processes can also be
used by other application specific services and processes. On
the lower levels of the framework, the generic components
Figure 1: EURIDICE vision of intelligent cargo and value added services for different stakeholders
The project builds upon an ICT platform providing value added
services on top of a SOA infrastructure. Through combination
and orchestration of the available services holistic business
processes can be implemented on top of the platform. By
utilization of the offered services and implementation of the
concepts for “intelligent cargo” the platform can react
autonomously on defined events.
The framework and platform consist out of services at different
levels and scopes. Roughly these services can be categorized as
shown in Figure 2.
ISSN: 1690-4524
SYSTEMICS, CYBERNETICS AND INFORMATICS
level, EURIDICE provides generic services for internal use
within the framework..
The concept of a distributed and intelligent platform intends that
every commodity has its own intelligence. Basically for the
efficient tracking and tracing of the goods, but furthermore to
receive and evaluate other relevant information regarding the
transported goods on a real-time basis.
Around these single intelligent goods an open platform is
created which integrates the preserved information and offered
services with existing (legacy) systems. Thus the
interoperability with other software products is thereby
guaranteed on the basis of established standards and
technologies (Figure 3).
VOLUME 8 - NUMBER 2 - YEAR 2010
19
The central part of the system, allows the integration of user
defined business processes. As mentioned in the introduction of
this paper, the EURIDICE system lifts single cargo items into a
top-position within the business processes. Enriching the
capabilities and the responsibilities of cargo items not only on a
conceptual level, can be reached by equipping them with
computation capabilities and integrating those parts into the
business processes, which means not to just use them as a
source of information, but additionally promoting them to the
central part of the system. Therefore cargo-related processes are
directly driven by the concerned cargo items.
Figure 3: EURIDICE services orchestration and business
process integration
The communication between the single services in the SOA is
handled by an “Enterprise Service Bus” (ESB). On top of the
ESB a Business Process Engine is used for the orchestration and
execution of these services and the business processes needed
for the different business cases.
One key issue for the easy adoption of the system is the
interoperability and adaptability not only for the implemented
pilot applications, but also for the future therefore open
standards are a must.. The realized web services are based on
well known and established standards (e.g. SOAP, WSDL,
UDDI, etc.). For the implementation and modeling of business
processes on top of them BPEL (Business Process Execution
Language) and BPMN (Business Process Modeling Notation)
are used.
To achieve a close cooperation of backend systems and the
transported intelligent goods, the architecture can be broken up
in a centralized and a distributed part.
EURIDICE framework – centralized part
The centralized part of the EURIDICE framework consists of a
set of services intended to offer central management- and
infrastructure-components and to represent a common entry
point for end-users. From the customers‟ point of view the
EURIDICE framework appears as a coherent system, where the
more lower-level and distributed part is not visible to
components outside the system as shown in Figure 4.
cmp EURIDICE framew ork
EURIDICE
«SOA»
EURIDICE - centralised
consume services
Business Serv ices
«SOAP»
End-User
consume
services
«SOAP»
System Serv ices
EURIDICE - distributed
external System
*
Security Framw ork
Communication Serv ices
Figure 4: High level architecture of the EURIDICE framework
– Customers‟ point of view (UML Component Diagram)
20
SYSTEMICS, CYBERNETICS AND INFORMATICS
EURIDICE framework – distributed
Within the EURIDICE system single cargo items are not only
virtually present as a single data-set within an ERP system.
Instead, transported goods become pro-active parts of the
software. They control their own lifecycle and their own
processes. The solution of our choice to enable cargo items to
actively take part on the business-processes is to implement a
Multi-Agent System [3][4] where cargo items own their virtual
representation, so called agents, on intelligent devices, as
described later on.
In the next section an overview about the main architecture
components of the platform will be provided.
EURIDICE ARCHITECTURE COMPONENTS
In Figure 5 the main components of the EURIDICE architecture
and their relationships are shown from a functional viewpoint.
A more detailed description of them, their features and their role
are provided in the following paragraphs. [5]
ecNodes
The abstract concept of an ecNode (EURIDICE Compliant
Node - pronunciation "easy node") is used for the reduction of
complexity in representation for all business objects (e.g. cargo,
means of transportation, services and even human operators).
An ecNode has a unique identifier and additionally has a
reference to an information provider, providing additional
information when authorized. Therefore global identification
and discovery services, as described in the concepts of SOA, are
included in the architecture for information retrieval based on
an ecNode identifier.
Intelligent Cargo Network
The Intelligent Cargo Network is formed by identified cargo
objects. It consists of a centralized and distributed part and
provides the glue between them. It offers and defines the
concept of intelligent cargo as the combination of cargo, a cargo
centric approach to deal with related information and the use of
associated Cargo Agents to assist in the exchange of cargo
related information. The Assisting Cargo Agent (ACA) is a
special kind of information provider within the Intelligent
Cargo Network. It is introduced and used as a single point of
access for the exchange of information about cargo, and acts
like a virtual representation for an intelligent cargo item that
supports information access. The references to cargo
information are collected in an electronic cargo document,
maintained by the Assisting Cargo Agent. The Assisting Cargo
Agent represents only a purely virtually representation of the
cargo, while the Operational Cargo Agent (OCA) assists the
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524
Figure 5: EURIDICE architecture and components
cargo item in the physical world by collecting and distributing
information. The Operational Cargo Agent also includes local
intelligence and can use it to:
 take proactive initiatives related to real-time
information,
 provide information to interested parties
 make suggestions for measurements to take
 cooperation with other nearby intelligent cargo items,
by sharing measurements for instance, as well as with
the back-office
As implementation costs are still an issue, especially with low
value goods, the functionalities can be delegated to a nearby
mobile ecNode, e.g. container or onboard unit of a truck or
train.
of specific end-user-applications and integration with legacy
systems.
Virtual Service Point
This represents in the developed architecture a component
regarding security issues. Information and services can be only
accessed by a Virtual Service Point, enforcing security
restrictions and providing secure communication services, to
support the usage of one common platform between business
entities and allows secure communication in a peer-to-peer like
network. The Virtual Service Point routes authorized
information and also requests for information to the required
services. In this part of the EURIDICE architecture additionally
also services will be hosted and implemented to allow the usage
Context Detection
For providing the ability of interaction between cargo objects
and systems regarding the environment of a cargo item, a
common ontology and necessary data models are developed as
part of the semantic framework, to enable services to detect and
relate to the current context of cargo items. This provides a
common understanding between EURIDICE services in the
context of the cargo item, and additionally by usage of sensor
measurements, simple "tracking & tracing" information can be
enriched with additional dynamic accessible information related
to the current cargo context, as well as the interacting entities,
ISSN: 1690-4524
SYSTEMICS, CYBERNETICS AND INFORMATICS
Semantic Framework
For cooperation across organizations and business domains, a
semantic framework, based on common data models and
ontologies [6], reduces the barriers for adoption and
communication between business entities. Therefore a semantic
framework has been developed to support the usage and
adoption of the core services of the platform, but additionally
also business specific services, based on business related data
models elaborated with the pilots in the project, supporting the
development of end-user-applications and integration with
legacy systems.
VOLUME 8 - NUMBER 2 - YEAR 2010
21
e.g. freight forwarders, authorities and logistics services
providers.
Cargo Intelligence
EURIDICE promotes as one of its key solutions the already
mentioned Intelligent Cargo (IC) concept supported by global
reasoning. Therefore a standardized knowledge structure
(provided by an ontology) extended by rules, relations and
actual measurements, trends and unusual deviations being
determined are shared by the participating entities in the
platform. This knowledge structure cannot be only used for
centralized decision-making, but also for decision-making in the
field, at the intelligent cargo itself for assisting other entities,
e.g. human operators, in the decision-making process.
Orchestration
Orchestration relates to the same concept of a SOA, providing
mechanisms for orchestration of services across business
domains and to facilitate cooperation between stakeholders in
the supply chain. This enables the combination of different
services provided by participants in supply chains and users of
the platform. Therefore highly specialized applications can be
implemented based on single services or also by usage of sub
processes.
Mobile Services
This is a collection of cargo centric mobile services. They are
intended for the observation of the cargo, simple related to
"tracking & tracing" and advanced features, e.g. sensing and
anomaly detection. These services usually are running on
mobile devices (intelligent devices), e.g. cargo items,
containers, vehicles. Although these services are also available
for cargo items only equipped with passive RFID-tags or
barcode, with maybe less functionality.
Communication Services
Communication services are handling any kind of connection
between users, vehicles and intelligent cargo items, as well the
connection between intelligent cargo items and available
sensors, e.g. RFID antennas, GPS receivers, temperature,
humidity or any other available sensors available in the
platform.
In a more technological view, these services are implemented
by using a layering architecture related to the concepts of SOA,
to reduce complexity in the system development phase itself
and later to facilitate the implementation of business processes
(Figure 7).
SERVICES PLATTFORM
The main objective of the project is to provide an information
services platform with the focus on individual cargo items, their
interactions with the surroundings and the stakeholders.
EURIDICE therefore provides a fixed and mobile web services
infrastructure, for enabling real-time access to cargo
information, if needed, to private and public stakeholders along
the transportation chain, supporting information retrieval related
to the cargo for back-offices and field staff. The provided
services can be divided into the following categories shown in
Figure 6.
Figure 7: High level abstraction layering
Following layers are defined in a first high-level layering
approach:
Business layer: In this layer agreements and
procedures required for the usage and management of the
application components as well as information to be exchanged
are defined. This layer includes no software components, only
necessary definitions.
Application layer: This layer contains the business
services processing components.
Figure 6: EURIDICE services platform
Business Services
These are intended as a set of fixed services for enabling
integration with back-offices, 3rd parties and legacy systems.
These services can be used for integration with existing
systems, e.g. Enterprise Resource Planning (ERP), Inventory
Management and Fleet Management.
22
SYSTEMICS, CYBERNETICS AND INFORMATICS
Communication layer: This layer provides the
necessary components for secure communication and
information exchange independent form the underlying
platform.
Platform layer: This layer is divided into mobile and
fixed platform, as it represents the used hardware and the
required operating system, if applicable.
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524
Figure 8: EURIDICE applications domain sub-layers
The application layer domain has been divided into several sublayers for further reduction of complexity, as the main
development will be performed in this domain (Figure 8).
The intention of the sub-layers is as follows:
Virtual communication layer: This layer is intended
for decoupling of above services from a specific communication
protocol, additionally gateways and system specific adapters are
hosted here. One important component implemented in this
layer will be the transformation from SOAP (Simple Object
Access Protocol) to FIPA/ACL (Foundation for Intelligent
Physical Agents / Agent Communication Language) and vice
versa, exposing the available mobile agents (mobile services)
implemented by available frameworks and standards as web
services in a SOA.
Virtual service layer: This layer represents the single
point of access to services and provided information including
security and routing to applicable services after authorization.
System service layer: In this layer the EURIDICE
core services are hosted, implementing the concepts of ecNodes
and Intelligent Cargo Network, as well as other necessary
system services provided by the platform.
Business service layer: This layer contains supply
chain specific services providing also support for
implementation of other necessary business specific services.
Cargo Intelligence services, relying on actual input from other
business services, are also hosted here.
ISSN: 1690-4524
SYSTEMICS, CYBERNETICS AND INFORMATICS
Orchestration layer: This layer will contain the
specific
and
necessary
orchestration
services
for
implementation of business processes. As already described and
required by the concepts of SOA, the business processes will be
implemented with a service orchestration language, in
EURIDICE BPEL will be used.
The developed semantic framework is not visualized as a layer,
but noted in the figure as a collection of common data-models
and ontologies for a distinct interpretation of available
information.
The EURIDICE architecture is positioned on top of the OSI
(Open Systems Interconnection) [7] reference model and
utilizes available communication infrastructures and
communication protocols based on standards. A more detailed
description of the EURIDICE platform architecture can be
found in the official deliverables of the project.
The next part will deal in more detail with the distributed part
and related technologies of the platform.
INTELLIGENT DEVICES
The miniaturization and the increased availability of on-board
units allow the implementation of new business processes. The
EURIDICE project takes advantages out of this new trend and
extends the paradigm of ubiquitous computing by adding some
context awareness to the application. Context awareness means
that an application is able to sense its environment in terms of
VOLUME 8 - NUMBER 2 - YEAR 2010
23
detecting its global position, accessing several sensors or
reacting on environmental events. [3] Not only transport
vehicles, but also single cargo items can be equipped with quite
sophisticated devices communicating with each other and other
IT-systems. Every single part is responsible for a quite small
amount of functionality where a combination of the single parts
results in a quite complex and powerful system. If single nodes
of the system need to communicate involving mobile devices,
they need to use some wireless communication facilities like
Bluetooth for short range and GPRS or UMTS for long range
communication. The whole system becomes a distributed one
which appears coherent and continuous to an end user. [8][9]
As physical and virtual parts of the EURIDICE platform are
distributed to different components of the logistics
infrastructure, different stocks, warehouses, vehicles,
containers, single cargo items and additionally for the handling
of the virtual processes, such a federative system (or such parts
of a system) requires choosing of an architecture considering
the limitations and challenges of a mobile computing system.
[8]
Mobile devices work with limited resources. They have a
limited power supply, limited CPU processing power and
storage space. In most cases they do not guarantee a quality of
service concerning the wireless connections and there are many
more restrictions which have to be considered when developing
mobile applications.
Therefore the platform implies more or less sophisticated
devices (depending on the mission to fulfill) installed at single
cargo items where in the best case the architecture can use the
Multi-Agent approach with all its benefits. An intelligent,
mobile agent is a piece of software that acts on the behalf of
someone else, in our case on the behalf of a single cargo item
where it represents its interests and goals. Agents work
autonomously with absence of any user interaction. Their
lifecycle is strongly coupled to the lifecycle of their
representative. Agents work continuously and autonomously in
a particular environment. [10] They communicate and corporate
with each other, with other processes and their environment
(e.g.: via sensors) which makes them in some way intelligent
and context aware. Agents usually act dynamically; they adapt
their behavior based on the context they reside. The mobility of
an agent does not only indicate that the devices hosting the
software can be moved physically, it says that the agent itself is
strongly decoupled from the hardware it runs on. Mobile agents
are able to dynamically move from one machine to another.
This approach is called „migration‟ of an agent. [11] Such
systems are able to be physically present almost anywhere and
anytime which clearly seems to be very appropriate in the field
of logistics where moving goods physically, from one location
to another can be seen as the core competence of this business.
Being physically present does not offer a lot of advantages on
the first sight, but in a case where the need of real-time
information, including environmental data measured by sensors
(e.g. temperature via temperature sensor, position via GPSsensor, availability of specific cargo-items in a container
measured via RFID…) being physically present reduces
communication problems, overhead, and time delays. The
capabilities of the agents are offered as services and are the
foundation for providing cargo-centric information services,
observing the cargo and enabling an intelligent behavior for
single cargo items.
24
SYSTEMICS, CYBERNETICS AND INFORMATICS
Typical tasks performed by intelligent cargo agents could be
tracking and tracing of goods, anomaly detection concerning the
environment of the cargo in the meaning of critical
temperatures, g-forces or humidity levels, but also wrong
traveling directions, delays or early arrivals. The local
computation approach minimizes the use of centralized systems
to organize and redistribute the data.
By sensing the environment, the mobile and intelligent agents
can react on changes or events appropriately by initiating
counteractions or alarming a monitoring unit. An agent has the
ability of adaption, as already mentioned, which means they are
able to adapt their strategies to react on changes inside of the
agent network and the environment by learning from their
experiences.
The usage of a multi-agent architecture for this part of the
EURIDICE platform becomes even more adequate, if we also
consider design challenges apart from the enrichment of the
responsibilities of cargo items within their processes:
Maintainability: Usually it is not possible to
maintain distributed systems in traditional ways. The fact, that
devices of massively distributed systems are not physically
available to maintain them and deploy new versions of available
software, forces different approaches to ensure a maintainable
system. The multi-agent approach offers a way on one hand to
create a highly customizable solution, which can be adapted
dynamically at runtime, but also a highly maintainable solution,
where software updates are realized using the code-mobility
pattern of multi agent systems.
Scalability: Apparently software for the logistics
sector must always set a high value on scalability. The
diversified field of the logistics industry has to deal with an
unforeseeable amount of items, where software systems need to
be prepared for. In principal within a multi agent system an
agent offers a quite small amount of functionality. Single agents
use the capabilities of other agents to enrich their portfolio of
expertise and to reach their goals and vice versa. Enlarging the
functionality of the whole system means to simply introduce
more and new types of agents.
Robustness: Robust software systems are systems
that are prepared to handle failures and malfunctions. Especially
in our case, where mobile agents physically accompany cargo, it
is not possible to simply reboot a machine, if it fails, or restart a
software component if it crashed. The devices used are not
available for maintenance for a significant amount of time –
until they reach the next stop of their shipment. It is not feasible
to accept that in the meantime the system is not working
anymore. Again the multi agent paradigm offers a solution to
this problem. As it is the nature of multi agent systems to host
cooperating agents, they also cooperate to increase the
robustness of the system. This can lead to simple watchdog
functionality, where agents observe each other, but also to more
complex scenarios where redundant parts of the system are
created dynamically at runtime, to overcome a blackout of
single components. One possibility therefore could be the usage
of code mobility, where a single agent clones and migrates to
several other devices (devices attached to other cargo-items)
and instantly hibernates there. The hibernated version of this
agent will step in for the original one on failure.
Limitation of resources: Hosting software on single
cargo items, containers or vehicles requires the availability of
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524
hardware to host the software components. Where devices
located on vehicles can assume in some way to have a more or
less permanent power supply by being coupled to the vehicle‟s
engine, devices installed on container or item level must rely on
batteries and therefore can only use limited computation and
communication resources. Beside specialized hardware
delivered by several partners of the EURIDICE project to equip
containers and vehicles, the system must also rely on very basic
devices installed at single cargo items. Java enabled mobile
phones offer computation capabilities and communication
channels for both - long range (GMS, UMTS) and short range
communication (Bluetooth). The architecture of EURIDICE is
designed on one hand to offer the possibility to have fully
featured devices on item level to host complex software, but
also to offer mechanisms to deal with the problems of the
limitation of resources. Mainly the concepts of the robustness
and the key issues of the agent cooperation offer a way to share
the anyway rare resources to avoid redundancy of tasks where
not necessary.
Cargo cooperation: As mentioned before, one of the
key aspects of a multi agent system is the interaction between
agents and therefore cargo items. Cargo items interact for
different purposes: they query other items for some information,
they share knowledge and they consume services offered by
other items. These services can be either be business specific
services, as for example services for handling the business
processes of single items, or observation of certain
environmental parameters like the temperature or the position,
but also infrastructure related services, e.g. long range
communication channels, sharing of storage space or processing
power. The pro-active cooperation between cargo items is one
of the key aspects of the EURIDICE mobile platform. Not only
the functionality of each single item is enriched, if it is able to
use the functionality offered by other cargo items, also the
robustness, the overall performance and the scalability benefit
of the cooperation of single entities. The cooperation of items is
especially used between items in proximity (e.g. items inside
the same container). Equipping one device with a certain type of
sensor (e.g. a GPS sensor) makes all items in proximity aware
of their global position because the equipped item is willing to
share its capabilities with other items.
Agent cooperation – Agent hierarchy
The issues already mentioned occurring in mobile computing
applications need special attention because they are crucial. The
energy consumption and the costs of communication of single
cargo items are critical aspects of the overall architecture.
Beside the communication costs, the potential lack of
communication of mobile applications needs to be handled
properly. Additionally a large number of mobile agents will be
used in the project with the goal to observe the cargo, the
business state and to offer real time information for business
process optimization. Therefore within the EURIDICE
architecture the usage of a cargo-hierarchy is envisioned –
according to the physically occurring hierarchy of items. Single
cargo items are placed within containers, where containers are
transported by vehicles or stored within warehouses. Such a
hierarchy can be seen in Figure 9. According to this hierarchy
different responsibilities can be delegated to the single levels of
the hierarchy where common services like positioning services
or long range communication services are hosted on top levels
and more specialized services, like the observation of the
business process of a single item is hosted on the bottom of it.
ISSN: 1690-4524
SYSTEMICS, CYBERNETICS AND INFORMATICS
Figure 9: Basic agent hierarchy in EURIDICE
The top level in the hierarchy (Figure 9 - a) is responsible for
organizing the lower levels and to offer common generic
services and communication facilities to the outside world. It
represents the whole shipment for the rest of the system. The
top level agent is installed on a quite sophisticated device,
offering a more reliable power supply and worldwide
communication services like GSM/GPRS or UMTS. It offers
storage space to persist the data of the whole truck. Lower level
agents typically use the common services of the upper ones. So
they can be installed on more primitive and therefore cheaper
devices.
The second level of the hierarchy (Figure 9 - b) is responsible
for organizational issues within one container like item
registration and de-registration, routing messages from the
outside world to specific item agents, etc. It offers a yellow
page catalogue for all devices and sensors within the container.
This yellow page catalogue encourages the cooperation of
agents in proximity. Agents entering the container register the
services they offer at the yellow page catalogue where other
agents can query the yellow page catalogue for services they
need. The communication inside the container is mainly
handled via short range wireless communication technologies
like Bluetooth.
The third (Figure 9 - c) level consists of single cargo items.
Single items can be equipped with quite primitive devices. They
represent one single item, offer access to installed sensors on
item level and host parts of the stateful business services for the
concerning item. They can use the available resources of the
whole agent network within one truck to extend their
functionality.
Seamless integration of cargo items
We already discussed the integration of cargo items into the
EURIDICE platform with the usage of mobile, intelligent
agents hosted on devices installed directly at the cargo. But this
approach is not feasible for all scenarios appearing in the
logistics sector. There are cases where the hardware costs for
hosting agents would exceed the transportation costs for a huge
amount of cheap goods by far. Therefore only offering the
integration of transported goods via the discussed approach
does not seem to be sufficient to provide a pan-European
platform for logistics services providers. For such cases the
latest years have shown that RFID (Radio Frequency
Identification) provides a cheap way to integrate physical items
into software systems using the principles of the „internet of
VOLUME 8 - NUMBER 2 - YEAR 2010
25
things‟-paradigm. The mentioned approach strongly couples
real world objects to the objects representing them in the virtual
world. Today neither passive nor active RFID tags provide the
capabilities to host such complex software components like
mobile, intelligent agents. RFID tags usually show a passive
behavior. With the help of RFID readers they can be activated
which means to access and read the information they provide.
This information can limit itself to simple identification
purposes, but with semi-active RFID tags also more complex
capabilities like measuring of temperature can be realized.
The EURIDICE architecture also offers a way to integrate cargo
items only equipped with less sophisticated devices like RFID
tags. From a higher level point of view, such cargo items show
exactly the same behavior as items equipped with complex,
more sophisticated devices. That means that basically all the
services offered by EURIDICE-enabled cargo items are also
available for RFID tagged items. To realize this transparent
integration of different types of cargo, the architecture
introduces the already mentioned concept of the Assisting
Cargo Agent (ACA).
Assisting Cargo Agent – Operational Cargo Agent
Within EURIDICE a single cargo item is represented by a
software agent [12] as already introduced in the section above.
Cargo agents installed on devices in the field are called
Operational Cargo Agent (OCA). Operational cargo agents
always own a centralized counterpart – the assisting cargo
agent. The assisting cargo agent – as its name already says –
assists the operational one. It is deployed centrally within the
EURIDICE centralized framework. Conceptually there is a one
to one relation between an operational cargo agent and an
assisting one. The assisting cargo agent shows the same
interface and behavior as its operational counterpart. It is used
for different purposes:
Central point of communication: The assisting
cargo agent offers a communication channel for business
services. It does not only offer a channel for direct
communication with the operational agents – it also provides
the same interface. So business services can directly consume
services offered by operational agents using the interface
provided by its assisting, centralized counterpart. Business
services which need to interact with certain cargo items contact
the regarding assisting cargo agent, which is available centrally.
This concept strongly decouples centralized business services
from the cargo items in field. They do not need to deal with
communication issues and asynchronous interaction problems.
Support for poor equipped cargo: As already
described above, the assisting cargo agent acts as a proxy for
the operational one. Depending on the device used for the
operational cargo agent, different services can be hosted on it.
Fully featured devices are capable of hosting all kinds of
services, where more limited devices do not offer the resources
and capabilities to cover all the needed functionality. For that
purpose the service portfolio for one specific item can be
distributed between the assisting cargo agent and the
operational one (Figure 10).
Figure 10: Functionality of Assisting and Operational Cargo
If one thinks of a band containing all functionality concerning a
cargo, one can cut it into two pieces, where the left side of the
band is hosted centrally and managed by the assisting cargo
agent, and the right side is hosted remotely on mobile devices,
handled by the operational one.
Depending on the type of device used for the operational cargo
agent, the level of distribution respectively centralism can be
configured. Cutting between point (1) and (2) would result in a
very distributed approach where most of the functionality is
hosted remotely by the operational cargo agent. Cutting
between (3) and (4) shows the opposite behavior where a very
small part of the functionality is offered by the operational
cargo
agent
itself.
Services that cannot be hosted remotely are covered centrally by
the assisting cargo agent. Obviously this is not always possible
or will lead to a bad quality of information. Observing the
temperature of some cargo cannot be done centrally. For that
purpose again the cooperation of agents can be used to solve
such problems. Assisting cargo agents can delegate tasks to
other cargo items – namely to other assisting cargo agents. They
forward the tasks to their operational counter parts. That means
that assisting cargo agents are able to cooperate with operational
cargo agents from other cargo items which are in proximity of
its own cargo. This opens the opportunity to also have high
quality information gathered remotely for cargo that is only
poorly equipped.
Decoupling components: The centralized business
services, which live in a pure SOA world, must be decoupled
from the underlying Multi Agent System. The business services
use single cargo items as a direct source of information or they
receive triggered events from them, driving their processes.
Business services do not directly interact with operational cargo
agents – they communicate with the assisting counterpart,
which, from their point of view, directly represents the cargo
item. A strong coupling between the business services and the
operational cargo agents would not only lead to a hardly
maintainable system, but also the behavior and the performance
of the according web services would suffer. Where
asynchronous communication and concurrent execution are
central issues within multi agent systems, the consumption of a
SOA based business services should appear transparently and
reliable for end users. Assisting cargo agents handle requests
from business services. Parts of the service portfolio offered by
a cargo item can be hosted centrally inside the assisting cargo
agent, where other parts are hosted distributed directly at the
transportation good. If the assisting cargo agent cannot process
a request itself, it forwards it to its operational counterpart.
Handle connection problems and enhance
performance: As already discussed previously, mobile
distributed applications always need to handle weak
26
SYSTEMICS, CYBERNETICS AND INFORMATICS
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524
connections. This means that programs cannot rely on
permanent network connections. There are already mechanisms
available
to
handle
this
unreliable,
asynchronous
communication between mobile applications. From the business
services‟ point of view, the cargo itself is always reachable –
via the assisting cargo agent. Again this concept decouples the
SOA world from the distributed multi agent system. If the
assisting cargo agent cannot establish a connection, it still has
the opportunity to resolve the request via the resources available
centrally. Scenarios like the usage of cached data or the
cooperation with other assisting cargo agents can be used to
handle such problems. A possible scenario could be where a
business service requests the global position of an item. The
assisting cargo agent first can check for some cached data. If it
received the position from the operational cargo agent several
minutes ago, this position can still be used to enhance the
performance of the system. There is no real need to re-fetch the
GPS data from the operational cargo agent. If no cached data is
available, there is still the opportunity to ask other assisting
cargo agents and their related operational cargo agents in
proximity (e.g. inside the same container) available cargo items
for it. In such a case cached data from items in proximity can
also be used and saves unnecessary communication. If none of
the mentioned strategies can be applied to overcome a
connection problem, the assisting cargo agent needs to estimate
and interpolate the position of the cargo for determination. Of
course the quality of this estimation cannot compete in terms of
accurateness with data fetched from an operational agent.
Therefore generally, if a service requests information regarding
environmental parameters measured by cargo agents it needs
always to define a minimal quality for the information. This
enables the assisting cargo agent to use the most economical
strategy to respond to the request.
IMPLEMENTATION NOTES
For the implementation of the multi agent system architecture,
an open source and FIPA compliant framework called JADE is
used. It is published under LGPL and written in pure JAVA.
Therefore it enables the use of quite cheap, JAVA enabled
devices down to J2 Micro Edition – mobile-phones.
Software infrastructures and technologies
This part will give a short overview about the used software
infrastructures and technologies for the mobile agent concept
within EURIDICE.
FIPA (Foundation for Intelligent Physical Agents)
[13]: “FIPA is an IEEE Computer Society standards
organization that promotes agent-based technology and the
interoperability of its standards with other technologies.” [14]
FIPA defines some basic design issues, the services for the
infrastructure and a communication standard between agents in
a multi agent system. An FIPA standard compliant agent
ensures interoperability to other systems utilizing FIPA.
Moreover standardized libraries and middlewares can be used.
JADE [15]: “JADE (Java Agent DEvelopment
Framework) is a software Framework fully implemented in
Java language. It simplifies the implementation of multi-agent
systems through a middle-ware that complies with the FIPA
specifications.” [15]
ISSN: 1690-4524
SYSTEMICS, CYBERNETICS AND INFORMATICS
JADE uses a FIPA-compliant agent platform which includes an
Agent Management System (AMS), a Directory Facilitator (DF)
and an Agent Communication Channel (ACC).
-
The AMS is appropriate for the operations of the platform
(e.g. creating an agent); it offers the description of the
platform and is therefore the managing authority of it.
-
The DF offers information to other agents about agents
inside an agent network. Inside an agent network there
can be several DFs with the possibility of forming
federations.
-
The ACC is a CORBA IIOP server object which listens
for remote invocations.
JADE also offers some additional features like:
Agent platforms can be distributed on different devices
Connecting different agent platforms to a network
Graphical user interface for managing agents and agent
platforms
To run JADE on lightweight devices, which are running the
J2ME-CLDC / MIDP 1.0 environment, the JADE-LEAP [16]
library was developed.
CONCLUSION
The described platform offers an implementation of new
logistics services that are strictly goods or “things” related, thus
turning the current process orientated architectures of existing
logistics systems around by placing the goods in to the middle
of a SOA and the realized business processes on top of it. In
principle this change can be compared with the change from
functional to object orientated programming languages. This
fundamental change will allow a much better usage and
customization of services according to the real needs of users
involved in logistics chains and offer new possibilities for
adoption of innovative supply chain management concepts
across organizational boundaries. By rearranging the service to
concentrate on the individual cargo items, a new service
environment for the logistics sector is created that allows the
provision of innovative services on a coherent platform, leading
to increased efficiency in the logistics sector and therefore
supports the creation of environmental sustainability.
From a technical viewpoint the EURIDICE project combines
the most advanced technologies available today to create a
transparent and well-structured system that is able to handle the
breathtaking complexity of modern logistics scenarios. Dividing
the application into a more business-oriented, centralized part,
hosted in a pure SOA environment and in a distributed part
where single cargo items are included into the system with own
virtual representatives hosted on mobile devices in the field
offers various advantages. On one hand the possibility to
control the strategic high-level processes via business related
software like Business Process Engines and Service Oriented
Orchestration and on the other hand it also covers most specific
problem domains for single cargo items like sensing the
temperature inside a truck. The presented solution maintains a
clear and straight forward architecture and offers a scalable
solution that is able to cope with the dimensions of today‟s
logistics sector.
VOLUME 8 - NUMBER 2 - YEAR 2010
27
ACKNOWLEDGEMENT FOR PUBLICATIONS
This work was supported by the Seventh Framework
Programme of the EUROPEAN Commission through the
EURIDICE Integrated Project contract number ICT 2007216271
REFERENCES
[1] Directorate-General - Energy and Transport, European
Commission. Road Freight Transport Vademecum,
http://ec.europa.eu/transport/road/haulage/haulage_en.
htm, 2009.
[2] EURIDICE project website: http://www.euridice-project.eu.
[3] W. Jia & W. Zhou, Distributed Network Systems, New
York: Springer, 2004.
[4] P. Braun, Mobile Agents: Basic Concepts, Mobility
Models, and the “Tracy” Toolkit, San Francisco: Morgan
Kaufmann, 2005.
[5] EURIDICE Consortium, The EURIDICE Project.
http://www.euridice-project.eu/index.php/web/pubdocs,
2009.
[6] D. Fensel. Ontologies: Silver Bullet for Knowledge
Management and Electronic Commerce, Berlin:
Springer, 2001.
[7] OSI recommendation X.200: http://www.itu.int/rec/T-RECX.200-199407-I/en
[8] A. Greenfield, Everyware – The dawning age of
ubiquitous computing, Berkeley: New Riders Publishing,
2006.
[9] H. Attiya & J. Welch, Distributed Computing:
Fundamentals, Simulations and Advanced Topics
(2nd edition). Malden: John Wiley Interscience,
2004.
[10] K. P. Sycara, Multiagent systems. AI Magazine,
19(2), 1998.
[11] P. Braun & W. Rossak, Mobile Agents: Basic
Concepts, Mobility Models, and the Tracy Toolkit. San
Francisco: Morgan Kaufmann, 2004.
[12] J. M. Bradshaw, Software Agents, Cambridge: The MIT
Press, 1997.
[13] Fipa.org, FIPA Abstract Architecture Specification,
http://www.fipa.org/specs/fipa00001/SC00001L.pdf, 2003.
[14] FIPA organization website: http://www.fipa.org.
[15] JADE project website: http://jade.tilab.com.
[16] Bellifemine & Poggi & Rimassa, JADE – A White Paper,
http://jade.tilab.com/papers/PAAM.pdf, 2008.
28
SYSTEMICS, CYBERNETICS AND INFORMATICS
VOLUME 8 - NUMBER 2 - YEAR 2010
ISSN: 1690-4524