Multi-Agent Systems Engineering: An Overview and Case Study

Multi-Agent Systems Engineering: An Overview and Case Study

Scott A. DeLoach (Kansas State University, USA) and Madhukar Kumar (Software Engineer, USA)
Copyright: © 2009 |Pages: 18
DOI: 10.4018/978-1-59904-576-4.ch013
OnDemand PDF Download:
$37.50

Abstract

This chapter provides an overview of the Multi-agent Systems Engineering (MaSE) methodology for analyzing and designing multi-agent systems. MaSE consists of two main phases that result in the creation of a set of complementary models that get successively closer to implementation. MaSE has been used to design systems ranging from a heterogeneous database integration system to a biologically based, computer virus-immune system to cooperative robotics systems. The authors also provide a case study of an actual system developed using MaSE in an effort to help demonstrate the practical aspects of developing systems using MaSE.
Chapter Preview
Top

Introduction

This chapter describes the Multi-agent Systems Engineering (MaSE) methodology for analyzing and designing multi-agent systems. MaSE was originally designed to develop closed, general purpose, heterogeneous multi-agent systems. MaSE has been used to design systems ranging from a heterogeneous database integration system to a biologically based, computer virus-immune system to cooperative robotics systems. While the multi-agent systems designed by MaSE are typically closed (the number and type of all agents are known a priori), the number of agents is unlimited, although, practically, the number of types of different agents is limited to something less than 50.

MaSE uses the abstraction provided by multi-agent systems to help designers develop intelligent, distributed software systems. MaSE views agents as a further abstraction of the object-oriented paradigm where agents are a specialization of objects. Instead of simple objects, with methods that can be invoked by other objects, agents coordinate with each other via conversations and act proactively to accomplish individual and system-wide goals. Agents are a convenient abstraction that allows designers to handle intelligent and non-intelligent system components equally within the same framework.

MaSE builds on existing object-oriented techniques and applies them to the specification and design of multi-agent systems. Many of the models developed with MaSE are similar to models defined in the Unified Modeling Language. However, the semantics of the models are often specialized for the multi-agent setting.

MaSE was designed to be used to analyze, design, and implement multi-agent systems by proceeding in an orderly fashion through the development lifecycle (DeLoach, Wood, & Sparkman, 2001). MaSE has been automated via an analysis and design environment called agentTool, which is a tool that supports MaSE and helps guide the system designer through a series of models, from high-level goal definition to automatic verification, semi-automated design generation, and finally to code generation.

The MaSE methodology consists of two main phases that result in the creation of a set of complementary models (see Table 1). The phases and the respective models that result at the end of each phase are listed below. While presented sequentially, the methodology is, in practice, iterative. The intent is to free the designer to move between steps and phases such that with each successive pass, additional detail is added and, eventually, a complete and consistent system design is produced.

Table 1.
    Phases    Models
     1. Analysis phase
          a. Capturing goals
          b. Applying use cases
          c. Refining roles
    Goals hierarchy
    Use cases, sequence diagrams
    Concurrent tasks, role model
     2. Design Phase
              a.Creating agent classes
              b. Constructing conversations
              c. Assembling agent classes
              d. System design
    Agent Class diagrams
    Conversation diagrams
    Agent architecture diagrams
    Deployment diagrams
Top

Analysis Phase

The first phase in developing a multi-agent system using the MaSE methodology is the analysis phase. The goal of the MaSE analysis phase is to define a set of roles that can be used to achieve the system-level goals. These roles are defined explicitly via a set of tasks, which are described by finite state models. This process is captured in three steps: capturing goals, applying use cases, and refining roles.

Complete Chapter List

Search this Book:
Reset