Multi-coordination of Mobile Agents: a Model and a Component-based Architecture Giancarlo Fortino DEIS – Università della Calabria Via P. Bucci cubo 41c 87036 Rende (CS) +39.0984.494063 g.fortino@unical.it Wilma Russo DEIS – Università della Calabria Via P. Bucci cubo 41c 87036 Rende (CS) +39.0984.494691 w.russo@unical.it ABSTRACT This paper proposes a model along with a reference software architecture enabling multi-coordination between distributed and mobile software agents. Multi-coordination allows agents to choose among a variety of different coordination spaces and patterns which best fit their dynamic communication and synchronization needs. It can be fruitfully exploited by agents in heterogeneous and dynamic environments like the Internet where the mutable conditions of communications and computing usually affect both the currently agreed workflow and the performances of agent-based applications. The proposed model centers on high- level events which can be locally emitted and/or received by agents and which unify access to and exploitation of underlying coordination spaces and agent server resources. The model is supported by a component-based architecture which provides agent management and notably agent coordination through a coordination context dynamically assembled with a set of different local and/or global coordination spaces. A prototypical implementation of the architecture was also carried out using Java and the Voyager ORB middlewares. Categories and Subject Descriptors D.3.3 [Programming Languages]: Language Constructs and Features; C.2.4 [Distributed Systems]: Distributed Applications. General Terms: Design, Languages Keywords Coordination Model, Mobile Agents, Events, Component-based Architecture, Middleware. 1. INTRODUCTION It is widely recognized that nowadays the Internet is no longer used only as a simple communication infrastructure or queryable information repository but notably as a global distributed computing platform. In fact, communication, computation and information are strictly intertwined in several emerging Internet application domains such as e-Commerce, content-based information retrieval, and Computer Supported Cooperative Work (CSCW). Although Internet morphology favors the rapid introduction and use of new applications and services, its intrinsic heterogeneity and dynamicity are important factors affecting design and efficiency of Internet applications. Currently emerging paradigms and technologies such as GRID and Agents can deal with such issues since they possess the potential to provide effective as well as efficient solutions. While the GRID’s focus is more on computing-intensive applications, the Agent paradigm and technology [16] is advocated to be more suitable for engineering Internet-based applications in the context of the aforementioned application domains. Agents featured by mobility (or simply mobile agents), as widely claimed [15, 20], allow for conservation of bandwidth, reduction of latency, protocol encapsulation, asynchronous and autonomous distributed execution, dynamic adaptation, seamless integration of heterogeneous system, robustness and fault tolerance. Mobility per se is a strategic feature in the Internet but mobile agents need to coordinate particularly in complex application scenarios. Thus coordination among mobile agents and between mobile agents and distributed resources is a main issue to be tackled for the development of efficient and robust Internet applications based on mobile agents. Several proposals have to date been done ranging from traditional coordination models and related infrastructures (e.g. Direct, Meeting-oriented, Blackboard, Tuple-based [4]) to more advanced and programmable ones such as MARS [4, 5], TucSon [17], Lime [19], and Jedi [8]. However, we believe that single-model-based coordination, even if programmable, might not be effective for satisfying all needs of Internet applications; thus we propose the exploitation of multi- coordination which can facilitate application design, improve efficiency, and enable adaptability in dynamic and heterogeneous environments like the Internet. Multi-coordination allows agents to choose among a variety of different coordination spaces and patterns which best fit their dynamic communication and synchronization needs. The proposed multi-coordination model centers on high-level events which can be locally emitted and/or received by event- driven agents and which unify access to and exploitation of underlying coordination spaces and agent server resources. An agent, that wishes to coordinate using a specific coordination model, generates a high-level event which formalizes an operation to be performed on the coordination media according to the specific model. Reception of incoming high-level events, which formalize asynchronous notifications sent by the agent itself, by Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SAC’05, March 13-17, 2005, Santa Fe, New Mexico, USA. Copyright 2005 ACM 1-58113-964-0/05/0003…$5.00.