Elsevier

Information Sciences

Volume 195, 15 July 2012, Pages 190-210
Information Sciences

Designing a meta-model for a generic robotic agent system using Gaia methodology

https://doi.org/10.1016/j.ins.2012.01.029Get rights and content

Abstract

The emergence of multi-agent systems in the past years has led to the development of new methodologies to assist in the requirements and architectural analysis, as well as in the design phases of such systems. Consequently, several Agent Oriented Software Engineering (AOSE) methodologies have been proposed. In this paper, we analyze some AOSE methodologies, including Gaia, which supports the architectural design stage, and some proposed extensions. We then use an adapted version of this methodology to design an abstract generic system meta-model for a multi-robot application, which can be used as a basis for the design of these systems, avoiding or shortening repetitive tasks common to most systems. Based on the proposed Generic Robotic Agent Meta-Model (GRAMM), two distinct models for two different applications are derived, demonstrating the versatility and adaptability of the meta-model. By adapting the Gaia methodology to the design of open systems, this work makes the designers’ job faster and easier, decreasing the time needed to complete several tasks, while at the same time maintaining a high-level overview of the system.

Introduction

In the past years, systems that support the use of mobile robots have emerged at a growing rate. These systems are used in a wide range of areas, including military [19], medical [9], industrial [49], household applications [31], [30], and other smaller or more specific fields of research, such as the Robocup Rescue1 and Soccer competitions,2 as well as several projects currently under development. Despite the need to develop coordination methodologies among the several entities, the benefits of a system capable of working in a distributed manner (with simpler entities performing smaller tasks that together contribute to a larger task completion) are certainly greater than the complexities introduced by this model [1].

Several Agent-Oriented Software Engineering (AOSE) methodologies have been proposed over the years to help model multi-agent systems, some deriving from existing more traditional software engineering methodologies (usually object-oriented approaches), others with a more innovative origin. These methodologies are diverse in terms of the development phases they support, from requirement elicitation to implementation.

The main goal of the work presented in this paper is to introduce a meta-model for a generic robotic agent system, that can be used as a basis for the modeling of such systems, thus avoiding or shortening repetitive tasks common to most of these systems. This meta-model can be achieved by using a methodology that supports the architectural design stage. One such methodology is Gaia, a somewhat generic methodology that excludes requirements elicitation and implementation, focusing on analysis and design of the system [47]. Even though the Gaia methodology was originally intended to be used in the design of organizational systems, with a more defined set of hierarchical organization, it can also be used in the design of open systems, with minor modifications, as introduced in Section 4.

In the following section, we present a brief overview on some existing AOSE methodologies, as well as a brief analysis on some proposed extensions to the Gaia methodology (Section 2.4). In more detail, we present and analyze:

  • the differences between the original Gaia methodology and the official proposed improvements

  • the proposed AUML extensions

  • the proposed ROADMAP extension

  • the extensions and replacements as proposed by [10]

We also introduce a model for an extended version of the Gaia methodology, using the Software Process Engineering Metamodel (SPEM) 2.0 notation – see Section 3. This is believed to be an original contribution that provides a higher formalization and facilitates a better understanding of the Gaia methodology.

In Section 4, we introduce the proposed meta-model for a multi-agent system including several robotic vehicles and some peripheral agents using Gaia-based methodology. We then instantiate the Generic Robotic Agent Meta-Model (GRAMM) into two distinct designs for two different systems (Section 5).

Finally, on Section 6, we present some conclusions about the work that has already been done, as well as the guiding lines for the next steps to be taken.

Section snippets

AOSE methodologies and extensions

The ever-growing use of agent-based technology and applications has brought forward the need for methodologies that could aid designers not only in development and deployment, but also in the early analysis and design phases of a project, in a manner similar to what traditional software engineering techniques have done for more conventional software projects, namely when using an object-oriented paradigm [27].

In this section, we briefly introduce some of the most widely known AOSE methodologies

Gaia SPEM model

In this section, we present the Software Process Engineering Metamodel (SPEM) model for an extended version of the Gaia methodology. SPEM is a notation used to describe a concrete software development process. Previous work on this specific field includes a model for the original version of Gaia [21]. This model was produced by the FIPA6 Methodology Technical Committee using the previous version of SPEM,

Generic robotic agent meta-model

This section covers the overall requirements for the set of systems that can be represented by the developed meta-model, and details the analysis and design of the meta-model itself, following the Gaia methodology as described in the section above.

Particularizations of the meta-model

This section introduces two instantiations of the meta-model presented in the section above. The two systems are briefly described, and an overview on both architectural and implementation details is given.

Conclusions and future work

In this paper, we present a Gaia-based meta-model for a multi-agent system based on mobile robotic platforms. In more detail, we covered some existing AOSE methodologies, and some existing extensions to the Gaia methodology in particular. We also introduced a SPEM model describing the adopted version of the Gaia methodology. In addition to the meta-model introduced in Section 4, we also introduce two particularizations of that model, for two specific and distinct systems, that serve both as

Acknowledgments

We would like to thank LIACC for providing with all the necessary equipment and for the excellent working conditions. The first author is funded by the Portuguese Foundation for the Science and the Technology under doctoral Grant SFRH/DB/36610/2007 and the second author is supported by a CAPES-Brazil Doctoral Grant. This work was partially supported by FCT/PTDC/EIA/70695/2006 Project – “ACORD: Adaptive Coordination of Robot Teams”.

References (50)

  • P. Bresciani et al.

    Tropos: an agent-oriented software development methodology

    Autonomous Agents and Multi-Agent Systems

    (2004)
  • F. Carreira, T. Canas, J. Sousa, C. Cardeira, A fuzzy controller for a health services mobile robot, in: IEEE...
  • A. Castro et al.

    The rationale behind the development of an airline operations oontrol centre using gaia-based methodology

    International Journal of Agent – Oriented Software Engineering

    (2008)
  • CENELEC, March 2001. Railway applications communication, signalling and processing systems, Part 2: Safety related...
  • L. Cernuzzi et al.

    The gaia methodology – basic concepts and extensions

  • L. Cernuzzi et al.

    Experiencing AUML in the gaia methodology

  • K.H. Dam et al.

    Comparing agent-oriented methodologies

  • S. DeLoach et al.

    Developing multiagent systems with agenttool

  • S.A. DeLoach et al.

    MultiAgent systems engineering

    International Journal of Software Engineering and Knowledge Engineering

    (2001)
  • FIPA, March 2004. Fipa agent management specification. Standard component SC00023K, Foundation for Intelligent Physical...
  • K. Fowler

    Mission-critical and safety-critical development

    IEEE Instrumentation & Measurement Magazine

    (2004)
  • Future Combat Systems, April 2008. Future Combat Systems (Brigade Combat Team) (FCS (BCT)) System...
  • J.C. Garcfa-Ojeda et al.

    Paving the way for implementing multiagent systems: integrating gaia with agent-UML

  • A. Garro, P. Turci, Meta-Model Sources: Gaia. Tech. rep., Foundation for Intelligent Physical Agents,...
  • R. Gimenes, D.C. Silva, L.P. Reis, E. Oliveira, Flight Simulation Environments Applied to Agent-Based Autonomous UAVs,...
  • Cited by (0)

    View full text