163-Weyns 163 - PDF

Document Sample
163-Weyns 163 - PDF Powered By Docstoc
                  MULTI-AGENT SYSTEMS
                                      Danny Weyns and Tom Holvoet
                                       Katholieke Universiteit Leuven
                                           Celestijnenlaan 200A
                                          3001, Leuven, Belgium
                                                     January 2, 2008

          Situated multi-agent systems are decentralized software systems that consist of autonomous entities (agents)
      that have an explicit position in the environment. The emphasis of situated agents is on direct coupling of percep-
      tion to action, modularization of behavior, and dynamic interaction with the environment. These properties make
      situated multi-agent systems particularly suitable to deal with highly dynamic operating conditions. To achieve
      the overall system functionalities and qualities, situated agents have to coordinate their behavior. The agent envi-
      ronment provides a means for agents to share information and coordinate their behavior. Laws embedded in the
      agent environment allow to mediate the activities of the agents in the system by defining application specific con-
      strains on agents’ activities. In this paper, we declaratively specify the semantics of laws for perception, action,
      and communication in situated multi-agent systems. We illustrate the use of laws with concrete examples in an
      automated transportation system that we have developed. Mediation of agents’ activities via the agent environ-
      ment improves separation of concerns in multi-agent systems and helps to manage complexity, especially in open
      and pervasive environments.
          Keywords: Mediated interaction, laws, situated multi-agent systems

1    INTRODUCTION                                                nication is employed for knowledge sharing and agent
                                                                 coordination. Research in the area of situated multi-
Research in multi-agent systems is concerned with the            agent systems investigates interaction-oriented agent
study, behavior, and construction of a collection of au-         systems. Historically, the idea of situated multi-
tonomous agents that interact with each other and their          agent systems originates from the domain of reactive
environment [35]. Agents are reflective software com-             robotics [5]. Later the field spawned into behavior-
ponents that are capable to act autonomously to achieve          based approaches [2], stigmeric agents [29], and situ-
their design objectives. Individual agents have only             ated multi-agent systems [15, 3]. The emphasis of sit-
limited knowledge and control over the system as a               uated agency is on direct coupling of perception to ac-
whole. To achieve the overall system functionalities             tion, modularization of behavior, and dynamic interac-
and qualities, agents interact and coordinate their behav-       tion with the environment. This contrasts with delibera-
ior. Multi-agent systems are known for quality attributes        tive approaches that emphasize explicit knowledge and
such as adaptability, robustness, and scalability, making        rational choice [44]. A situated multi-agent system con-
multi-agent systems particularly interesting to deal with        sists of a set of agents that cooperate to solve a com-
the demanding challenges of complex distributed soft-            plex problem in a decentralized way. A situated agent
ware applications.                                               has an explicit position in the environment and has lo-
     Since the late 1980s, the major trend in multi-             cal access to the environment, i.e. each agent is placed
agent system research spawns from the study of BDI-              in a local context which it can perceive and in which it
agents [30]. The basic philosophy of BDI-agents is               can act and interact with other agents. A situated agent
to reflect the practical reasoning of humans, who act             uses a behavior-based action selection mechanism [40].
in order to achieve their intentions. Typical BDI ap-            Behavior-based action selection is driven by stimuli per-
proaches are knowledge-oriented, and direct commu-               ceived in the environment as well as internal stimuli.

                         Ubiquitous Computing and Communication Journal                                                      1
Direct coupling of perception to action allows situated       among knowledge-oriented agents while the approach
agents to react rapidly to changing conditions, making        proposed in this paper focuses on mediated coordina-
the approach particularly appropriate for systems that        tion of interaction-oriented agents that have an explicit
have to operate in highly dynamic and unpredictable en-       position in the environment.
vironments.                                                   Overview. The remainder of the paper is structured
    In situated multi-agent systems, mediated interac-        as follows. Section 2 gives a high-level overview of a
tion is essential. Classical examples of mediated in-         model for the agent environment that we have devel-
teraction are digital pheromones and computation fields        oped, and shows how we have applied this model in
which situated agents use to coordinate their behavior.       an automated transportation system. In section 3, we
A digital pheromone [6] is a dynamic structure that ag-       specify laws for perception, action, and communication,
gregates with additional pheromone that is dropped, dif-      and we illustrate the laws with concrete examples in the
fuses in space and evaporates over time. Agents can           automated transportation system. Section 4 discusses a
use digital pheromones to dynamically form paths to lo-       number of related approaches. Finally, we draw conclu-
cations of interest. Evaporation of digital pheromones        sions in section 5.
prevent agents to follow paths to outdated information,
contributing to the adaptability of the system. A compu-
tational field [21] is an abstract force field that is spread
in the agent environment by the agents or the agent envi-
                                                              2    AGENT ENVIRONMENT
ronment. Agents coordinate their behavior by following
                                                           Over the last five years, we have developed various sit-
the shape of the fields. Computational fields dynami-
                                                           uated multi-agent system applications, ranging from a
cally reshape with topological changes in the underlying
                                                           prototypical peer-to-peer file sharing system up to an in-
spatial or logical structure, contributing to the system’s
                                                           dustrial automatic transportation. In the course of build-
                                                           ing these applications, we have developed an advanced
    Originating from research on situated multi-agent model for situated multi-agent systems [38]. This model
systems, the agent environment has recently been put extends architectures for situated agents from mecha-
forward as an explicit design abstraction to support me- nisms for action selection to integral architectures that
diated interaction in multi-agent systems [42, 41]. The provides support for different concerns of agents, in-
agent environment enables to shield the complexity of cluding support for selective perception enabling situ-
the underlying deployment context to agents, and it pro- ated agents to perceive the environment according to
vides a means to mediate the interactions among the their current tasks, support for protocol-based commu-
agents. Laws embedded in the agent environment al- nication enabling agents to exchange messages accord-
low to define application specific constrains on agents’ ing to well-defined communication protocols, and sup-
activities. Mediation of agents’ activities via the agent port for explicit social interaction with roles and situated
environment improves separation of concerns in multi- commitments enabling agents to set up explicit collab-
agent systems and helps to manage complexity, espe- orations and play different roles in such collaborations.
cially in open and pervasive environments.                 In addition, the model introduces the notion of agent
    The contribution of this paper is twofold. First, environment as a first-class design abstraction in situ-
