Exception Handling in Multi-Agent Systems

Project Overview

This project is developing run-time services to increase the robustness of multi-agent systems. This work is led by Mark Klein and Chris Dellarocas, with participation by members of the MIT Artificial Intelligence Laboratory, and is funded by the DARPA ISO Control of Agent-Based Systems Program.

The Challenge

A critical challenge to creating effective agent-based systems is allowing them to operate effectively when, as is typical for many other domains, the operating environment is complex, dynamic, and error-prone. The standard approach to this problem has been to "compile in" complicated and carefully coordinated exception handling behaviors into all problem-solving agents. This is, however, fundamentally problematic, since the causes, manifestations and resolutions for agent system exceptions are inherently systemic and context-sensitive rather than localizable to any particular agent. Agent developers must thus anticipate all the contexts in which the agent may be used, but this is extremely difficult. Making changes in exception handling behavior is difficult because it potentially requires coordinated changes in multiple agents. Agents become much harder to maintain, understand and reuse because the relatively simple normative behavior of an agent becomes obscured by a potentially large body of code devoted to handling exceptional conditions. Finally, it is unrealistic to expect that all agents will have sophisticated exception handling capabilities built in.

Our Vision

We address these problems by creating a generic exception handling service that can be "plugged", with little or no customization, into existing agent systems to add the ability to function in exception-prone environments. This service can be viewed as a kind of "coordination doctor"; it knows about the different ways multi-agent systems can get "sick", actively looks system-wide for symptoms of such "illnesses", and prescribes specific interventions instantiated for this particular instance from a body of general treatment procedures. Agents need only implement their normative behavior plus a minimal set of interfaces that assume only that each agent can report on its own behavior and modify its own actions to at least some extent. The exception handling service, itself implemented as agents, uses these interfaces plus a highly reusable knowledge base of generic exception handling expertise to detect when things go wrong in the agent ensemble and take the appropriate corrective actions.

Selected Publications

An Experimental Evaluation of Domain-Independent Fault Handling Services in Open Multi-Agent Systems. Proceedings of ICMAS-2000, The International Conference on Multi-Agent Systems. Boston, MA, 2000.

Towards a Systematic Repository of Knowledge about Managing Multi-Agent System Exceptions. ASES Working Report ASES-WP-2000-01. Cambridge MA USA, Massachusetts Institute of Technology. 2000.

Domain-Independent Exception Handling Services That Increase Robustness in Open Multi-Agent Systems. ASES Working Report ASES-WP-2000-02. Cambridge MA USA, Massachusetts Institute of Technology. 2000.

Exception Handling in Agent Systems. Proceedings of the Third International Conference on AUTONOMOUS AGENTS, Seattle, Washington, 1999.

An Exception Handling Approach to Enhancing Consistency, Completeness and Correctness in Collaborative Requirements Capture. Journal of Concurrent Engineering Research and Applications. March 1997.