logo

Intelligent Interactive Distributed Systems


Project: Scalable Decentralized Directory Services
Home  Contact  People  Publications  

Introduction:

Multi-Agent Systems researchers are interested in studying the interactions between large numbers of autonomous, possibly mobile agents. Such systems are a potential means of dealing with the complexity that arises in large distributed computer systems. In principle each agent can be put in charge of a small independent task. Larger joint tasks are then achieved by allowing agents to decide among themselves upon a division of labor. Systems are able to adapt to changing conditions such as network failures, addition or removal of agents or new user requirements, through the self organizing capabilities of the agents.

The above description is, of course, the ideal case, current agent systems are far more limited. One of the challenges faced is the question of how agents seeking partners with particular capabilities can find each other. Traditionally this function is fulfilled by directory servers. These act like the yellow pages phone book; agents publish an advertisement for the capabilities they provide and as clients can query the directory for a list of others agents providing a particular function.

Directories are however essentially centralized components that provide a "global" view. Meanwhile, ideally, multi-agent systems are autonomous decentralized systems, where each agent needs only local interactions to function. Many of the potential advantages of multi-agent systems stem from this principle of decentralization; the ability to scale to accommodate large numbers of agents, the ability to adapt easily by only changing a part of the system, the ability to support a large variety of agents requiring unpredictable information to make decisions. Thus the problem of how directory services can be replaced with decentralized mechanisms belongs to one of the fundamental questions of multi-agent systems research.

Approach:

In this project we address this problem by considering extremely simple, abstract agents. We study how a grouping, or clustering, function among these agents can assist in randomized local search. Without a directory to turn to agents can do little more than query their neighbors in the hope that what they are seeking is in the neighborhood. Should they fail to find it, they need a way of expanding their outlook. We take the view that decentralization is best maintained by keeping the size of an agents 'neighborhood' constant, but that agents with an uninteresting initial neighborhood should be perfectly willing to exchange it for another. Further, while cooperating with an unknown neighbor may be an odd behavior, a small amount of cooperation between groups of 'friends' can more easily be argued to be advantageous.

Challenges:

In our current research we are studying the ability of these simple agents to do decentralized, capability based, clustering. Our vision is that if we can cluster agents while they remain distributed over a network, we can use the cluster structure to enable searches, removing the need for a directory server. We have found that the agents do exhibit a clustering tendency, meaning that we can achieve the traditional centralized clustering task in a decentralized peer-to-peer manner. We are however faced with the core difficulty of clustering in general: how to define where the borders of clusters should be placed. Thus much of our current work focuses on methods in which agents can learn cluster properties such as size, area, and density.



login
For comments on this web-site, please contact: Michel Oey