we give a declarative specification of the semantics of ated multi-agent systems. The agent environment pro-
laws for perception, action, and communication in sit- vides an abstract representation of resources in the ex-
uated multi-agent systems. Such a specification is re- ternal world and keeps the state of this virtualization in
quired to support the disciplined engineering of situ- synchrony with the state of the actual resources. The
ated multi-agent systems. Second, we give a number agent environment also supports mediated interaction,
of concrete laws in a situated multi-agent system that we regulating the access to shared resources and governing
have developed for the control of automatic guided vehi- interactions between agents. In addition, the agent en-
cles (AGV). Perception, action, and communication are vironment can provide a reflective mechanism that en-
generally acknowledged as the primary means for situ- ables the composition and function of the agent envi-
ated agents to act in the environment and interact with ronment to be modified at runtime. The use of reflection
one another [14, 3]. Specific laws for perception, ac- to support self-managing properties such as self-healing
tion, and communication enable engineers to deal with and self-optimization is subject of our future research.
these different concerns explicitly and separately. Exist-     The focus of this paper is on the agent environment,
ing agent-based approaches for mediated coordination in particular on support for mediated interaction. In this
such as coordination infrastructures [26] and electronic section, we give a high-level model of the agent environ-
institutions [25] focus on communicative interactions ment and we briefly explain how we have applied the

                        Ubiquitous Computing and Communication Journal                                               2
                                      Figure 1: Model of the agent environment

agent environment in an automated transportation sys-         cludes an abstraction of the deployment context together
tem. Support for reflection in the agent environment is        with additional state related to the agent environment.
outside the scope of the presented model.                     Examples of state related to the deployment context are
                                                              a representation of the local topology of a network, and
                                                              data derived from a set of sensors. Examples of addi-
2.1    Model for the agent environment                        tional state are the representation of digital pheromones
                                                              that are deployed on top of a network, and virtual marks
Fig. 1 shows the model of the agent environment as a set
                                                              situated on a map of the physical environment.
of interacting components that share a data repository.
The agent environment provides functionality to agents        The Representation Generator provides the
on top of the deployment context. The deployment con-         functionality to agents for perceiving the environment.
text consists of the given hardware and software and          Agents use foci to sense the environment. Foci allow
external resources such as processors, a network, the         an agent to sense the environment (agent environment
operating system, distributed middleware, sensors and         and deployment context) for specific types of infor-
actuators, a printer, a database, a web service, etc. For a   mation. The representation generator uses the current
distributed application, the deployment context consists      state of the agent environment (via the Read interface
of multiple processors deployed on different nodes that       of the State repository) and possibly state collected
are connected through a network. Each node provides           (via observation) from the deployment context
an agent environment to the agents located at that node.      (observed data depl. context) to produce
We briefly discuss the responsibilities of each of the         a representation for the agent. Agents’ percep-
elements of the agent environment in turn.                    tion is subject to perception laws that provide the
                                                              means to constrain perception. We elaborate on percep-
The State repository contains data that is shared be-
                                                              tion laws in the next section.
tween the components of the agent environment via the
Read and Read-Write interfaces. Data typically in- Observation & Data Processing                              provides

                        Ubiquitous Computing and Communication Journal                                               3
the functionality to observe the deployment context            laws below. To actually transmit the messages, com-
and collect date from other nodes in a distributed set-        munication mediation makes use of the Communication
ting. The observation & data processing component              Service component.
translates observation requests into observation
                                                               Communication Service provides that actual in-
primitives that can be used to collect the requested
                                                               frastructure to transmit messages. Communication ser-
resource data from the deployment context. Data
                                                               vice transfers messages coded in a high-level message
may be collected from external resources in the deploy-
                                                               description language used by agents into low-level
ment context or from the agent environment instances
                                                               message primitives of the deployment context and
on other nodes in a distributed setting. The observation
                                                               vice versa. Depending on the particular application re-
& data processing component can provide additional
                                                               quirements, the communication service may provide
functions to pre-process data, examples are sorting, fil-
                                                               specific functionality to enable the exchange of mes-
tering, and integration of observed data. To provide its
                                                               sages in a distributed setting, such as white and yellow
functionalities, observation & data processing may use
                                                               page services. An example infrastructure for distributed
data of the state repository via the Read-Write interface
                                                               communication is Jade [4].
(e.g., to translate logic locations to actual addresses in a
network).                                                   Synchronization & Data Processing col-
                                                            lects resource data from the deployment context
Interaction is responsible to deal with agents’
                                                            and synchronizes particular state of the agent environ-
actions. Actions can be divided in two classes:
                                                            ment (via the Read-Write interface of the State repos-
actions that attempt to modify state of the agent en-
                                                            itory) with the state of resources as well as state of
vironment and actions that attempt to modify the state
                                                            the agent environment on different nodes. State syn-
of resources of the deployment context. An example of
                                                            chronization may relate to dynamics in the deployment
the former is an agent that drops a digital pheromone in
                                                            context and dynamics of state in the agent environment
the agent environment. An example of the latter is an
                                                            that happens independently of agents or the deployment
agent that writes data to an external data base. Agents’
                                                            context. An example of the former is the topology of
actions are subject to action laws. Action laws
                                                            a dynamic network which changes are reflected in a
put restrictions on the actions invoked by the agents,
                                                            network abstraction maintained in the state of the agent
representing domain specific constraints on agents’ ac-
                                                            environment. An example of the latter is the evaporation
tions. We elaborate on action laws in the next section.
                                                            of digital pheromones. Dedicated middleware can pro-
For actions related to the agent environment, the in-
                                                            vide support to spread and collect data in a distributed
teraction component calculates the reaction, resulting
                                                            setting. Examples of middleware for mobile network
in an update of the state of the agent environment (via
                                                            environments are discussed in [31, 34, 21]. Synchro-
the Read-Write interface). Actions related to the de-
                                                            nization & data processing converts the resource data
ployment context are passed to the Low-Level Control
                                                            collected from the deployment context into a format
                                                            that can be used to update the state of the agent environ-
Low-Level Control converts the actions in- ment. Such conversion typically includes a processing
voked by the agents into low-level action prim- of collected resource data.
itives in the deployment context. An example is a robot
agent that instructs the robot to drive in a particular di- 2.2 Agent environment in AGV system
rection. This action will be translated by the low-level
control component into corresponding actuator com- An automatic guided vehicle (AGV) transportation sys-
mands. The low-level control component decouples the tem is a fully automated transport system that uses mul-
interaction component from the details of the deploy- tiple AGVs to provide logistic services in an industrial
ment context.                                               environment. The task of the AGVs is to transport loads
                                                            from one location to another. The task stream is typi-
Communication Mediation mediates the com-
                                                            cal irregular and unpredictable. In a joint project with
municative interactions (i.e. exchange of messages)
                                                            Egemin, we have applied a situated multi-agent system
among agents. Communication mediation is responsi-
                                                            to develop a decentralized AGV control system aiming
ble for collecting messages, it provides the necessary
                                                            to improve the flexibility in the system [43]. Fig. 2
infrastructure to buffer messages, and it delivers mes-
                                                            shows the model of AGV application.
sages to the appropriate agents. Communication media-
                                                                In the AGV application two types of agents are used:
tion regulates the exchange of messages between agents
                                                            AGV agents and transport agents. Each AGV is con-
by imposing application specific constraints on com-
                                                            trolled by an AGV agent. Transports are represented by
municative interactions. We elaborate on message
                                                            transport agents that reside at the transport base, i.e. a

                         Ubiquitous Computing and Communication Journal                                              4
                                      Figure 2: Model of the AGV application

