Multiagent Systems Engineering
This research project attempts to define a methodology for designing and
developing multi-agent systems (MAS). In this project we draw from the
legacy of object-oriented methodologies such as Rumbaugh's Object Modeling
Technique (OMT) and the Unified Modeling Language (UML). Basically, we
will extend the concept of object-orientation to multi-agent systems.
While similar to objects, agents are typically defined to have traits such as
autonomy, cooperation, perception, and pro-activeness that imply characteristics
objects generally do not have. There are two basic differences:
- Objects are passive. They react to external stimuli, but do not exhibit goal
directed behavior.
- Agents typically use a common messaging language between all agents whereas
object messages are usually class dependent.
Looking at the characteristics mentioned above, it seems obvious that we can
model agents as "active objects", or, in other words, an object with
goals. We will base our approach on existing object-oriented analysis and design
techniques such as OMT and UML and will add additional features (such as goals,
sensors, and effectors) and modify existing OO notations to take on agent
specific semantics.
The primary focus of MaSE is to help a designer take an initial set of
requirements and analyze, design, and implement a working multiagent system.
This methodology is the foundation for the agentTool
development system, which also serves as a validation platform and a proof
of concept. The agentTool system is a graphically-based, fully interactive
software engineering tool for the MaSE methodology. agentTool supports the
analysis and design in each of the seven MaSE steps as well as automatic
verification of inter-agent communications and code generation for multiple
multiagent system frameworks.

Figure 1. MaSE Phases
The MaSE methodology, as well as agentTool, is independent of any particular
agent architecture, programming language, or communication framework. The focus
of our work is on building heterogeneous multiagent systems. We can implement a
multiagent system designed in MaSE in several different ways from the same
design. The MaSE methodology is a specialization of more traditional software
engineering methodologies. The general operation of MaSE follows the phases and
steps shown on the right side of Figure 1. The MaSE Analysis phase consists of
three steps: Capturing Goals, Applying Use Cases, and Refining Roles. The Design
phase has four steps: Creating Agent Classes, Constructing Conversations,
Assembling Agent Classes, and System Design. The rounded rectangles denote the
MaSE models used to capture the output of each step while the arrows between
them show how the models affect each other. While we have drawn it as a single
flow from top to bottom, with the models created in one step being the inputs
for subsequent steps, in practice the methodology is iterative. The intent is
that the analyst or designer be allowed to move between steps and phases freely
such that with each successive pass, additional detail is added and, eventually,
a complete and consistent system design is produced. A major strength of MaSE is
the ability to track changes throughout the process. Every object created during
the analysis and design phases can be traced forward or backward through the
different steps to other related objects. For instance, a goal derived in the
Capturing Goals step can be traced to a specific role, task, and agent class.
Likewise, an agent class can be traced back through tasks and roles to the
system level goal it was designed to satisfy. The details of the individual
steps of the analysis and design phases are discussed in the paper Multiagent
Systems Engineering.
Current/Future Work
Current and future focus areas include:
- Adapting MaSE for use in multiagent robotic teams
- Extending MaSE to include ontology development activities
- Expanding the modeling capabilities for
- Ontology definition
- Multiagent conversations
- "Overhearing" conversations
- Enhanced environment modeling
- Reactive environments
- Extending MaSE to handle the notion of organizational/social tasks and
constraints
Related Publications
- Scott A. DeLoach. Multiagent
Systems Engineering of Organization-based Multiagent Systems. 4th
International Workshop on Software Engineering for Large-Scale Multi-Agent
Systems (SELMAS'05). May 15-16, 2005, St. Louis, MO.
Springer LNCS Vol 3914, Apr
2006, pp 109 - 125.
-
Scott A. DeLoach, Mark F. Wood and Clint H. Sparkman,
Multiagent
Systems Engineering, The International Journal of Software Engineering and
Knowledge Engineering, Volume 11 no. 3, June 2001.
-
Scott A. DeLoach & Madhukar Kumar. Multiagent Systems Engineering: a Case
Study. In Agent-Oriented Methodologies. Brian Henderson-Sellers and Paolo
Giorgini (eds). Idea Group, 2004 (in press).
-
Scott A. DeLoach. The MaSE Methodology. In Methodologies and Software
Engineering for Agent Systems. The Agent-Oriented Software Engineering Handbook
Series : Multiagent Systems, Artificial Societies, and Simulated Organizations,
Vol. 11. Bergenti, Federico; Gleizes, Marie-Pierre; Zambonelli, Franco (Eds.)
Kluwer Academic Publishing (available via Springer), August 2004.
- Scott A. DeLoach, Eric T. Matson, Yonghua Li.
Exploiting
Agent Oriented Software Engineering in the Design of a Cooperative Robotics
Search and Rescue System. The International Journal of Pattern
Recognition and Artificial Intelligence, 17 (5) August 2003.
- Scott A. DeLoach,
Specifying
Agent Behavior as Concurrent Tasks: Defining the Behavior of Social Agents.
Proceedings of the Fifth Annual Conference on Autonomous Agents, Montreal
Canada, May 28 - June 1, 2001.
- Scott A. DeLoach.
Analysis
and Design using MaSE and agentTool, Proceedings of the 12th Midwest
Artificial Intelligence and Cognitive Science Conference (MAICS 2001).
Miami University, Oxford, Ohio, March 31 - April 1, 2001.
- Scott A. DeLoach,
Specifying
Agent Behavior as Concurrent Tasks: Defining the Behavior of Social Agents.
Technical Report, Air Force Institute of Technology, AFIT/EN-TR-00-03, July
2000.
- Scott A. DeLoach & Mark Wood,
Multiagent
Systems Engineering: the Analysis Phase. Technical Report, Air Force
Institute of Technology, AFIT/EN-TR-00-02, June 2000.
- Wood, Mark & Scott A. DeLoach,
An
Overview of the Multiagent Systems Engineering Methodology. The First
International Workshop on Agent-Oriented Software Engineering (AOSE-2000), June
10, 2000 - Limerick, Ireland
- DeLoach, Scott A.
Multiagent
Systems Engineering: A Methodology and Language for Designing Agent
Systems, Agent-Oriented Information Systems '99 (AOIS'99), Seattle WA, 1 May
1998.
|