IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 4, AUGUST 2009 681 A Swarm Algorithm for a Self-Structured P2P Information System Agostino Forestiero, Member, IEEE, and Carlo Mastroianni, Member, IEEE Abstract — This paper introduces Antares, which is a bio- inspired algorithm for the construction of a decentralized and self-organized P2P information system in computational grids. This algorithm exploits the properties of ant systems, in which a number of entities/agents perform simple operations at the local level but together engender an advanced form of “swarm intelligence” at the global level. Here, the work of ant-inspired agents is tailored to the controlled replication and relocation of “descriptors,” that is, documents that contain metadata infor- mation about grid resources. Agents travel the grid through P2P interconnections, and replicate and spatially sort descriptors so as to accumulate those represented by identical or similar indexes into neighbor grid hosts. The resulting information system is here referred to as self-structured, because it exploits the self- organizing characteristics of ant-inspired agents, and the associ- ation of descriptors with hosts is not predetermined but adapts to the varying conditions of the grid. This self-structured organi- zation combines the benefits of both unstructured and structured P2P information systems. Indeed, being basically unstructured, Antares is easy to maintain in a dynamic grid, in which joins and departs of hosts can be frequent events. On the other hand, the aggregation and spatial ordering of descriptors can improve the rapidity and effectiveness of discovery operations, which is a beneficial feature typical of structured systems. Performance analysis proves that ant operations allow the information system to be efficiently reorganized, thus improving the efficacy of both simple and range queries. Index Terms— Ant algorithms, grid, information dissemina- tion, information system, peer-to-peer (P2P), resource discovery. I. I NTRODUCTION G RID COMPUTING [1] is an emerging computing model that provides the ability to perform higher throughput computing by taking advantage of many networked com- puters and distributing process execution across a parallel infrastructure. Modern grids are based on the service-oriented paradigm; for example, in the Globus Toolkit 4, based on the web services resource framework (WSRF [2]), resources are offered through the invocation of web services, which boast of enriched functionalities such as lifecycle and state management. The information system is an important pillar of a grid framework, since it provides information that is critical to the operation of the grid and the construction of applications. In Manuscript received January 4, 2008; revised June 9, 2008; accepted November 13, 2008. Current version published August 14, 2009. This research work is carried out under the FP6 Network of Excellence CoreGRID funded by the European Commission (Contract IST-2002-004265). The authors are with the CNR Institute for High Performance Comput- ing and Networks, 87036 Rende (CS), Italy (e-mail: forestiero@icar.cnr.it; mastroianni@icar.cnr.it). Digital Object Identifier 10.1109/TEVC.2008.2011478 particular, users turn to the information system to discover suitable resources or services that are needed to design and execute a distributed application, explore the properties of such resources, and monitor their availability. Owing to the inherent scalability and robustness of peer-to- peer (P2P) algorithms, several P2P approaches have recently been proposed for resource organization and discovery in grid environments [3], [4]. The ultimate goal of these approaches is to allow users to rapidly locate grid resources or ser- vices, either hardware or software, which have the required characteristics; this is generally reduced to the problem of finding related descriptors, through which it is possible to access the corresponding resources. A descriptor may con- tain a syntactical description of the resource/service [i.e., a WSDL (web services description language) document] and/or an ontology description of resource/service capabilities. In a grid, after issuing a query, users can discover a number of descriptors of possibly useful resources, and then can choose the resources that are the most appropriate for their purposes. In P2P systems, descriptors are often indexed through bit vectors, or keys, which can have two different meanings. The first is that each bit represents the presence or absence of a given topic [5], [6]: this method is particularly appropriate if the resource of interest is a document, because it is possible to define the different topics on which this document focuses. Alternatively, a resource or service can be mapped by a hash function into a binary key. If the hash function is locality preserving, as for example in [7], [8], similar descriptor keys are assigned to resources having similar characteristics. In this paper, Ant-Based Algorithm for Resource (Antares) management in grids, which was formerly presented in [9], is proposed as an approach for the construction of a grid information system, which is inspired by the behavior of some species of ants [10]. The Antares algorithm is able to disseminate and reorganize descriptors and, as a consequence of this, it facilitates and speeds up discovery operations. More specifically, Antares agents concurrently achieve multiple ob- jectives: 1) they replicate and disseminate descriptors, thus spreading useful information on the grid; 2) they spatially sort descriptors, so that descriptors indexed by similar keys are placed in neighbor hosts, which greatly facilitates discovery operations; 3) thanks to the self-organizing nature of the ant-based approach, the agents adapt the reorganization of descriptors to the ever-changing environment, for example to the joinings and departures of grid hosts and to the changing characteristics of resources. 10.1109/$26.00 © 2009 IEEE Authorized licensed use limited to: UNIVERSITA DELLA CALABRIA. Downloaded on August 21, 2009 at 09:57 from IEEE Xplore. Restrictions apply.