stationary computer in the warehouse. Since the phys-        avoidance, deadlock detection, and task assignment in
ical environment of AGVs is very restricted, it offers       the AGV transportation system. A detailed discussion
little opportunities for agents to use the environment for   of ObjectPlaces is out of scope of this paper. We refer
coordination. Therefore, we introduced an agent envi-        the interested reader to [34].
ronment in which agents are situated. The agent envi-             AGVs are equipped with low-level control software
ronment offers a medium for agents to share information      that is called Ensor (Egemin Navigation System On
and coordinate their behavior. Since the agent environ-      Robot). Ensor provides an interface to command the
ment is necessarily distributed over the AGVs and the        AGV and to monitor its state. We fully reused the con-
transport base, an instance of the local agent environ-      trol software in the project. The local agent environment
ment is deployed on each node in the system (mobile          uses Ensor to steer the vehicle based on the commands
AGVs and the transport base).                                of the AGV agent, and to regularly poll the vehicles sta-
                                                             tus and adjust its own state appropriately.
    The states of local agent environments on neigh-
boring nodes are synchronized with each other oppor-
tunistically, as the need arises. State synchronization      Coordination Medium. The local agent environment
is supported by the ObjectPlaces middleware. Object-         offers high-level primitives to agents to act in the en-
Places proposes two programming abstractions, views          vironment, perceive the environment, and communicate
and roles, to simplify mobile application development.       with other agents. This enables agents to share infor-
The first abstraction, a view, is an automatically up-to-     mation and coordinate their behavior. As an illustration,
date collection of data objects, that are copies or rep-     we explain how agents exploit the agent environment
resentations of data objects available on a set of nodes     to avoid collisions by coordinating with other agents
in the network. The middleware automates gathering           through the local agent environment. AGV agents mark
the data objects from a set of nodes, and maintains the      the path they are going to drive in their local agent envi-
view in the face of dynamically changing availability        ronment using hulls. A hull is the physical area an AGV
of the data objects. The second abstraction, a role, en-     occupies and a series of hulls describe the physical area
capsulates the behavior of a component of the applica-       the AGV occupies along a certain path. If an AGV’s
tion engaging in a protocol. The middleware automates        hulls do not intersect with hulls of other AGVs, the AGV
the setup and maintenance of an interaction session be-      can drive over the reserved path. In case of a conflict,
tween a number of participating components in the mo-        the involved local agent environments use the priorities
bile network, in the face of a continuously changing         of the transported loads to determine which AGV can
number of participants. The ObjectPlaces middleware          move on. AGV agents monitor the local agent environ-
encapsulates the tedious management tasks associated         ment and only instruct the AGV to move on when they
with distribution and mobility in the AGV transportation     are allowed. Afterwards, the AGV agents remove the
system. It significantly reduces the complexity of tack-      markings in the agent environment. This example shows
ling distributed coordination problems such as collision     that the local agent environments serve as a flexible co-

                        Ubiquitous Computing and Communication Journal                                                5
ordination medium: agents coordinate by putting marks      3.2   Perception laws
in the local agent environment, and observing marks
from other agents.                                         We start with the specification of perception laws. Then
                                                           we give a practical example of a perception law.
                                                            Fo the set of foci for agents;
3     LAWS FOR MEDIATING AC-                               a focus fo ∈ Fo allows an agent to sense the en-
                                                           vironment selectively and is specified as a 3-tuple
      TIVITIES                                              i, foname, foparam with i ∈ Y the identity of the
                                                           agent, foname a name that refers to the type of infor-
Now, we declaratively specify the semantics of laws for    mation the agent aims to observe, and foparam a set of
perception, action, and communication in the agent en-     additional scoping variables of the focus; foname and
vironment as shown in Fig. 1. For the specification we      foparam are application specific and are not further
use a simple formal language based on set theory. Each     specified
type of law is illustrates with an example from the AGV
transportation system. Before we start with specifying      Θ ⊆ 2Fo the powerset of foci in the system;
the laws, we first introduce a number of general defini-     θ ∈ Θ is a set of foci of a perception request invoked by
tions that are further used in the specification.           an agent
                                                             Sc the set of perception scopes (or scopes for short);
                                                           a scope sc ∈ Sc is typed as sc : SE → Bool;
3.1   General definitions
                                                           i.e. a scope maps state elements of the environment on
  Ag Ag = {a1 , .., ai , .., an } is the set of agents;    booleans; sc(si) returns true for the elements si ∈ SE
the index i ∈ {1, .., n} is a unique identifier for agent   that are within the scope of sc, and sc(so) = f alse for
ai ∈ Ag; Y = {1, .., n} denotes the set of agent identi-   the elements so ∈ SE outside the scope; we call the
fiers in the system                                         set of state elements that map on true as the domain of
                                                           interest of a scope, i.e. dom(sc)→ true
  Ont the ontology of the application domain;
Ont defines the terminology of the domain and is spec-        N ⊆ 2Sc the powerset of scopes in the system;
ified as a tuple V oc, Rel with V oc: the vocabulary        η ∈ N is a set of scopes derived from a set of
of domain concepts, and Rel: the set of relationships      foci of a perception request; the conversion function
between concepts of V oc; V oc and Rel are application     Scoping is typed as: Scoping : Θ → N ; the do-
specific and not further specified                           main of interest of a set of scopes η is defined as:
    Ont                                                    domint(η) = {s ∈ SE | s ∈ dom(sc)→ true forall
  SE       the set of state elements of the environment;
                                                           sc ∈ η}
the set of state elements is based on ontology Ont;
a state element is (1) a part of the state of the agent      CoP the set of perception constraints in the system;
environment, or (2) it represents a part of the state of   a perception constraint cop ∈ CoP is typed as cop :
resources in the deployment context. A state element is    SE → Bool; i.e. a perception constraint maps state
specified as sname, sf ields with sname the name            elements s ∈ SE on booleans, restricting agents’ per-
of the state element, and sf ields a set of fields, each    ception of the environment; cop(s) returns true for the
field consisting of a name and a value of an accom-         state elements s ∈ SE that are restricted for perception,
panying domain; sname and sf ields are application         and f alse for unconstrained elements
specific and are not further specified; for brevity we use  LP the set of perception laws;
SE hereafter                                             a perception law lp ∈ LP is typed as lp : Sc × Σ →
  Σ ⊆ 2SE the powerset of state elements;                CoP ; i.e., a perception law lp(sc, σ) = cop takes a
we denote the set of state elements σ ∈ Σ of the envi- scope sc together with the current state of the environ-
ronment under consideration as the current state of the ment σ and produces a perception constraint cop
environment (i.e. the actual state of the agent environ- The application of the perception laws is defined by the
ment plus possible representations of state of resources ApplyLP function that is typed as follows:
in the deployment context)
                                                           ApplyLP : N × Σ → N
  dom(f ) the domain of a function f ;
