Migration
Migration of agents requires the transfer of the agent
data and the control state of the agent together with a
unique global agent identifier (extending the local ID
with the agent class and the relative displacement of
its root node)encapsulated in messages.
Transition Network
A switched transition network offers support for
agent activity graph reconfiguration at run-time.
Though the possible reconfiguration and the condi-
tional expressions must be known at compile time
(static resource constraints), a reconfiguration can re-
lease the use of some activity processes and enhances
the utilization for parallel processing of other agents.
The transition network is implemented with selector
tables in case of the HW implementation, and with
dynamic transition lists in case of the SW and SIM
implementations.
Tuple-space Database
Each n-dimensional tuple-space TS
n
(storing n-ary tu-
ples) is implemented with fixed size tables in case of
the hardware implementation, and with dynamic lists
in the case of the software and simulation model im-
plementations. The access of each tuple-space is han-
dled independently. Concurrent access of agents is
mutually exclusive. The HW implementation impli-
cates further type constraints, which must be known
at design time (e.g. limitation to integer values).
Signals
Signals must be processed asynchronously. There-
fore, agent signal handlers are implemented with a
separate activity process pipeline, one for each sig-
nal handler. For each pending agent signal, the agent
manager injects an agent token in the respective han-
dler process pipeline independent of the processing
state of the agent. Remote signals are processed by
the agent manager, which encapsulate signals in mes-
sages sent to the appropriate target node and agent.
4 CASE STUDY
A small example implementing a distributed feature
detection in an incompletely connected and unreliable
mesh-like sensor network using mobile agents should
demonstrate the suitability of the proposed agent pro-
cessing and design approach. The sensor network
consists of nodes with each node attached to a sen-
sor used, for example, in a structural health monitor-
ing system (e.g. strain-gauge sensors). The nodes can
be embedded in a mechanical structure, for example,
used in a robot arm. The goal of the MAS is to find
extended correlated regions of increased sensor inten-
sity (compared to the neighbourhood) due to mechan-
ical distortion resulting from externally applied load
forces. A distributed directed diffusion behaviour and
self-organization (see Figure 5) is used, derived from
the image feature extraction approach (proposed by
Liu, 2001). A single sporadic sensor activity not cor-
related with the surrounding neighbourhood should
be distinguished from an extended correlated region,
which is the feature to be detected. There are three
different agent classes: an exploration, a deliver, and
a node agent. A node agent is immobile and is primar-
ily responsible for sensor measurement, observation,
and creating of exploration agents. The feature de-
tection is performed by the mobile exploration agent,
which supports two main different behaviours: dif-
fusion and reproduction. The diffusion behaviour is
used to move into a region, mainly limited by the
lifetime of the agent, and to detect the feature, here
the region with increased mechanical distortion (more
precisely the edge of such an area). The detection of
the feature enables the reproduction behaviour, which
induces the agent to stay at the current node, setting
a feature marking and sending out more exploration
agents in the neighbourhood. The local stimuli H(i, j)
for an exploration agent to stay at a specific node with
coordinate (i, j) is given by eq. 1.
H(i, j) =
R
∑
s=−R
R
∑
t=−R
{kS(i+ s, j + t) − S(i, j)k ≤ δ}
S : Sensor Signal Strength
R : Square Region around (i, j)
(1)
The calculation of H at the current location (i, j) of the
agent requires the sensor values within the square area
(the region of interest ROI) R around this location. If
a sensor value S(i+s, j+t) with i, j∈ {-R,..,R} is similar
to the value S at the current position (diff. is smaller
than the parameter δ), H is incremented by one.
If the H value is within a parameterized interval
∆ = [ε
0
, ε
1
], the exploration agent has detected the
feature and will stay at the current node to reproduce
new exploration agents sent to the neighbourhood. If
H is outside this interval,the agent will migrate to a
neighbour different node and restarts exploration (dif-
fusion).
The calculation of H is performed by a distributed
calculation of partial sum terms by sending out child
explorer agents to the neighbourhood, which itself
can send out more agents until the boundary of the
region R is reached. Each child agent returns to its
origin node and hands over the partial sum term to his
parent agent, shown in Figure 5. Because a node in
the region R can be visited by more than one child
agent, the first agent reaching a node sets a marking
MARK
. If another agent finds this marking, it will im-
ICAART2014-InternationalConferenceonAgentsandArtificialIntelligence
76