Agent-Based System Engineering (ABSE)

Previous: Content-based routing architecture (ala DRPI) Up: Example Agent Architectures and Implementations Next: Palo Alto Collaborative Testbed

Agent-Based System Engineering (ABSE)

The ABSE project is a collaboration between the Stanford University Logic Group and Hewlett-Packard Palo Alto Research Laboratories. The ABSE architecture is a network of application agents (referred to simply as agents, below) connected through facilitator agents.

Agents and facilitators are linked together in what is often called a federation architecture. Figure illustrates this architecture for the simple case in which there are just three machines, one with three agents and two with two agents apiece. As suggested by the diagram, agents do not communicate directly with each other. Instead, they communicate only with their local facilitators, and facilitators communicate with each other. In effect, the agents form a ``federation'' in which they surrender their communication autonomy to the facilitators; hence, the name of the architecture.

Messages from agents to facilitators may be directed or undirected. Undirected messages have content but no addresses. It is the responsibility of the facilitators to route such messages to agents able to handle them. In performing this task, facilitators can go beyond simple pattern match -- they can translate messages, they can decompose problems into subproblems, and they can schedule the work on those subproblems. In some cases, this can be done interpretively (with messages going through the facilitator); in other cases, it can be done in one-shot fashion (with the facilitator setting up specialized links between individual agents and then stepping out of the picture).

To accomplish the above. facilitators handle the reserved KQML performatives forward, broker-one, broker-all, and register. In addition, facilitators exploit the definitions of the reserved parameters :content, :language, and :ontology to perform representation language translation. When taken together, agents handle a wide variety of reserved KQML performatives, including evaluate, ask-about, reply, deny, and generator.

finin@cmsc