for a function f : D → {v1, .., vn} we use dom(f )         ApplyLP (η, σ) = η
to denote the domain of f , thus dom(f ) = D; we use ApplyLP applies the set of perception laws Lp to a set
dom(f )→ vi to denote the subdomain of elements of of scopes η, given the current state of the environment
dom(f ) that map to vi, with vi ∈ {v1, .., vn}           σ. ApplyLP results in a restricted perception scope η .

                       Ubiquitous Computing and Communication Journal                                             6
For η holds:                                                   within collision range of the requesting AGV;
∀s ∈ SE , σ ∈ Σ :                                              (AGV \{AGVreq }) represents the set of AGVs in the
                                                               system excepting the requesting AGV; the dist function
 s ∈ domint(η ) iff (s ∈ domint(η)) ∧
   (∀ lp ∈ LP , ∀ sc ∈ η :                                     calculates the distance between two AGVs, pos denotes
    (∀ co ∈ lp (sc, σ) : co(s) = f alse))                      the current (x, y) position of an AGV and hullrad its
 s ∈ domint(η ) otherwise
   /                                                           current hull radius.

That is, a state element is within the restricted percep-
tion scope if (i) the state element is within the domain of    3.3   Action laws
interest of the original set of scopes, and (ii) none of the
constraints of the applied perception laws is applicable       We start with the specification of action laws. Then we
to the state element. For the domain of interest of η          give a practical example.
holds:                                                           Act the set of actions in the system;
domint(η ) = ( sc ∈ η dom(sc)→ true )                          an action act ∈ Act is defined as a 3-tuple
                                                                 i, aname, aparam with i ∈ Y the identity of the
      ( lp ∈ LP , sc ∈ η, co ∈ lp(sc,σ) dom(co)→ f alse )
                                                               agent, aname a name that refers to the type of action
The observable domain of the perception scope (i.e. the        the agent invokes and aparam is a set of additional
subdomain of elements of observable state of the envi-         parameters of the action; aname and aparam are ap-
ronment that map to true) consists of the intersection of      plication specific and not further specified
the domain of interest of the scopes of the perception re-
                                                                 G the set of operations in the system;
quest and the subdomain of elements of the state of the
                                                               an operation g ∈ G is typed as: g : SE →
environment that are not constrained by the perception
                                                               { true, f alse, unspec }; g(st) = true denotes that
                                                               st ∈ SE is part of the target state of the operation,
                                                               g(sf ) = f alse denotes that sf ∈ SE is not part
Example. AGV agents in the AGV transportation sys-             of the target state, and finally g(su) = unspec de-
tem avoid collisions by coordinating with other agents         notes that su ∈ SE is invariable to the operation;
through the agent environment. As we have explained            the function OperationGeneration converts the se-
above, AGV agents mark the path they are going to drive        lected action into an operation and is typed as follows:
in their environment using hulls. A series of hulls mark       OperationGeneration : Act → G
the physical area an AGV occupies along a certain path.
An example of a perception law in the AGV transporta-            CoA the set of operation constraints in the system;
tion system is a law that determines the AGVs in col-          an operation constraint coa ∈ CoA is typed as
lision range. To guarantee safety, the subset of AGVs          coa : SE → Bool; i.e. an operation constraint maps
with which a requesting AGV might collide must be in-          state elements s ∈ SE on booleans restricting agents’
cluded. Yet, the amount of information that needs to be        actions in the environment; coa(s) returns true for the
communicated among AGVs must be reasonably small.              state elements that are constrained for modification, and
Fig. 3 illustrates how the safe subset of AGVs is deter-       f alse for unconstrained state elements
mined.                                                           LA the set of action laws in the system;
     When an AGV agent requests the AGVs in collision          an action law la ∈ LA is typed as: la : G × Σ → CoA ;
range, the agent environment selects the AGVs whose            an action law la(g, σ) = coa takes an operation g and
hull projection circle overlaps with the hull projection       the current state of the environment σ and returns an
circle of the requesting AGV. The radius of the hull pro-      operation constraint coa
jection circle is equal to the distance between the AGV        The application of the action laws is defined by the
and the furthest point on its hull projection. The set of      ApplyLA function that is typed as follows:
AGVs with overlapping circles provides a first approx-
imation of the vehicles that are in collision range. The         ApplyLA : G × Σ → G
constraint to select the set of AGVs in collision range of       ApplyLA (g, σ) = g
an AGVreq is defined as:                                        ApplyLA applies the set of action laws LA to oper-
  in-col-rangereq =                                            ation g, given the current state of the environment σ.
    {AGVother ∈ (AGV \{AGVreq }) |                             ApplyLA restricts the operation g according to the set
     dist(AGVreq .pos, AGVother .pos) ≤                        of applicable action laws. For the restricted g holds:
     AGVreq .hullrad + AGVother .hullrad }                     ∀s ∈ SE :
in-col-rangereq denotes the actual set of AGVs                  g (s) = true iff (g(s) = true) ∧

                         Ubiquitous Computing and Communication Journal                                              7
                                      AGV A

                                        Hull                         Projection
                                     projection                        circle

                                                  AGV B

                                   Figure 3: Determining AGVs in collision range

   (∀ la ∈ LA : (∀ co ∈ la(g, σ) : co(s) = f alse))            as follows:
  g (s) = f alse iff (g(s) = f alse) ∧
                                                                AGVreq .hullstate = saf e iff
   (∀ la ∈ LA : (∀ co ∈ la(g, σ) : co(s) = f alse))
                                                                 in-col-rangereq = Ø ∨
  g (s) = unspec otherwise                                       ∀AGVother ∈ in-col-rangereq :
That is, (1) a state element of the environment is part             AGVother .hullstate = saf e
of the target state of the restricted operation if the state        ∧ prior(AGVreq .hullprio, AGVother .hullprio)
element is part of the target state of the operation and
none of the constraints of the applied action laws is ap-      The constraint defines that it is safe for a request-
plicable to the state element; (2) the restricted operation    ing AGV to move on if there is no other AGV in
is invariable to the rest of the state elements. For the       collision range, or if none of the AGVs in colli-
restricted operation holds:
                                                               sion range is in the safe state and all the AGVs in
dom(g )→ true = (dom(g)→ true )                                collision range have a lower priority than the re-
          ( la ∈ LA , co ∈ la(g,σ) dom(co)→ f alse )           questing AGV. hullstate ∈ {saf e, unsaf e} denotes
                                                               the actual state of a hull projection; hullprio de-
dom(g )→ f alse = (dom(g)→ f alse )                            notes the actual hull priority of an AGV; the func-
          ( la ∈ LA , co ∈ la(g,σ) dom(co)→ f alse )           tion prior(AGVreq .hullprio, AGVother .hullprio) de-
dom(g )→ unspec = (dom(g)→ unspec )                            termines whether an AGVreq has priority over an
          ( la ∈ LA , co ∈ la(g,σ) dom(co)→ true )             AGVother to move on, i.e. prior returns true if the
                                                               hull priority of AGVreq is higher than that of AGVother
