04 December 2007
Adrián Perreau de Pinninck Bas

Coordination of task execution, in open distributed multi-agent systems, is often accomplished through communications between agents. Thus, most tasks carry some cost associated with those communications. This work proposes to use overhearing for reducing some of this cost, and therefore reducing the overall cost of task execution. Since in open distributed systems, and in particular in large-scale settings, it is rare for two agents to communicate directly, their communications (as in real-world networks) are routed to their destination through other agents. We allow those intermediate agents to overhear and monitor passing through communications. In doing so, the intemediate agents detect some of the errors generated by communicating agents before they reach their final destination. Filtering those erroneous messages in advance reduces the cost associated with routing them through the system. This work first formalizes this problem, and then proposes algorithms for finding an effective set of filtering agents. Unfortunately, finding an optimal solution for this problem turned out to be intractable. Thus, an efficient heuristic solution is proposed. An empirical simulation of these algorithms shows that the heuristic algorithm achieves similar performance to that of the optimal algorithm, while maintaining efficient run-time complexity.