Abstract: Mobile agent technology makes it
possible to reduce network traffic, overcome network latencies and enhance
robustness and fault-tolerant capabilities of distributed applications.
However, it is sometimes difficult or even impossible to take full advantage
of these technical benefits because of the lack of an appropriate
infrastructure for overcoming problems related to connectivity (e.g. access
through firewalls), security, location transparency, and use of proprietary
tools. This paper discusses these problems and introduces the requirements
for various infrastructure components and their implementation with the aim
of enhancing the practicality and accelerating the deployment of mobile
agents.
Abstract: Network management is gaining increasing
importance due to the pervasiveness of computer networks. Neverless,
mainstream approaches to network management are presently limited by
centralized management strategies and poor flexibility-a consequence of their
rigid client-server architecture. In this paper we analyze how to overcome
these problems by new design paradigms and technologies encompassing the
capability to relocate dynamically the components of a distributed
application. We evaluate the opportunities offered by this approach and
provide feasibility considerations, also discussing a few interim
architectural solutions adopted in our on-going implementation work.
Keyword: code mobility, mobile agents, network
management
Abstract: Active networks are receiving increasing
attention due to their promises of great flexibility in tailoring services to
applications. This capability stems from the exploitation of network devices
whose behavior can be changed dynamically by applications, possibly using
technologies and architectures originally conceived for mobile code systems.
Notwithstanding the promises of active networks, real-world applications that
clearly benefit by them are still missing. We describe the design of a
videoconference system conceived expressly for operation over active
networks. The goal of this activity is to pinpoint the benefits that mobile
code and active networks bring in this application domain and to provide
insights for the exploitation of these concepts in other application domains.
Abstract: Driven by the question of how to
identify potential communication partners and the need for well-suited
communication schemes in agent-based systems, the authors discuss two
communication concepts: sessions and global event management. Sessions
establish either actively or passively a context for inter-agent
interactions. Communication partners are addressed by globally unique agent
identifiers or via badges. Communication in sessions is based on RPC or
message mechanisms. Global event management addresses the need for anonymous
communication. Event managers are employed as a synchronization means within
agent groups. Based on this approach, they introduce synchronization
objects-active components that offer various synchronization services. The
presented model is finally mapped onto OMG event services.
Abstract: Orphan detection in distributed systems
is a well researched field for which many solutions exist. These solutions
exploit well defined parent-child relationships given in distributed systems.
But they are not applicable in mobile agent systems, since no similar natural
relationship between agents exist. Thus new protocols have to be developed.
In this paper one such protocol for controlling mobile mobile agents and for
orphan detection is presented. The `shadow' approach presented in this paper
uses the idea of a placeholder (shadow) which is assigned by the agent system
to each new agent. This defines an artificial relationship between agents and
shadow. The shadow records the location of all dependent agents. Removing the
root shadow implies that all dependent agents are declared orphan and
eventually be terminated. We introduce agent proxies that create a path from
shadow to every agent. In an extension of the basic protocol we additionally
allow the shadow to be mobile. The shadow approach can be used for
termination of groups of agents even if the exact location of each single
agent is not known.
Abstract: The technical enforcement of
intellectual property (IP) rights often conflicts with the ability to use the
IP. This is especially true when the IP is data, which may easily be copied
while it is being accessed. As the electronic commerce of data becomes more
widespread, traditional approaches will prove increasingly problematic. In
this paper, we show that the mobile agent architecture is an ideal solution
to this dilemma: by providing full access to the data but charging for the
transmission of results back to the user-results-based billing-we resolve the
access vs. protection conflict. We define new requirements for agent
frameworks to implement results-based billing: "data-aware accounting" and
"data-tight sandboxing", which, along with common requirements such as
authentication, authorization, agent self-monitoring and efficiency, provide
the mechanisms by which database owners can effectively grant users access to
their intellectual property.
Abstract: Very large networks with thousands of
applications and millions of users pose serious problems to the current
traditional technology. Moreover, if synchronised client behaviour exists
then the limitations are strongly felt. Mobile agent systems can be a
suitable technology to answer to these requirements if some aspects of the
architecture are carefully designed. This paper proposes a cooperative mobile
agent system with a very dynamic and scalable trading service. The system
allows applications to deploy servers onto the network to respond to demand
making them self-configurable. Clients can also use mobile agents with
performance gains. Sets of simulations were performed to study the
scalability of the overall system.
Abstract: Mobile code technology is gaining
growing importance, for example for electronic commerce applications. For the
widespread use of mobile agents, many security aspects have to be seriously
considered, and security problems have to be solved to convince potential
users of this technology. So far, most work concerning security in the area
of mobile code has been done to protect hosts from malicious agents. However,
in the more recent literature, approaches have been discussed which lead to
different levels of security for the mobile agent against attacks by
dishonest hosts. A central problem consists in the integrity of computation:
in order to profit from mobile agent technology, techniques have to be used
which guarantee the correctness of the results returned by a mobile agent to
its originator. In this paper, we explain a general approach to cope with the
integrity problem by supplementing computation results with very short proofs
of correctness which can be checked, a posteriori, by the originator of the
mobile code to verify whether the result is reliable or not.
Abstract: This paper focuses on agents and their
interplay in manufacturing on two levels: one is the production plant control
level employing agents that cope with malfunctions of production units in
order to keep the production flow up and running. The other is the production
plant configuration level incorporating agents for the investigation of
improved production plant topological layouts in an anytime fashion. The
interplay of agents from both levels represents a new approach in production
plant configuration, taking into account the highly dynamic flavour of the
scenario imposed by the liability to machine failures. We present
experimental results and experiences with our implementation of the lower
level and propose an elaborate architecture of the upper level.
Keyword: agents, manufacturing, scheduling,
configuration
Abstract: In this paper we present the basic
design philosophy of the Bond agent system, the multi-plane agent model and
the component-based architecture implementing the model. We discuss several
applications of Bond agents: resource discovery, an adaptive video service, a
workflow management system, a system of agents for remote monitoring of web
servers, and a network of PDE solvers.
Keyword: agents, resource discovery, workflow,
remote monitoring, scientific applications
Abstract: JavaSeal is a secure mobile agent kernel
that provides a small set of abstractions for constructing agent
applications. This paper describes the design of these abstractions and their
implementation. We address the limitations of the Java security model that
had to be overcome, and then present a medium-sized e-commerce application
that runs over JavaSeal.
Abstract: Existing mobile agent systems are often
constructed with a focus on intelligence and autonomy issues. We have
approached mobility from a different direction. The area of distributed
systems research is quite mature, and has developed mechanisms for
implementing a "sea of objects" abstraction. We have used this as our
starting point, and have added to this the ability for objects to move from
host to host, whilst maintaining location-transparent references to each
other. This provides a powerful and straightforward programming paradigm
which embraces programming language semantics such as strong typing, method
invocation and encapsulation. We have built a mobile object workbench on top
of a flexible Java middleware platform, which can be used as a the basis for
a mobile agent system. In this paper, we examine the philosophy and design of
the mobile object workbench and describe how this is being extended to
provide a security framework oriented towards agents.
Abstract: The paper surveys several coordination
models for mobile agent applications and outlines the advantages of uncoupled
coordination models based on reactive blackboards. On this base, the paper
presents the design and the implementation of the MARS system, a coordination
tool for Java-based mobile agents. MARS defines Linda-like tuple spaces that
can be programmed to react with specific actions to the accesses made by
mobile agents.
Abstract: A particular challenging area where
agent technology is increasingly applied is the Communication Networks field.
As networks become increasingly complex, hard to manage and control the ideal
of a distributed, intelligent network management and control system is
becoming more and more of a necessity. This paper concentrates on the
allocation of service demands spanning network domains owned and controlled
by distinct operators. In particular, the focus is on an agent-based solution
that has been defined in order to allow automatic intra-domain resource
allocation and inter-domain negotiations between peer operators.
Self-interested agents interact in order to define consistent end-to-end
routes that satisfy Quality of Service requirements, network resources
availability and utility's maximisation.
Keyword: agent negotiation, agent interaction,
agent communication
Abstract: GMD FOKUS, IBM and The Open Group have
jointly submitted to the OMG a specification on the Mobile Agent Facility for
evaluation and adoption. The paper gives an overview of the technical
requirements of the OMG Request for Proposal, the design goals of the joint
submission, the architecture of the proposed Mobile Agent Facility, and the
salient features of its interfaces.
Abstract: Intelligent agents have been shown to be
a good approach to addressing the issues of mobile computing. However, before
the approach can be commercially viable, a set of management capabilities
that support the controls of intelligent agents in a mobile environment need
to be in place. Since controls can only be applied after the target agent is
located, an effective agent search algorithm is an indispensable part of the
management functions. The authors propose a new algorithm, the highest
probability first algorithm, for locating the target agent. The approach
makes use of the execution time information to reduce cost and network
traffic. The execution time of the agent on a server is assumed to be
binomial distributed and therefore is more realistic.
Abstract: To realize its promise of providing
scaleable and optimal use of network resources, mobile agent technology must
be integrated with non-mobile architectures (e.g., client-server) while
taking into account the specific needs of applications. The paper introduces
a general characterization of mobile agent applications that provides a
framework for reasoning about such optimization issues. This framework is
refined to enable analysis of alternative mobility policies, and the
development of a new strategic mobility policy that uses the application
characterization to intelligently decide on mobility. The analysis shows that
the extreme cases of `always mobile' and `always stationary' are sub-optimal
with respect to strategic mobility. Strategic mobility has been implemented
in a software prototype called Mobile-AgentX and successfully tested in an
application of concurrent engineering of micro-electro-mechanical systems
(MEMS).
Abstract: Jocaml is a system for mobile agents
built inside the Objective-Caml language. Jocaml eases the development of
concurrent, distributed and mobile agent based applications, by expressing
useful distribution abstractions using a small set of simple but powerful
primitives taken from the Join-Calculus[5]. The system provides total
transparency for migration, application states (after migration, all threads
resume their execution in the state before migration), communications
(communication channels with other agents are kept during migration) and
composition (sub-agents migrate with their parent agent). Other features of
the Jocaml system are mobile objects with transparent remote method
invocation, distributed garbage collection, failure detection and execution
efficiency. Jocaml has already been used in several applications, such as a
mobile editor, some distributed games and a distributed implementation of
Ambients[4]. This paper describes the Jocaml programming model and language,
its current implementation and some interesting applications.
Abstract: Jackal is a Java-based tool for
communication using the KQML agent communication language. Some features that
make it extremely valuable to agent development are its conversation
management facilities, flexible, blackboard style interface and ease of
integration. Jackal has been developed in support of an investigation of the
use of agents in enterprise-wide integration of planning and execution for
manufacturing. This paper describes Jackal at a surface and design level, and
demonstrates its use in a multi-agent system that supports intelligent
integration of enterprise planning and execution.
Abstract: In a de-regulated market the
distribution utilities will compete with added value for the customer in
addition to the delivery of energy. We describe a system consisting of a
collection of software agents that monitor and control an office building. It
uses the existing power lines for communication between the agents and the
electrical devices of the building, such as sensors and actuators for lights,
heating, and ventilation. The objectives are both energy saving and
increasing customer satisfaction through value added services. Results of
qualitative simulations and quantitative analysis based on thermodynamical
modeling of an office building and its staff using four different approaches
for controlling the building indicate that significant energy savings, up to
40 per cent, can be achieved by using the agent-based approach. The
evaluation also shows that customer satisfaction can be increased in most
situations. In fact, this approach makes it possible to control the trade-off
between energy saving and customer satisfaction (and actually increase both
in comparison with current approaches).
Keyword: multi-agent systenms
Abstract: An open problem in mobile agent research
is the interaction between agents in different `worlds'. The authors survey
various approaches to agent interaction and discuss the interoperation
between Telescript and ffMAIN agents through the use of the hypertext
transfer protocol (HTTP) and the shared information space provided by ffMAIN.
Abstract: Mobile Maude is a mobile agent language
extending the rewriting logic language Maude and supporting mobile
computation. Mobile Maude uses reflection to obtain a simple and general
declarative mobile language design and makes possible strong assurances of
mobile agent behavior. The two key notions are \emph{processes} and
\emph{mobile objects}. Processes are located computational environments where
mobile objects can reside. Mobile objects have their own code, can move
between different processes in different locations, and can communicate
asynchronously with each other by means of messages. Mobile Maude's key novel
characteristics include: (1) reflection as a way of endowing mobile objects
with ``higher-order'' capabilities; (2) object-orientation and asynchronous
message passing; (3) a high-performance implementation of the underlying
Maude basis; (4) a simple semantics without loss in the expressive power of
application code; and (5) security mechanisms supporting authentication,
secure message passing, and secure object mobility. Mobile Maude has been
specified and prototyped in Maude. Here we present the Mobile Maude language
for the first time, and illustrate its use in applications by means of
Milner's cell-phone example. We also discuss security and implementation
issues.
Keyword: mobile agent, programming language,
mobile object, mobile code, object oriented, security
Abstract: This paper describes a guide system and
the software architecture of an autonomous interactive robot based on a
multi-agent system. A robot navigation system is developed so that the robot
can guide people through halls in various types of exhibitions. An infrared
location system is implemented on hallway ceilings, and thus the environment
is part of a sensor-distributed robot system. Real-world guide agent plays
the role of "ROBOT-MEDIA" to integrate information between the information
space of the mobile computer and the physical space of the exhibits in order
to guide visitors in physical space. This research aims to develop a
cooperative adaptive systems as two-way communication among space, media and
human beings to construct transparent knowledge boundaries between real space
and virtual space generated from computer data is using shared-space
technology to create distributed intelligence on shared space in order to
manage the communication and guide in a laboratory. The experimental results
of using an autonomous mobile robot equipped with a compass verify this
proposed software architecture.
Keyword: a multi-agent system, autonomous mobile
robot, mobile assistant, real-world guide agent
Abstract: We describe a way to save and restore
the state of a running Java program. We achieve this on the language level,
without modifying the Java virtual machine, by instrumenting the programmer's
original code with a preprocessor. The automatically inserted code saves the
runtime information when the program requests state saving and re-establishes
the program's runtime state on restart. The current preprocessor prototype is
used in a mobile agent scenario to offer transparent agent migration for
Java-based mobile agents, but could generally be used to save and
re-establish the execution state of any Java program.
Abstract: Mobile agents add a new communication
paradigm to traditional network communication mechanisms. In contrast to the
classical mechanisms like remote programming, RPC, or client-server systems,
mobile agents have specific advantages when used in a heterogeneous
networking environment such as the World Wide Web. So far, the pervasiveness
of publicly available mobile agent platforms is not given. Offering a
seamless integration of mobile agents into the widespread and well-accepted
WWW environment is crucial for the success of mobile agents. One of the
growing fields of interest in the Web is the area of electronic commerce.
Mobile Web-commerce agents could play a prominent role in future electronic
commerce scenarios, if the malicious host problem could be solved. Our paper
describes the integration of mobile agents into the Web and the use of Java
cards to allow a mobile agent to store and transport data securely. This
should promote the usage of mobile agents for electronic commerce purposes.
Keyword: mobile agents, electronic commerce,
trusted computing base, WWW, security, smartcard, java card
Abstract: We present a programming model and
system support for the development of self-monitoring distributed
applications, which sense changes in their networked environment and react by
dynamically relocating their components. The monitoring service provides two
unique capabilities. First, it enables to perform application-level
monitoring, as opposed to only conventional system-level monitoring, without
interfering with the basic application logic. Second, it enables dynamic
relocation of the monitoring components, in addition to the migration of the
monitored components, again, without requiring changes inside application
components. The monitoring service and programming model were implemented as
a subsystem of FarGo, a programming environment for dynamically-relocatable
distributed application. In addition to a programming language interface,
relocation can be programmed using a high-level script language, and manually
controlled using a graphical tool that tracks component relocations.
Keyword: agent-based monitoring, programming
model, mobile code
Abstract: The opportunities offered by the
Internet are encouraging research aimed at the creation of a computational
infrastructure that exploits the wide spread communication infrastructure.
The mobile computation paradigm is a proposal to build a computational
infrastructure that goes beyond the well-known client-server paradigm and
increases dynamicity and flexibility. Despite the promising first steps,
there is still confusion on the role of paradigms and technology in the
development on applications based on the mobile computation paradigm. We
present a case study in which we develop serveral versions of an application
using different paradigms and different technologies in order to show when
these concepts come into play and which are their relationships.
Keyword: mobile code, design paradigms, case study
Abstract: Mobile agents, programs that move within
a system performing a set of tasks, are an active field of research. The
focus of current research, however, is on the development of execution
platforms and applications for mobile agents and not on methodologies for
building agents. Creating mobile agents can be tedious and susceptible to
errors. We propose a framework where the agent is composed using a
well-defined set of categories of software components. Building systems from
software components has already proven useful in the context of large
software systems, increasing the productivity of the development process and
the reliability of the resulting system by reusing proven components. We
claim that the same holds true for the construction of mobile agents for
network and systems management as well as for other domains. We have designed
and implemented an agent construction toolkit (the AgentBean Development
Kit-ADK) to demonstrate the usability and flexibility of this approach.
Keyword: Java, Mobility, Systems, Tools, Software
Components, Network Management, Agent Construction
Abstract: Wireless communication with mobile
computing devices is known to be problematic. It is very different in
character from conventional communication over wired networks. Since many
distributed applications make assumptions about network characteristics, they
may not be used in a hostile mobile environment. The authors are proposing a
new kind of messaging system which incorporates adaptive behaviour into the
messages themselves. They call these `smart messages', and implement them
using mobile agents. They are transported between machines via agent
airports. The metaphor used is of a message being delivered by a courier
(mobile agent), through agent airports, on a potentially unresolved route.
The `intelligence' is in the messages (couriers in our metaphor) themselves
rather than in the network. The approach taken expands on self-routing
capabilities of current mobile agent systems such as Aglets or Telescript.
They aim to provide structured support for handling the particular problems
associated with wireless communications. These include very limited, variable
and asymmetric bandwidth, frequent and prolonged disconnections, geographical
mobility and high usage costs. They argue that this offers an efficient,
adaptable and robust solution to many of the problems associated with this
hostile communications environment.
Abstract: In this paper, we present experiences
from building several mobile agent-based distributed applications using the
agent system TACOMA (Tromsoe And COrnell Moving Agents). Our hope is to
demonstrate mobile agent applicability potential through some real and
concrete examples. We conclude that mobile agents, even if they simplify
remote installation of software, basically complement other structuring
techniques in distributed applications.
Abstract: Cooperating merchants establish a
distributed marketplace under the auspices of an independent market
authority. Each merchant's server is equipped with a trusted device, a smart
card for example, provided by the market authority. The market authority
plays the role of a trusted third party for the customer as well as for the
merchants. This paper describes protocols that prevent the malicious
alteration of the data collected by visiting mobile agents roaming through
the marketplace without being detectable by subsequent servers or by the
owner of the agent upon its return. Another protocol makes the trusted device
a secure execution platform for routines provided by the agent owner.
Keyword: agents, e-commerce, security, mobile
agent
Abstract: When mobile agents do comparison
shopping for their owners, they are subject to attacks of malicious hosts
executing the agents. We present a family of protocols that protect the
computation results established by free-roaming mobile agents. Our protocols
enable the owner of the agent to detect upon its return whether a visited
host has maliciously altered the state of the agent, thus providing forward
integrity and truncation resilience. In an environment without public-key
infrastructure, the protocols are based only on a secret hash chain. With a
public-key infrastructure, the protocols also guarantee non-repudiability.
Abstract: Systems comprised of multiple
interacting mobile agents provide an alternate network computing paradigm
that integrates remote data access, message exchange and migration; which up
until now have largely been considered independently. This paper focuses on
basic one-to-one agent interactions, or paradigms, which can be used as
building blocks; allowing larger system characteristics and performance to be
understood in terms of their combination. This paper defines three basic
agent paradigms and presents associated performance models. The paradigms are
evaluated quantitatively in terms of network traffic, overall processing time
and size of memory used, in the context of a distributed DB system developed
using the Bee-gent Agent Framework. Comparison of the results and models
illustrates the performance trade-off for each paradigm, which are not
represented in the models, and some implementation issues of agent
frameworks.
Keyword: agents, agent interaction
Abstract: Role theory [6] deals with collaboration
and coordination; roles have also been applied to distributed systems
management [31] and to agent and robot systems [2, 43]. However, it has been
difficult to realize these representations in an automated or semi-automated
system, due to the lack of adequate formalism and corresponding abstractions
in software. Role models are relatively new concepts in object-oriented
software engineering that emphasize patterns of interaction and therefore
rectify this situation for software analysis and design. This paper provides
examples of agent role models and explains how role modeling can be used to
facilitate agent system analysis and design. We also discuss role model
implementations based on two approaches: the Role Object pattern and
aspect-oriented programming (AOP).
We propose the use of mobile reconfiguration agents for the
efficient, secure, and scalable dynamic reconfiguration of Internet systems.
We describe a CORBA object-oriented framework that supports dynamic
reconfiguration and allows customization to different kinds of computing
environments ranging from PDAs and embedded systems with limited resources to
powerful workstations. Abstract: As various Internet services,
e-commerce, and information systems permeate our lives, their continual
availability becomes a dominant issue. But continuing software evolution
requires system reconfiguration. Running systems must upgrade their
components or change their configuration parameters. In addition, Internet
services often need to serve thousands or millions of users. This scenario
raises three conflicting issues: availability, configurability, and
scalability.
Keyword: mobile agent, CORBA, distributed system
Abstract: With the advances of wireless
communication, mobile computing will become ubiquitous. This will lead to
adaptive computing, where electronic services support the user anytime,
anywhere and in every form. Adaptive services must take the user
requirements, the current geolocation, the situation he or she is facing, the
available network connection and the associated usage costs into account.
This very much relies on flexible and adaptive system mechanisms in the
network. This paper presents the results of the ACTS AMASE project which has
adapted a mobile agent system for the use in wireless networks to support
mobile users. We concentrate on issues related to making mobile agent-based
services aware to the context of the user. We examine (a) a mechanism that
allows agents to adapt their behavior to the current situation in the
wireless network, and (b) a system mechanism that automatically adapts agent
execution to the given context. Finally we present an overview about the
current Europe-wide AMASE test bed and the realized application.
Abstract: Mobile agents are a new paradigm for
distributed computing that is especially well suited for mobile computing
over global wireless networks. This paper describes the approach taken in the
ACTS (Advanced Communication Technologies and Services) OnTheMove project to
integrate a mobile agent system into the Mobile Application Support
Environment (MASE), a middleware for mobile computing. In this project, an
existing mobile agent system was adapted for the requirements of mobile
computing. We present the changes that had to be made to the agent system to
adapt it to wireless communication. We also present some of the application
areas where a mobile agent system is suitable for mobile communication. We
describe an agent-based pre-fetcher application where an agent operates
disconnected from the user on the fixed network and prepares Web pages for
the anticipated next connection of the user using the quality-of-service
trading functions available in MASE.
Abstract: Third-generation mobile networks will be
characterized by service variety and multi-provider scenarios, requiring new
concepts for service control and location management. Mobile agents seem to
be appropriate for service customization and user localization. However, it
is very unclear whether or not their migration costs lead to an overload of
the underlying signaling network. This paper answers the question of whether
the use of mobile agents in telecommunication systems makes sense at all, by
analytically comparing a conventional stationary concept with mobile agents.
These analyses are based on various call and movement behavior patterns of
mobile customers, and on measurement results achieved in the mobile agent
system JAE (Java Agent Environment).
Abstract: There is considerable interest in
developing runtime infrastructures for programs that can migrate from one
host to another. Mobile programs are appealing because they support efficient
utilization of network resources and extensibility of information servers.
This paper presents a scheduling scheme for allocating resources to a mix of
real-time and non real-time mobile programs. Within this framework, both
mobile programs and hosts can specify constraints on how CPU should be
allocated. On the basis of the constraints, the scheme constructs a
scheduling graph on which it applies several scheduling algorithms. In case
of conflicts between mobile program and host specified constraints, the
schemes implements a policy that resolves the conflicts in favor of the host.
The resulting scheduling scheme is adaptive, flexible, and enforces both
program and host specified constraints.
Keyword: Mobile programs, CPU allocation, Java
virtual machine, Security
As a part of the project OSM (Open Service Model), mobile
agents are built on top of two well-established technologies: CORBA and Java.
The first is used as a conceptual framework for interoperability, the latter
as the programming environment. Since Java does not provide the necessary
persistency of execution state, the concept of OSM service profiles is used
to embed Java classes and to transfer a coarse-grained execution context in a
secure and efficient manner. Abstract: This paper presents a mobile agent
approach that aims at satisfying the following requirements of open
Internet-based electronic service markets: the mobile agent system should be
usable by any Internet user without a need for specifically configurated
non-standard software tools. It should reduce costs in mobile computing
environments and therefore enhance overall efficiency. It should suit well to
an electronic service market where local services are commerically offered
and business transactions predominate the interaction between customers and
suppliers.
Abstract: Communication between mobile agents and
their users is an interesting but largely unresearched topic with important
applications. We investigate the various types of interaction required and
propose a versatile, easy-to-implement and secure WWW-based method to allow
mobile agents to interact with arbitrary users.
Abstract: MASIF is a standard for mobile agent
systems which has been adopted as an OMG technology. It is an early attempt
to standardize an area of industry that, even though popular in the recent
past, still has not caught on. In its short history MASIF has raised interest
in industry and academia. There are already a number of projects pursuing
MASIF reference implementation. MASIF addresses the interfaces between agent
systems, not between agent applications and the agent system. Even though the
former seem to be more relevant for application developers, it is the latter
that impact interoperability between different agent systems. This paper
describes two sets of interfaces that constitute MASIF: MAFAgentSystem and
MAFFinder (the acronym MAF is used for historical reasons). MASIF extensively
addresses security. The paper provides a brief description of MASIF and its
interfaces, data types and data structures.
"Things That Think," putting computation and communication in everyday
places such as your shoes, your kitchen, or your own body. TTT shares the
challenges and potentials of ubiquitous computing and embedded network
applications. We have found that the flexibility of a distributed agents
architecture is well suited for this application domain, enabling us to
easily build applications and to reconfigure our systems on the fly. Hive
enables us to make our environment and network more alive. Abstract: Hive is a distributed agents platform, a
decentralized system for building applications by networking local system
resources. This paper presents the architecture of Hive, concentrating on the
idea of an "ecology of distributed agents" and its implementation in a
practical Java based system. Hive provides ad-hoc agent interaction,
ontologies of agent capabilities, mobile agents, and a graphical interface to
the distributed system. We are applying Hive to the problems of networking
Keyword: agents, mobile agents, distributed
objects, ubiquitous computing, Java, networks, embedded systems
In this paper, we propose an algorithm that guarantees delivery
to highly mobile agents using a technique similar to a distributed snapshot.
A number of enhancements to this basic idea are discussed, which limit the
scope of message delivery by allowing dynamic creation of the connectivity
graph. Notably, the very structure of our algorithm makes it amenable not
only to guarantee message delivery to a given mobile agent, but also to
provide multicast communication to a group of agents-another open problem
in research on mobile agents. After presenting our algorithm and its
properties, we discuss its implementability by analyzing the requirements on
the underlying mobile agent platform, and argue about its applicability.
Abstract: The provision of a reliable
communication infrastructure for mobile agents is still an open research
issue. The challenge to reliability we address in this work does not come
from the possibility of faults, but rather from the mere presence of
mobility, which slightly complicates the problem of ensuring the delivery of
information even in a fault-free network. For instance, the asynchronous
nature of message passing and agent migration may cause situations where
messages forever chase a mobile agent that moves frequently from one host to
another. Current solutions rely on conventional technologies that either do
not provide a solution for the aforementioned problem, because they were not
designed with mobility in mind, or enforce continuous connectivity with the
message source, which in many cases defeats the very purpose of using mobile
agents.
Keyword: mobile agents, communication mechanism,
message delivery, multicast
Abstract: Quality of service (QoS) is receiving
strong attention due to its key role in distributed multimedia computing. QoS
is not a new concept, being usually employed in the domain of computer
networks to specify a set of parameters typically assigned to transport
connections. As a rule, QoS is established through negotiation between
service users and providers. The process of negotiation is simple if the
resources are managed by a centralized entity (e.g. an operating system) or
by a set of homogeneous entities such as a network protocol. Unfortunately,
in distributed multimedia applications the negotiation and management of
resources is a difficult task since resources are very diversified, dispersed
and maintained by heterogeneous entities. To cope with diversity and
distribution, an agent-based approach for QoS negotiation and management in
open distributed environment is proposed in this paper.
Abstract: Straightforward approaches to team
coordination with the expressive power of finite state automata are doomed to
fail under a wide range of heterogeneity due to the combinatorial explosion
of states. In this paper we propose a coordination scheme based on
operational semantics, which allows an extremely compact and modular way of
specifying soccer-robot team behaviors. The capabilities of our approach are
demonstrated on two examples, which, though just being simple demo
implementations, perform very well in a simulator tournament.
Keyword: agent coordination
Abstract: Mobile agents have been advocated to
support electronic commerce over the Internet. While being a promising
paradigm, many intricate problems need to be solved to make this vision
reality. The problem of \emph{fair exchange} between two agents is one such
fundamental problem. Informally speaking, this means to exchange two
electronic items in such a way that neither agent suffers a disadvantage. We
study the problem of fair exchange in the mobile agent paradigm. We show that
while existing protocols for fair exchange can be substantially simplified in
the context of mobile agents, there are still many problems related to
security which remain difficult to solve. We propose three increasingly
flexible solutions to the fair exchange problem and show how to implement
them using existing agent technology. The basis for ensuring the security
properties of fair exchange is a tamper-proof hardware device called a
trusted processing environment.
Keyword: mobile agent, e-commerce, security
Abstract: This paper proposes a multi-agent system
comprising of mobile agents communicating with a fixed infrastructure of
agent servers. This script-based multi-agent system enables easy access to
Internet services and combines remote execution to support mobile users and
migration of agents within the agent server network. Such an environment
offers a higher degree of flexibility and efficiency to the user by
performing much of the work on the server located in the fixed network. The
focus of this paper lies on the description of the agent server architecture
and the agent definition methods.
Keyword: mobile agent, agent server, multi-agent
system, agent services
Abstract: We describe a platform for the portable
and secure execution of mobile agents written in various interpreted
languages on top of a common run-time core. Agents may migrate at any point
in their execution, fully preserving their state, and may exchange messages
with other agents. One system may contain many virtual places, each
establishing a domain of logically related services under a common security
policy governing all agents at this place. Agents are equipped with
allowances limiting their resource assets, both globally per agent lifetime
and locally per place. We discuss aspects of this architecture and report
about ongoing work.
Keyword: migration, multi-language, interpreter,
Tcl, C, byte code, Java, persistence, authentication, security domain
Abstract: General Dynamics Information Systems
(GDIS), in cooperation with the U.S. Navy, has been applying agent-based
technology to intelligently retrieve distributed data and developing
personalized tools to assimilate and manage the knowledge inherent in that
data. Our initial hypothesis was that by filtering information based on user
need, we could greatly decrease the amount of remote information transferred
and increase the value of information locally available to the user. In
evaluating our hypothesis, we found that the user's information needs were
implicit; that is not codified. By explicitly capturing the information
requirements, we could repeat our initial experimentation and extend our
solution to a generalized set of knowledge management problems. As a driving
scenario for this research we worked with 3rd Fleet Staff to formalize and
expedite the process of gathering and organizing information for their daily
situation briefs. Our experience includes a refined list of knowledge
management issues and lessons learned in applying agent-based technology.
Keyword: agent coordination, knowledge management,
information dissemination, agent system integration
Abstract: Although a thorough evaluation of mobile
code technology does not exist yet, some studies already evidenced that the
powerful (and often heavyweight) abstractions and mechanisms proposed so far
are not always flexible enough to fully exploit the benefits of migrating
code. muCODE is a new mobile code toolkit designed to be flexible, extensible
and lightweight. Its small set of abstractions and mechanisms can be used
directly by the programmer or composed in higher-level abstractions-mobile
agents included. This paper discusses the fundamental concepts and features
of muCODE, together with its rationale and motivation.
We desire to
collect management-related data across a changing domain of networked
components, and to periodically compute aggregated statistics, or infer
events, based on that data. These aggregated results must be generated in a
way that is minimally "intrusive" into other network operations, yet are
produced with the desired periodicity. To do this, the aggregation process
must be adaptive to changing environmental conditions. Such requirements
suggest that these aggregation operations must be distributed throughout the
network, rather than centralized at a single platform. We describe a
conceptual model of an "aggregation network" of adaptive mobile agents for
this purpose, and describe the operation of a testbed for demonstrating
simple aggregation network concepts using mobile-agent technology.
Abstract: Operators of telecommunications networks
dedicate significant human and capital resources to managing their networks.
Current network management approaches, however, do not scale well in
dynamically evolving and expanding networks, cannot easily be customized for
(or by) human users, and involve high overhead costs.
Keyword: network monitoring, service monitoring,
network management, adaptation, aggregation, telecommunications, intrusive,
dataflow, distributed, Aglets, CORBA, SNMP
Abstract: In this paper we deal with the study of
the actual convenience of using the agent programming paradigm for accessing
distributed service. We try to point out the benefits of such a communication
paradigm, by providing an analytical study of its basic features in
comparison with client-server approach and remote evaluation. The results
that we have obtained show how agents must not always be considered the only
solution to any communication issue, since in several cases their use might
even reveal a drawback. In this paper we present several models of
non-Markovian Petri nets, which have been solved through the WebSPN tool, and
we provide a close comparison between the agents technique, the client-server
and the remote evaluation. We also focus our attention on providing some
practical remarks, which can help the developer during the design, in order
to select the communication paradigm which best suits to the features of the
application that has to be developed.
Keyword: Client-Server, Remote Evaluation, Agent
technology, Petri nets
Abstract: Mobile code is slowly gaining acceptance
but it is still not clear where it is really useful. If not used judiciously
it may incur greater complexity of programming and degradation of
performances. The goal of this paper is to show that mobile code is
particularly well suited as a glue for the composition of immobile services,
where flexibility and extensibility are necessary. To support our claim we
describe two services and one application that have been programmed with
mobile code in the context of active networking. We study the impact on the
flexibility, complexity and performances of the resulting systems. We observe
positive effects on flexibility and complexity and acceptable performance
penalties.
Keyword: Mobile code, Active network, Service
configuration, Event propagation
In this paper, we
present a framework for communicating neural network knowledge between agents
in order to modify an agent's learning and pattern classification behavior.
This framework is applied to a simulated aerial reconnaissance system in
order to show how the communication of neural network knowledge can help
maintain the performance of agents tasked with recognizing images of mobile
military objects. Abstract: In order to maintain their performance
in a dynamic environment, agents may be required to modify their learning
behavior during run-time. If an agent utilizes a rule-based system for
learning, new rules may be easily communicated to the agent in order to
modify the way in which it learns. However, if an agent utilizes a
connectionist-based system for learning, the way in which the agent learns
typically remains static. This is due, in part, to a lack of research in
communicating sub-symbolic information between agents.
Abstract: The abstractions and protocol mechanisms
that form the basis for inter-agent communications can significantly impact
the overall design and effectiveness of Mobile Agent systems. We present the
design and performance analysis of a reliable communication mechanism for
Mobile Agent systems. Our protocols are presented in the context of a Mobile
Agent system called AGNI. We have developed AGNI communication mechanisms
that offer reliable peer-to-peer communications, and that are integrated with
our agent location tracking infrastructure to enable efficient,
failure-resistant networking among highly mobile systems. We have analyzed
the design parameters of our protocols using an in-situ simulation approach
with validation through measurement of our prototype implementation in real
distributed systems. Our system assumptions are simple and general enough to
make our results applicable to other Agent systems that may adopt our
protocols and/or design principles.
Keyword: mobile agent communication, mobile agent
message passing, distributed reconfigurable scripting, mobile sockets
Abstract: CarPAcities provides a highly dynamic,
easy to use, cost effective and safe approach to car sharing. It is designed
to be tightly integrated into today蘳 mobile network infrastructure. The
underlying model as well as an agent-based prototype implementation employing
the Jini technology for service management are described throughout this
paper. Simulation results underpin the effectiveness of CarPAcities.
Keyword: agent application
Abstract: Network management comprises of
monitoring and control of a network. Ideally a network management system
should be able to provide the facility of managing the network from any site
and from any system and network. However the present network management
systems are centralized and tied to particular systems. We introduce the
unique concept of a mobile network manager (MNM) to provide network
administrators with a system and location independent network manager which
will be useful under a variety of circumstances. In order to enable the MNM
mobile agents have been used. The mobile agents are furnished by the mobile
agent environment MAGENTA (Mobile AGENT environment for distributed
Applications) which provides autonomous, reactive, proactive and
communicative mobile agents. MAGENTA has been designed and implemented to
support mobile user aware applications. The mobile agents are used not only
to facilitate the disconnected mode of functioning of the MNM but also to
decentralize network management functionalities. The applicability and
usefulness of mobile agents in implementing the functionalities of MNM has
been compared with the client-server mechanism.
Abstract: This paper proposes a Java bytecode
transformation algorithm for realizing transparent thread migration in a
portable and efficient manner. In contrast to previous studies, our approach
does not need extended virtual machines nor source code of target programs.
The whole state of stack frames is saved, and then restored at a remote site.
To accomplish this goal, a type system for Java bytecode is used to correctly
determine valid frame variables and valid entries in the operand stack. A
target program is transformed based on the type information into a form so
that it can perform transparent thread migration. We have also measured
execution efficiency of transformed programs and growth in bytecode size, and
obtained better results compared to previous studies.
Keyword: Java, bytecode transformation, binary
transformation, mobile agent, thread migration
Abstract: In this paper we present practical
experiences gathered from the employment of two popular Java-based
mobile-agent platforms, IBM's Aglets and Mitsubishi's Concordia. We present
some basic distributed computing models and describe their adaptation to the
mobile-agent paradigm. Upon these models we develop a set of frameworks for
distributed database access over the World-Wide Web, using IBM's Aglets and
Mitsubishi's Concordia platforms. We compare the two platforms both
quantitatively and qualitatively. For the quantitative comparison, we
propose, employ, and validate an approach to evaluate and analyze
mobile-agent framework performance. For the qualitative assessment, we
present our observations about the programmability and robustness of, and
mobility provided by, the two platforms.
Abstract: MobiDoc is a framework for building
mobile compound documents, where the compound document can be dynamically
composed of mobile agents and can migrate itself over a network as a whole,
with all its embedded agents. The key of this framework is that it builds a
hierarchical mobile agent system that enables multiple mobile agents to be
combined into a single mobile agent. The framework also provides several
added-value mechanisms for visually manipulating components embedded in a
compound document and for sharing a window on the screen among the
components. This paper will describe the MobiDoc framework and its first
implementation, currently using Java as implementation language as well as
component development language, and then illustrate several interesting
applications to demonstrate the utility and flexibility of this framework.
Keyword: mobile agent, software component,
compound document
Abstract: There is an increasing desire to use
constellations of autonomous spacecraft working together to accomplish
complex mission objectives. Multiple, highly autonomous, satellite systems
are envisioned because they are capable of higher performance, lower cost,
better fault tolerance, reconfigurability and upgradability. This paper
presents an architecture and multi-agent design and simulation environment
that will enable agent-based multi-satellite systems to fulfill their complex
mission objectives, termed TeamAgent. Its application is shown for TechSat21,
a U.S. Air Force mission designed to explore the benefits of distributed
satellite systems. Required spacecraft functions, software agents, and
multi-agent organisations are described for the TechSat21 mission, as well as
their implementation. Agent-based simulations of TechSat21 case studies show
the autonomous operation and how TeamAgent can be used to evaluate and
compare multi agent-based organisations.
Keyword: multi-agent application
Abstract: Traffic telematics applications, such as
road traffic management systems, operate in an extremely dynamic mobile
computing environment. The mobile agent paradigm then becomes a promising
alternative to the conventional client/server approach. In this article, we
evaluate the application of mobile agent technology in the area of vehicular
traffic management and introduce a general application partitioning model
which facilitates the combination of asynchronous and autonomous operation,
data filtering and scheduling in a user-specific manner. A sample application
and performance results are presented.
Abstract: The paper presents a service-oriented
platform for the development and execution of distributed applications based
on contracting stationary and migrating services. Services are seen as active
objects build on top of middleware using OMG/CORBA and added features.
Customized services add to the middleware the ability to handle transparently
application start-up and distribution according to load-balancing and inverse
caching application demand. Services can be considered of any kind ranging
from scientific specialized processing to data archiving juke-boxes. An
application on system management in scientific experimental environment
drives the work on some aspects of the architecture.
Keyword: mobile agents, service-oriented
architecture, agents distribution, distributed processing, ORB,
load-balancing
Abstract: Gives an overall overview of the
AgentSpace framework, a next-generation Java mobile agent system developed on
top of the ObjectSpace Voyager system. We first introduce the notion of
dynamic and distributed agent-based applications and argue that the
AgentSpace features are suitable to support them. The AgentSpace novelties
include: flexible and dynamic association between agents, security policies
and users; transparency of agent location through the use of views; and an
easy and clean way to create agents through the use of abstract classes and
method factories.
Abstract: The authors continue arguing that
persistence is a fundamental requirement to support the development of
next-generation agent-based applications. After a general overview of
mobility and persistence to clarify the main issues discussed in the paper,
they propose a tentative list of facilities that should be supported by
persistent mobile agent systems. The main contribution of the paper is a
survey of existing persistent and mobile agent systems that includes a
comparison based on how well (or badly) they support the proposed list of
facilities.
Abstract: This paper presents a fault-tolerance
protocol for mobile agent executions that tolerates long-term failures of
agencies. If the agency where an agent execution is being performed fails for
a long-time, the execution can be recovered and continue at another agency.
This is not only important for avoiding a mobile agent execution to become
blocked, but it also contributes for enforcing the autonomy of organizations
in an open environment emitting mobile agents to execute applications that
cross the boundary of autonomous organizations. The protocol presented in
this paper is based on mobile agent replication. Our protocol differs from
previous work mainly in the sense that an agent can execute more than a
single atomic transaction at an agency; it integrates distributed storage of
recovery information; and it supports partial recovery of the activity
carried out at an agency. The motivation of this work is on building a
support for the execution of open nested transactions with a set of mobile
agents.
Abstract: The paper describes a model of
agent-based transactions, i.e., distributed transactions which are realized
with the use of mobile agents, for an environment of heterogeneous and
autonomous systems. Combining an asynchronous operation mode (provided by
agent mobility) with the enforcement of complex control flows with
transactional semantics, agent-based transactions represent an adequate base
concept for reliable processing in future distributed systems, such as
virtual enterprises and electronic markets. Among other properties,
agent-based transactions provide a very suitable support for transaction
processing in massively distributed environments; support high adaptivity to
dynamically changing environments; and are adequate to support processing
requirements of mobile devices. The authors consider only transactions which
are implemented by a single mobile agent. The presented transaction model is
being developed in the context of the MAGNA mobile agent project, under
development at GMD Fokus and Technical University of Berlin.
Keyword: distributed transaction processing,
mobile agents, mobile agent platforms, workflows, extended transaction models
Abstract: Implementing an application as a mobile
agent may improve the application's functionality and performance, but may
have a detrimental effect on overall system performance. In this paper we
consider the effect of moving an application from a client to a file server
(as an agent), both on the application and the server. Under what
circumstances does application performance improve, and does it come at the
expense of other (non-mobile) background applications using the same server?
We use a trace-driven simulation to measure the effect of mobile code,
allowing system parameters such as the size of the server memory and server
speed relative to client speed to be varied. We found that several factors
influence the benefit of mobile agents. Server memory does not appear to be a
significant problem; relatively small server caches have a high hit rate even
when shared with mobile agents. The relative CPU performance of the client
and server has a bigger effect on system performance: mobile agents should
not be run on the server if its CPU is a bottleneck.
Abstract: Many real-world tasks can be decomposed
into pipelines of sequential operations (where subtasks may themselves be
composed of one or more pipelines). JGram is a framework enabling rapid
development of such multi-agent systems. Each agent's services are specified
in the JGram Description Language (JDL), and automatically converted into
Java source code. These services may be invoked synchronously (analogous to
function call) or asynchronously (analogous to message passing), in a manner
that is transparent to the service's implementation. Complex tasks are
created by composing several agent services into hierarchical JGram pipelines
in which each agent may dynamically delegate its subtasks to other agents in
a recursive manner, and in which errors are handled by a cross-agent
exception mechanism. Although JGram agents communicate using Java's Remote
Method Invocation (RMI) protocol, the framework provides significant
enhancements such as authentication, encrypted channels and dynamic service
specification. JGram has been used to develop several real-world agent
systems. This paper discusses ARGUS, a visitor identification system that
integrates a security camera with face detection, face recognition, and user
notification systems to automatically identify regular visitors arriving at
the front door of our building.
Abstract: NOMADS is a Java-based agent system that
supports strong mobility (i.e., the ability to capture and transfer the full
execution state of migrating agents) and safe agent execution (i.e., the
ability to control resources consumed by agents, facilitating guarantees of
quality of service while protecting against denial of service attacks). The
NOMADS environment is composed of two parts: an agent execution environment
called Oasis and a new Java-compatible Virtual Machine (VM) called Aroma. The
combination of Oasis and the Aroma VM provides key enhancements over today's
Java agent environments.
Keyword: mobile agent, Java, thread migration,
virtual machine
This
contribution analyses the situation that data distributed among various
remote data servers has to be examined with mobile filter agents. We present
an approach for coordinating the agents' employment, which minimizes
communication costs. Validation studies on the possible cost savings for
various constellations show that savings up to 90% can be achieved in the
face of actual Internet conditions. Abstract: An often claimed benefit of mobile agent
technology is the reduction of communication cost. Especially the area of
information filtering has been proposed for the application of mobile filter
agents. However, an effective coordination of agents, which takes into
account the current network conditions, is difficult to achieve.
Keyword: distributed filtering, mobile code,
Internet, communication cost, coordination of mobile agents
Abstract: This paper describes a mobile
agent-based approach for supporting coordination of user activities in
distributed collaborations. The approach presented here uses XML to specify a
collaboration plan in terms of various participants' roles, access rights
based on roles, and the coordination actions to be executed when certain
events occur. Using this plan an agent-based distributed middleware system
provides each user an interface to perform the tasks pertaining to the
collaboration. The actions of a user transparently create and dispatch
coordination agents to other users. The middleware also enforces the security
constraints defined in the collaboration plan. We illustrate our approach
with an example system for collaborative authoring implemented using the
Ajanta mobile agent system.
Keyword: mobile agent, agent collaboration
Abstract: In this paper, we present a mechanism to
capture and reestablish the state of Java threads. We achieve this by
extracting a thread's execution state from the application code that is
executing in this thread. This thread serialization mechanism is implemented
by instrumenting the original application code at the byte code level,
without modifying the Java Virtual Machine. We describe this thread
serialization technique in the context of middleware support for mobile agent
technology. We present a simple execution model for agents that guarantees
correct thread migration semantics when moving an agent to another location.
Our thread serialization mechanism is however generally applicable in other
domains as well, such as load balancing and checkpointing.
Keyword: mobile agent, thread migration, Java
Abstract: Mobile code technology is leading to a
new type of "open systems": instead of applying openness to a standardization
process one now requires the running systems to become open for foreign code.
The question then is how far this technical openness can go for mobile code.
The fewer constraints one imposes on hosts running mobile code, the more the
benefits of mobile code can be exploited. However, there must necessarily be
basic constraints regarding the utilization of resources which are always
finite and most of the time will be operated near the saturation point. The
author argues in favor of openness even at the level of resource allocation.
He links this topic to (open) market models, describes the mechanisms
developed so far for communication messengers and shows how they are used to
allocate resources in an open way. Finally he presents experimental results
of validation runs which help to test these mechanisms.
Keyword: mobile code, communication messagers,
open resource allocation, market, computational ecosystems
Abstract: The diversity of research and
development work on agent technology has led to a strong distinction between
mobile and intelligent agents. This paper presents an architecture aiming at
providing a step towards the integration of these two aspects, concretely by
providing an approach of dynamically embedding negotiation capabilities into
mobile agents. In particular, the requirements for enabling automated
negotiations including negotiation protocols and strategies, a plug-in
component architecture for realizing such requirements on mobile agents, and
the design of negotiation support building blocks as components of this
architecture are presented.
Abstract: MESSENGERS is a system that supports the
development and use of distributed applications structured as collections of
autonomous objects. With self-migrating computations, the main challenge is
the extraction and subsequent restoration of the computation's state during
migration. This is very difficult when the navigational statement may be
placed anywhere in the code and, hence, many systems place the burden of
state capture on the application programmer. We describe an intermediate
approach, where the use of navigational statements is restricted to the top
level of the self-migrating computation. This permits an efficient
implementation of a fully transparent state capture and restoration. We
demonstrate that this approach is applicable not only to interpreted mobile
code but also to compiled self-migrating computations executing entirely in
native mode.
Abstract: Large computer systems are expected to
have long lifetimes. For this reason, a system should evolve as user and
system demands change. Attempts have been made at this in the field of
distributed systems where configuration languages have been developed for
just this purpose. Multi-agent systems provide a better solution to this
problem but lack the development environments that are available for
traditional software. The paper presents a generic agent shell and two agent
system languages, ADLe (definition language) and ARCLe (reconfiguration
language) for use with this shell. It is proposed that they will provide the
basis for an environment that fills this gap.
Keyword: re-configuration, multi-agent systems,
agent programming
Abstract: Quality of Service (QoS) routing
generally requires fast reaction times, tight coupling of interactions
between routing systems and mechanisms for ensuring that actions taken
throughout the network are coherent. Our previous work showed how an agent
based QoS routing approach can benefit significantly from making controller
agents mobile and allowing them adapt the information and control
distribution in the network over time. This paper discusses how giving mobile
agents organisational models can bridge the gap between the need for tight,
fast coordination and freedom to move around the network. Furthermore
coordination is achieved without imposing any globally or external controls
on the mobile agents in the system.
Keyword: mobile agent, agent coordination, quality
of service, routing, adaptation
Abstract: We study the distributed infrastructures
required for location-independent communication between migrating agents.
These infrastructures are problematic: different applications may have very
different patterns of migration and communication, and require different
performance and robustness properties; algorithms must be designed with these
in mind. To study this problem we introduce an agent programming language -
Nomadic Pict. It is designed to allow infrastructure algorithms to be
expressed as clearly as possible, as translations from a high-level language
to a low level. The levels are based on rigorously-defined process calculi,
they provide sharp levels of abstraction. In this paper we describe the
language and use it to develop an infrastructure for an example application.
The language and examples have been implemented; we conclude with a
description of the compiler and runtime.
Keyword: Distributed Infrastructure, Location
Independence, Communication, Coordination, Languages, Mobility, Systems,
Theory
Abstract: Use of the Internet and the
World-Wide-Web has become widespread in recent years and mobile agent
technology has proliferated at an equally rapid rate. The authors introduce
the Concordia infrastructure for the development and management of
network-efficient mobile agent applications for accessing information
anytime, anywhere, and on any device. Concordia has been implemented in the
Java language to ensure platform independence among agent applications. The
design goals of Concordia have focused on providing complete coverage of
flexible agent mobility, support for agent collaboration, agent persistence,
reliable agent transmission, and agent security. Concordia offers a flexible
scheme for dynamic invocation of arbitrary method entry points within a
common agent application and extends the notion of simple agent interaction
with support for agent collaboration, which allows agents to interact, modify
external states (e.g., a database), as well as internal agent states.
Concordia provides support for agent persistence and recovery and guarantees
the transmission of agents across a network. Concordia has also been designed
to provide for fairly complete security coverage from the outset. An alpha
release of Concordia is available.