The target domain of the restricted operation (i.e. the
                                                               and f alse otherwise.
subdomains of state elements that map to true or false)
consists of the intersection of the target domain of the
original operation and the subdomain of state elements         3.4    Communication laws
of the environment that are not constrained by the action
laws.                                                          First, we specify communication laws. Then we give a
                                                               concrete example in the AGV application.
                                                                 M the set of messages in the system;
Example. When an AGV agent projects a hull in the
                                                               a message mi→des ∈ M is a formatted structure of char-
agent environment, an action law determines how the
                                                               acters that represents a message sent by the agent with
agent can proceed. If the area is not marked by other
                                                               identity i ∈ Y to a set of agents with identities specified
hulls (the AGV’s own hulls do not intersect with others),
the AGV can move along and actually drive over the re-         in des ∈ 2Y
served path. In case of a conflict, the involved agent            CoC the set of communication constraints;
environments use the priorities of the transported loads       a communication constraint coc ∈ CoC is typed as
and the vehicles to determine which AGV can move on.           coc : Y → Bool, i.e. coc maps identities of agents
Afterward, the AGV agent removes the markings in the           i ∈ Y on booleans; coc(i) returns true for identities
agent environment. The constraint that determines the          of agents that are excluded for a particular message, and
safe condition of a hull projected by AGVreq is defined         f alse for non constrained identities

                         Ubiquitous Computing and Communication Journal                                                8
  LC the set of communication laws in the system;        ranges for transport agents. The test results are shown
a communication law lc ∈ LC is typed as lc : M ×Σ →      in Fig. 5. The test were performed on the map of a sim-
CoC ; a communication law lc(mi→des , σ) = coc takes     ulated real-world AGV transportation system [1]. The
a message mi→des and the current state of the environ-   size of the physical layout is 134 m x 134 m. The map
ment σ and returns a communication constraint coc        has 56 pick and 50 drop locations. We used a standard
The application of the communication laws is defined transport profile that generates about 140 transports per
by the ApplyLC function that is typed as follows:        hour real time. Each transport is assigned a random pri-
                                                         ority [0.1 . . . 1.0] that increases over time with a max-
    ApplyLC : M × Σ → M                                  imum of 1.0. The system uses 14 AGVs. Tests were
   ApplyLC (mi→des , σ) = mi→des                         run for 2 hours in real time. The figure on the right
ApplyLC applies the set of communication laws LC to hand side shows that the number of messages increases
message mi→des , given the current state of the environ- with increasing communication range. However, from
ment σ. For the resulting message mi→des holds:          a maximum communication range of 60 m the increase
                                                         is marginal. The figure on the right hand side shows
∀ y ∈ des :                                              that for low values of maximal communication range,
  (y ∈ des) ∧ (∀ lc ∈ LC :                               the number of finished transports significantly increases.
   (∀ co ∈ lc(mi→des , σ) : co(y) = f alse))             However, from a maximal range of 40 m, the gain be-
That is, the message mi→des will be transmitted to comes marginal. The results indicate that for the given
all addressees of the original message that are not con- system, 40 m is a suitable value for the maximal com-
strained by any of the communication laws.               munication range of transport agents.

Example. An example of a communication law in the             4     RELATED APPROACHES
AGV transportation system is a law that determines
nearby agents in the agent environment to interact with.      Mediated coordination is an extensively studied field. In
Such a law is for example applied when a transport agent      this section, we discuss a number of related agent-based
is searching for a suitable AGV to execute its task. To       approaches for mediated coordination. But first we put
enable adaptive task assignment, we have developed a          our work in a broader setting of coordination and per-
dynamic contract net protocol called DynCNET [39].            versive computing research.
DynCNET allows both AGV and transport agents to
revise task assignment when opportunities occur while         4.1   Position with respect to coordination
AGVs drive toward loads. Since it is not scalable to                and pervasive computing
let all agents in the system interact, the agent environ-
ment restricts the communication to nearby candidates.    In the seminal work, Malone and Crowston [20] refer
                                                          to coordination as the processes for managing shared
E.g., in Fig. 4, there are currently three tasks within the
scope of AGV A to execute the transport: u, w, and        resources, producer/consumer relationships, simultane-
w. In a similar way, the scope for possible AGVs is re-   ity constraints, and task/subtask dependencies. The
stricted for transport agents. The scope of possible can- agent environment in our approach provides concrete
didates may dynamically grow, e.g., when the priority     instances of these processes that are specific to the re-
                                                          quirements for mediated coordination in situated multi-
of a transport increases. The constraint that restricts the
set of candidate AGVs for a task agent TAt is defined      agent systems. Ciancarini defines a coordination model
as:                                                       as a triple (E,M,L) [11, 7]. E are the coordinable enti-
                                                          ties (components). In our context the agents are the co-
  candidt = {AGVi ∈ AGV |
                                                          ordinable entities. M are the coordinating media (con-
      dist(AGVi .pos, TAt .pos)
                                                          nectors). In our work M is instantiated by the various
      ≤ comrange × T Ai .taskprio }
                                                          means for mediated activity provided by the agent en-
candidt defines the actual set of candidate AGVs for vironment. Finally, L are the coordination laws ruling
task assignment. comrange is the maximal communi- actions by coordinable entities with respect to the co-
cation range for task assignment, T Ai .taskprio is the ordination media. In our work, we have defined laws
actual priority of transport agent TAi . Applying the law for perception, action, and communication, specific for
to the situation shown in Fig. 4 for transport x yields situated multi-agent systems.
{AGVE , AGVF , AGVG }. Similarly, a law is defined             In [37], Mark Weiser introduced the idea of ubiqui-
that restricts the set of candidate tasks for AGV agents. tous computing as “the seamlessly integration of com-
    We have tested the effect of variable communication puters into the world at large.” According to Saha and

                        Ubiquitous Computing and Communication Journal                                              9
                                                                 Figure 4: Candidates for task assignment with the dynamic contract net protocol

                                                     200                                                                                               250
Average number of messages per finished transport

                                                                       DynCNET (refresh period orders = 0.5 s)                                                           DynCNET (refresh period orders = 0.5 s)
                                                                        DynCNET (refresh period orders = 1 s)                                                             DynCNET (refresh period orders = 1 s)
                                                     180                                               CNET                                            240                                               CNET

                                                                                                                       Finished transport in 2 hours




                                                           20   40         60          80          100           120                                         20   40         60          80          100           120
                                                                Communication range for task assingment [m]                                                       Communication range for task assingment [m]

                                                    Figure 5: Communication load (left) and throughput (right) for variable communication range of task agents

Mukherjee [32], the technological advances necessary                                                                    core activities of the agent environment.
to build a pervasive computing environment fall into                                                                        Pervasive computing requires context management
four broad areas: devices, networking, middleware, and                                                                  that is proactive and includes support for location moni-
applications. Pervasive middleware provides the layer                                                                   toring, real-time information processing, merging data
between the networking kernel ad the end-users ap-                                                                      from multiple and possibly disagreeing sensors [32].
plications running on pervasive devices. The authors                                                                    The model for the agent environment shown in Fig. 1
state: “this pervasive middleware will mediate inter-                                                                   provides such support for the domain of situated multi-
actions with the networking kernel on the users behalf                                                                  agent systems. The Observation & Data Processing
and will keep users immersed in the pervasive comput-                                                                   module provides functionality to observe the surround-
ing space.” The agent environment in our work pro-                                                                      ing environment and integrates functionality to prepro-
vides a domain-specific middleware for situated multi-                                                                   cess the collected data. The Synchronization & Data
agent systems that contributes to the objectives of perva-                                                              Processing module collects data from the surrounding
sive middleware. Mediating activities of situated agents                                                                environment in a proactive fashion and allows to resolve
(i.e. application components) and providing an up-to-                                                                   conflicts among different nodes. Collision avoidance in
date visualization of the surrounding environment are                                                                   the AGV application is an example of conflict resolution

                                                                          Ubiquitous Computing and Communication Journal                                                                                                 10
among nodes.                                             to the response of influences performed by the agents.
    Satyanarayanan points out that good system design    In contrast, our model for agent environment supports
in pervasive computing requires “the need for reducing   laws for perception, action, and communication. The
                                                         model of Ferber and M¨ ller has mainly been applied in
interactions between distant entities” [33]. He calls this
the need for “localized scalability.” Laws in the agent  the context of agent-based simulation.
environment allow to manage the scope of interactions        In the Multilayered Multi-Agent Situated System [3]
among application components in a dynamic fashion.       (MMASS) agents and the environment are explicitly
                                                         modeled. MMASS introduces the notion of agent type
                                                         which defines agent state, perceptual capabilities and
4.2 Related agent-based approaches                       a behavior specification. The environment is modeled
Stigmergic agent systems. Stigmergic agents are as a multi-layered structure, where each layer is repre-
simple entities that coordinate their behavior through sented as a connected graph of sites. Layers may repre-
the manipulation of marks in the agent environment sent abstractions of a physical environment, but can also
in a similar way as social ants coordinate [18]. A represent logical aspects, e.g. the organizational struc-
classic example of stigmergic coordination are digital ture of a company. Between the layers specific connec-
pheromones [6] which software agents use to coordinate tions (interfaces) can be defined that are used to specify
their behavior. A digital pheromone is a dynamic struc- that information generated in one layer, may propagate
ture in the agent environment that aggregates with ad- into other layers. MMASS defines a number of basic
ditional pheromone that is dropped, diffuses into space, primitives, such as emit (starts the diffusion of a field),
and evaporates over time. Agents can use pheromones transport (defines the movement of the agent), or trig-
to dynamically form paths to locations of interest. Dig- ger (specifies state change when a particular condition is
ital pheromones combine reinforcement of interesting sensed in the environment). These primitives have char-
information (by the agents) with decay of information acteristics similar to reactions and laws as introduced
over time (truth maintenance by the agent environment). by Ferber and M¨ ller. In our work, we define laws as
Another well-established approach of stigmergic co-      first-class concepts, not only for action, but also for per-
ordination is a computational field [21]. In this ap- ception and communication.
proach, the movements of agents are driven by abstract
force fields that are spread in the agent environment (by
agents or the agent environment itself). Agents coordi- Coordination infrastructures Coordination infras-
nate their behavior by following the shape of the fields. tructures are studied for a long time. Blackboard sys-
                                                         tems were the first type of mediated interaction mod-
     In stigmergic approaches, coordination laws are im-
                                                         els proposed by AI researchers [12]. A blackboard is
plicitly defined by the coordination infrastructure. In
                                                         an intermediary data repository that enables cooperat-
contrast, our approach proposes explicit laws for medi-
                                                         ing software modules to communicate indirectly and
ating agents’ activities, including laws for perception,
                                                         anonymously. In contrast to blackboard systems, tuple-
action, and communication. Moreover, stigmergic in-
                                                         based technologies use associative access to a shared
frastructures do not support communicative interactions
                                                         data space for communication and synchronization pur-
by means of message exchange.
                                                         poses. Tuplespaces were first introduced in Linda [17].
                                                         Agents in Linda communicate by putting tuples in,
Situated multi-agent systems consider explicitly de- and removing them from a shared space, i.e., the tu-
fined laws that determine the outcome of interactions plespace. Throughout the years, distributed variants ap-
among situated agents in the environment. We discuss peared, such as Sun’s JavaSpaces [16], TuCSoN [28],
two representative examples.                             MARS [8], and LIME [24]. Coordination infrastruc-
     In [15], Ferber and M¨ ller propose a basic model tures [26] provide reusable solutions for coordination of
for situated multi-agent systems. Central to the model cognitive agents. These infrastructures define laws that
is the way actions are modeled. The action model dis- govern the observable behavior of knowledge-oriented
tinguishes between influences and reactions to influ- agents and regulate the interactions in agent societies
ences. Influences are produced by agents and are at- via rules, norms, and laws. Coordination artifacts [27]
tempts to modify the course of events in the world. Re- generalize over different coordination models. Coordi-
actions, which result in state changes, are produced by nation artifacts embody the laws of coordination and can
the agent environment by combining influences of all be used by engineers to regulate the behavior of multi-
agents, given the local state of the agent environment agent systems. Coordination artifacts provide a reflec-
and the laws of the world. Laws as defined by the au- tive interface that allows adapting the behavior of the ar-
thors are first-class concepts. Laws however, are limited tifacts at runtime. The model for the agent environment

                        Ubiquitous Computing and Communication Journal                                           11
presented in this paper provides a coordination infras-       ority between the agents can be considered as a percep-
tructure tailored to situated multi-agent systems. Con-       tion law that determines whether an agent belongs to the
trary to existing approaches, our model provides explicit     agentview or not. [22] proposes an ant-based approach
support for agents’ perception, action, and communi-          for solving dynamic constraint optimization problems.
cation, enabling engineers to deal with these different       In this approach, a graph environment is used that rep-
concerns explicitly and separately. Existing approaches       resents the constraint problem itself. The graph deter-
provide more generic support, but, as a consequence           mines how the ants can walk around building a solu-
lack specific support and reuse for mediated coordina-         tion to the problem. Ants can put digital pheromones
tion in situated multi-agent systems.                         on the edges of the graph that the ants use to approxi-
    Low-Governed Interaction (LGI [23]) is an ap-             mate traditional variable and value ordering heuristics.
proach for decentralized coordination of agents based         The graph environment in this approach is a particular
on explicitly specified policies. LGI is a mature ap-          instance of the agent environment as presented in this
proach for mediated interaction that has proven to be         paper. Whereas laws in the agent environment are de-
useful in various domains. However, LGI does not make         fined as first-class concepts, the laws that restrict the be-
an explicit distinction between laws for perception, ac-      havior of the ants are encoded in the graph structure and
tion, and communication. On the other hand, LGI em-           the dynamics of the digital pheromones.
phasizes the necessity of security in open systems.

Computational institutions. Research on computa-
                                                              5    CONCLUSIONS
tional institutions such as electronic institutions [25],
                                                              The agent environment provides a design abstraction
virtual organizations [9], logic-based institutions [36],
                                                              that multi-agent system engineers can exploit to medi-
and normative multi-agent systems [10] is an extensive
                                                              ate the agents’ activities in the system. In this paper, we
studied field of regulating infrastructures. Computa-
                                                              specified laws that allow to define application specific
tional institutions allow multi-agent system engineers to
                                                              constraints on agents perception, action, and communi-
impose laws and norms to agents. Norms can be pre-
                                                              cation in situated multi-agent systems. We illustrated
scriptive and only allow permitted behaviors, or unde-
                                                              the various laws in an AGV transportation system. Em-
sired behaviors can be detected and sanctioned by the
                                                              bedding laws in the agent environment improves sepa-
infrastructure. Interaction mediation in computational
                                                              ration of concerns in multi-agent systems and helps to
institutions are tailored to cognitive agents and are typ-
                                                              manage complexity.
ically applied in domains such as electronic markets,
                                                                  In ongoing research, we study how the agent envi-
electronic commerce, and other B2B scenarios. Com-
                                                              ronment can be exploited to support dynamic organiza-
putational institutions focus on communicative interac-
                                                              tions in situated multi-agent systems [19]. The objec-
tions. In contrast, the agent environment in our work fo-
                                                              tive is to separate the management of dynamic evolu-
cuses on mediated coordination in situated multi-agent
                                                              tion of organizations (by the agent environment) from
systems that are typically applied in domains where
                                                              the actual functionality provided by the agents playing
agents have an explicit position in the environment, such
                                                              roles in the organizations. In this approach, a set of
as automated transportation systems, robotics, manufac-
                                                              organization laws define the way organizations should
turing control, mobile and ad-hoc networks, wireless
                                                              evolve given the current context. The aim of separat-
sensor networks, traffic monitoring and control, etc.
                                                              ing these concerns is to make it easier to understand,
                                                              design, and manage organizations in multi-agent sys-
Distributed constraint satisfaction problems. Fi-             tems. A long-term goal of our research is to develop
nally, there are points of similarity between distributed     a formally founded architectural description language
constraint satisfaction algorithms and the work pre-          for situated multi-agent systems. Support for defining
sented in this paper. Distributed constraint satisfaction     different types of laws will be an important part of this
algorithms are used to solve unbounded problems, i.e.         language.
the variables and constraints involved in the problem are
not bounded (e.g. in meeting scheduling) or the admissi-
ble values and value tuples are unbounded (e.g. in sup-       ACKNOWLEDGEMENTS
ply chain configuration). In asynchronous backtrack-
ing [13], each agent (representing one variable) main-        Danny Weyns is supported by the Research Funding
tains a view on the set of agents called “agentview”. The     Flanders (FWO). We are grateful to the anonymous re-
agentview determines the agents with higher priorities        viewers for the valuable feedback on earlier versions of
that are relevant for the agent’s search. The relative pri-   this paper.

                        Ubiquitous Computing and Communication Journal                                                12
References                                                [12] R. S. Englemore and A. Morgan. Blackboard Sys-
                                                               tems. Addison-Wesley, 1988.
 [1] AGV      Simulator,     DistriNet,   AgentWise.
     http://www.cs.kuleuven.ac.be/∼distrinet/taskforces [13] B. Faltings. Distributed Constraint Programming,
     /agentwise/agvsimulator/.                               pages 699–729. Foundations of Artificial Intelli-
                                                             gence. Elsevier, 2006.
 [2] R. Arkin.     Behavior-Based Robotics.      Mas-
     sachusetts Institute of Technology, MIT Press, [14] J. Ferber. An Introduction to Distributed Artificial
     Cambridge, MA, USA, 1998.                               Intelligence. Addison-Wesley, 1999.

 [3] S. Bandini, S. Manzoni, and C. Simone. Dealing       [15] J. Ferber and J. Muller. Influences and Reaction:
     with Space in Multiagent Systems: A Model for             a Model of Situated Multiagent Systems. 2nd
     Situated Multiagent Systems. In 1st Joint Confer-         International Conference on Multi-agent Systems,
     ence on Autonomous Agents and Multiagent Sys-             Japan, AAAI Press, 1996.
     tems. ACM Press, 2002.
                                                       [16] E. Freeman, S. Hupfer, and K. Arnold. JavaS-
 [4] F. Bellifemine, A. Poggi, and G. Rimassa. Jade, A      paces: Principles, Patterns, and Practice. Addison-
     FIPA-compliant Agent Framework. In 4th Interna-        Wesley, 1997.
     tional Conference on Practical Application of In-
     telligent Agents and Multi-Agent Technology, Lon- [17] D. Gelernter and D. Carrierro. Coordination lan-
     don, UK, 1999.                                         guages and their significance. Communications of
                                                            the ACM, 35(2), 1992.
 [5] R. Brooks.       Achieving artificial intelligence
     through building robots. AI Memo 899, MIT Lab, [18] P. Grass´ . La Reconstruction du nid et les Co-
     1986.                                                  ordinations Inter-Individuelles chez Bellicositer-
                                                            mes Natalensis et Cubitermes sp. La theorie de
 [6] S. Brueckner. Return from the Ant, Synthetic
                                                            la Stigmergie. Essai d’interpretation du Comporte-
     Ecosystems for Manufacturing Control. Ph.D Dis-
                                                            ment des Termites Constructeurs. Insectes Soci-
     sertation, Humboldt University, Berlin, Germany,
                                                            aux, 6:41–81, 1959.
                                                          [19] R. Haesevoets, B. V. Eylen, D. Weyns, A. Helle-
 [7] N. Busi, P. Ciancarini, R. Gorrieri, and G. Zavat-
                                                               boogh, T. Holvoet, and W. Joosen. Coordinated
     taro. Coordination models: A guided tour. In Co-
                                                               monitoring of traffic jams with context-driven dy-
     ordination of Internet Agents: Models, Technolo-
                                                               namic organizations. In Engineering Environment-
     gies, and Applications, pages 6–24. 2001.
                                                               Mediated Multiagent Systems, Lecture Notes in
 [8] G. Cabri, L. Leonardi, and F. Zambonelli. MARS:           Computer Science. Springer, 2008.
     a Programmable Coordination Architecture for
     Mobile Agents.       IEEE Internet Computing, [20] T. Malone and K. Crowston. The interdisci-
     4(4):26–35, 2000.                                       plinary study of coordination. ACM Comput. Surv.,
                                                             26(1):87–119, 1994.
 [9] H. Cardoso, A. Rocha, and E. Oliveira. Virtual or-
     ganization support through electronic institutions [21] M. Mamei and F. Zambonelli.            Field-based
     and normative multi-agent systems. In Handbook          Coordination for Pervasive Multiagent Systems.
     of Research on Nature Inspired Computing for            Springer-Verlag New York, Inc., Secaucus, NJ,
     Economy and Management II. Idea Group, Inc.,            USA, 2005.
                                                        [22] K. Mertens. An Ant-Based Approach for Solving
[10] C. Castelfranchi, F. Dignum, C. Jonker, and             Dynamic Constraint Optimization Problems. Ph.D
     J. Treur. Deliberative Normative Agents: Princi-        Dissertation, Katholieke Universiteit Leuven, Bel-
     ples and Architecture. In 6th International Work-       gium, 2006.
     shop on Intelligent Agents VI, Agent Theories, Ar-
     chitectures, and Languages. Springer, 2000.        [23] N. Minsky and V. Ungureanu. Law-Governed In-
                                                             teraction: A Coordination and Control Mechanism
[11] P. Ciancarini. Coordination models and languages        for Heterogeneous Distributed Systems. ACM
     as software integrators. ACM Comput. Surv.,             Transactions on Software Engineering Methodolo-
     28(2):300–302, 1996.                                    gies, 9(3), 2000.

                      Ubiquitous Computing and Communication Journal                                         13
[24] A. Murphy, G. Picco, and G. Roman. LIME:                 Dissertation, Katholieke Universiteit Leuven, Bel-
     a Middleware for Physical and Logical Mobil-             gium, 2006.
     ity. 21th International Conference on Distributed
     Computing Systems, 2001.                            [35] K. Sycara. Multiagent Systems. Artificial Intelli-
                                                              gence, 10(2):79–93, 1998.
[25] P. Noriega and C. Sierra. Electronic Institu-
     tions: Future Trends and Challenges. In 6th In-     [36] W. Vasconcelos. Logic-Based Electronic Institu-
     ternational Workshop on Cooperative Information          tions. Vol. 2990 of Lecture Notes in Computer
     Agents, Lecture Notes in Computer Science, Vol.          Science. Springer, 2004.
     2446. Springer-Verlag, London, UK, 2002.         [37] M. Weiser. The computer for the 21 st century.
[26] A. Omicini, S. Ossowski, and A. Ricci. Co-            Scintific American, pages 94–104, 1991. Reprinted
     ordination infrastructures in the engineering of      in IEEE Pervasive Computing, Jan.–Mar. 2002,
     multiagent systems. In Methodologies and Soft-        pp. 19–25.
     ware Engineering for Agent Systems: The Agent- [38] D. Weyns. An Architecture-Centric Approach
     Oriented Software Engineering Handbook, chap-         for Software Engineering with Situated Multiagent
     ter 14. Kluwer Academic Publishers, 2004.             Systems. Ph.D Dissertation, Katholieke Univer-
[27] A. Omicini, A. Ricci, M. Viroli, C. Castel-        siteit Leuven, Belgium, 2006.
     franchi, and L. Tummolini. Coordination arti- [39] D. Weyns, N. Bouck´ , and T. Holvoet. DynC-
     facts: Environment-based coordination for intel-   NET: A Protocol for Flexible Task Assignment in
     ligent agents. In 3rd Joint Conference on Au-      Situated Multiagent Systems. In 1st International
     tonomous Agents and Multiagent Systems, NY,        Conference on Self-Adaptive and Self-Organizing
     2004.                                              Systems, SASO, Boston, USA, 2007.
[28] A. Omicini and F. Zambonelli. Coordination for [40] D. Weyns and T. Holvoet. From Reactive Robotics
     Internet application development. Autonomous        to Situated Multiagent Systems: A Historical Per-
     Agents and Multi-Agent Systems, 2(3):251–269,       spective on the Role of Environment in Multiagent
     1999. Special Issue: Coordination Mechanisms        Systems. In Engineering Societies in the Agents
     for Web Agents.                                     World VI, 6th International Workshop, ESAW, Ku-
[29] H. V. D. Parunak. Go to the Ant: Engineering Prin-  sadasi, Turkey, Lecture Notes in Computer Sci-
     ciples from Natural Agent Systems. Annals of Op-    ence, Vol. 3963. Springer-Verlag, 2006.
     erations Research, 75:69–101, 1997.                 [41] D. Weyns, A. Omicini, and J. Odell. Environment
[30] A. Rao and M. Georgeff. BDI Agents: From The-            as a First-Class Abstraction in Multiagent Sys-
     ory to Practice. In 1st International Conference on      tems. Autonomous Agents and Multi-Agent Sys-
     Multiagent Systems, 1995, Agents, San Francisco,         tems, 14(1), 2007.
     USA. MIT Press, 1995.                               [42] D. Weyns, V. Parunak, F. Michel, T. Holvoet,
[31] G. Roman, C. Julien, and A. Murphy. A Declar-            and J. Ferber. Environments for Multiagent Sys-
     ative Approach to Agent Centered Context-Aware           tems, State-of-the-Art and Research Challenges.
     Computing in Ad Hoc Wireless Environments. In            In D. Weyns, V. Parunak, and F. Michel, edi-
     Software Engineering for Large-Scale Multi-Agent         tors, Environments for Multiagent Systems, vol-
     Systems, LNCS, Vol. 2603. Springer Verlag, 2003.         ume 3374 of Lecture Notes in Computer Science.
                                                              Springer-Verlag, 2005.
[32] D. Saha and A. Mukherjee. Pervasive comput-
     ing: A paradigm for the 21st century. Computer, [43] D. Weyns, K. Schelfthout, T. Holvoet, and
     36(3):25–31, 2003.                                   T. Lefever. Decentralized control of E’GV trans-
                                                          portation systems. In 4th Joint Conference on Au-
[33] M. Satyanarayanan. Pervasive computing: Vi-          tonomous Agents and Multiagent Systems, Indus-
     sion and challenges. Personal Communications,        try Track, Utrecht, 2005. ACM Press.
     8(4):10–17, 2001.
                                                     [44] M. Wooldridge and N. Jennings.         Intelligent
[34] K. Schelfthout. Supporting Coordination in Mo-       agents: theory and practice. The Knowledge En-
     bile Networks: A Middleware Approach. Ph.D           gineering Review, 10(2), 1995.

                      Ubiquitous Computing and Communication Journal                                         14

Shared By:
Tags: UbiCC, Journal
Description: UBICC, the Ubiquitous Computing and Communication Journal [ISSN 1992-8424], is an international scientific and educational organization dedicated to advancing the arts, sciences, and applications of information technology. With a world-wide membership, UBICC is a leading resource for computing professionals and students working in the various fields of Information Technology, and for interpreting the impact of information technology on society.
UbiCC Journal UbiCC Journal Ubiquitous Computing and Communication Journal www.ubicc.org
About UBICC, the Ubiquitous Computing and Communication Journal [ISSN 1992-8424], is an international scientific and educational organization dedicated to advancing the arts, sciences, and applications of information technology. With a world-wide membership, UBICC is a leading resource for computing professionals and students working in the various fields of Information Technology, and for interpreting the impact of information technology on society.