Skip to main content
Top

2006 | Book

Agent-Oriented Software Engineering VI

6th International Workshop, AOSE 2005, Utrecht, The Netherlands, July 25, 2005. Revised and Invited Papers

Editors: Jörg P. Müller, Franco Zambonelli

Publisher: Springer Berlin Heidelberg

Book Series : Lecture Notes in Computer Science

insite
SEARCH

About this book

Agent and multiagent concepts offer higher level abstractions and mechanisms which address issues such as knowledge representation and reasoning, communication, coordination, cooperation among heterogeneous and autonomous parties, perception, commitments, goals, beliefs, and intentions all of which need conceptual modeling. The AOSE 2005 workshop sought to examine the credentials of agent-based approaches as a software engineering paradigm, and to gain an insight into what agent-oriented software engineering will look like, and what its benefits will be.

This book represents the thoroughly refereed post-proceedings of the 6th International Workshop on Agent-Oriented Software Engineering, AOSE 2005, held in Utrecht, The Netherlands, in July 2005 as part of AAMAS 2005. The 18 revised full papers were carefully selected from 35 submissions during two rounds of reviewing and improvement. The papers are organized in topical sections on modeling tools, analysis and validation tools, multiagent systems design, implementation tools, and experiences and comparative evaluations.

Table of Contents

Frontmatter

Modeling Tools

Operational Modelling of Agent Autonomy: Theoretical Aspects and a Formal Language
Abstract
Autonomy has always been conceived as one of the defining attributes of intelligent agents. While the past years have seen considerable progress regarding theoretical aspects of autonomy, and while autonomy has been identified as an enabler for new computing paradigms such as grid computing, (web-)service-oriented computing or ubiquitous computing, autonomy as a software property is still miles away from implementation. Because of the legal responsibility of designers or users for the actions of autonomous software, the implementation of autonomy will require rigorous modelling and verification, so as to ensure maximum dependability. We take a first step in this direction by introducing a formal language ASL (Autonomy Specification Language) that allows for a precise specification of the activities to be carried out by a set of agents, the deontic constraints imposed on these activities, and the implications of activity execution on particular constraints (i.e., constraint dynamics). Agent autonomy is implicit in an ASL specification as the degrees of freedom left to the agents for the execution of activities.
Gerhard Weiß, Felix Fischer, Matthias Nickles, Michael Rovatsos
Hermes: Designing Goal-Oriented Agent Interactions
Abstract
Interactions between agents are traditionally specified as interaction protocols using notations such as Petri nets, AUML, or finite state machines. These protocols are a poor fit with autonomous proactive agents since protocols are message-centric and do not support goals. Additionally, interaction protocols prescribe how interactions are carried out by agents, thus limiting the flexibility of the interactions. This also limits robustness, by reducing the available options for recovering from failure. In this paper we propose a goal-oriented approach to interaction. Since we aim at a useful and practical approach that can be used by practising software engineers, a design methodology is an important part of our solution. We present the Hermes approach which includes a methodology for designing goal-based interactions, failure handling mechanisms, and a process for mapping design artefacts to an executable implementation.
Christopher Cheong, Michael Winikoff
Modeling Social Aspects of Multi-Agent Systems: The AML Approach
Abstract
This paper presents modeling concepts and mechanisms of the Agent Modeling Language (AML) to model social aspects of multi-agent systems. The modeling of structural, behavioral as well as attitudinal aspects of multi-agent systems from the social perspective is discussed and demonstrated on examples.
Radovan Cervenka, Ivan Trencansky, Monique Calisti

Analysis and Validation Tools

Requirements Elicitation for Agent-Based Applications
Abstract
Requirements Elicitation for a software system is a key stage in a successful development. At the same time, it is one of the most challenging, because requirements have to consider the mutual influences between the envisioned system and the human context where it will work. These influences cover aspects such as organization, motivation, evolution, and cognition, taking place in a specific setting. The agent paradigm facilitates the analysis of these features because of its intentional and social nature. Nevertheless, determining the information that should be obtained and the way it should be modelled is not a trivial task. Developers are experts in software systems but they are not always familiarized with the concrete domain of those systems. The Requirements Elicitation Guide, a technique based on the Activity Theory from Social Sciences, can be applied to support developers in these issues. This guide empowers the development team with the experience of Social Sciences in these issues. This paper introduces the guide and shows its application in a case study about a web application.
Rubén Fuentes, Jorge J. Gómez-Sanz, Juan Pavón
Formalisation and Analysis of the Temporal Dynamics of Conditioning
Abstract
In order to create adaptive Agent Systems with abilities matching those of their biological counterparts, a natural approach is to incorporate classical conditioning mechanisms into such systems. However, existing models for classical conditioning are usually based on differential equations. Since the design of Agent Systems is traditionally based on qualitative conceptual languages, these differential equations are often not directly appropriate to serve as an input for Agent System design. To deal with this problem, this paper explores a formal description and analysis of a conditioning process based on logical specification and analysis methods of dynamic properties of conditioning. Specific types of dynamic properties are global properties, describing properties of the process as a whole, or local properties, describing properties of basic steps in a conditioning process. If the latter type of properties are specified in an executable format, they provide a temporal declarative specification of a simulation model. Global properties can be checked automatically for simulated or other traces. Using these methods the properties of conditioning processes informally expressed by Los and Heuvel [8] have been formalised and verified against a specification of local properties based on Machado [9]’s mathematical model.
Tibor Bosse, Catholijn M. Jonker, Sander A. Los, Leendert van der Torre, Jan Treur
Incorporating Commitment Protocols into Tropos
Abstract
This paper synthesizes two trends in the engineering of agent-based systems. One, modern agent-oriented methodologies deal with the key aspects of software development including requirements acquisition, architecture, and design, but can benefit from a stronger treatment of flexible interactions. Two, commitment protocols declaratively capture interactions among business partners, thus facilitating flexible behavior and a sophisticated notion of compliance. However, they lack support for engineering concerns such as inducing the desired roles and selecting the right protocols. This paper combines these two directions. For concreteness, we choose the Tropos methodology, which is strong in its requirements analysis, but our results can be ported to other agent-oriented methodologies.
Our approach is as follows. First, using Tropos, analyze requirements based on dependencies between actors. Second, select top-level protocols based on the actors’ hard goals, while respecting the logical boundaries of their interactions. Third, select refined protocols based on the actors’ soft goals. Consequently, Tropos provides a rigorous basis for modeling and composing protocols whereas the protocols help produce perspicuous designs that respect the participants’ autonomy. We evaluate our approach using a large existing case.
Ashok U. Mallya, Munindar P. Singh

Multiagent Systems Design

Zooming Multi-Agent Systems
Abstract
Complex systems call for a hierarchical description. Analogously, the engineering of non-trivial MASs (multiagent systems) requires principles and mechanisms for a multi-layered description, which could be used by MAS designers to provide different levels of abstraction over MASs.
In this paper, we first advocate the need for zooming mechanisms, promoting a coherent and consistent multi-layered view of agent systems. After surveying the best-known AOSE methodologies, we focus on the scaling mechanisms of the OPM process-oriented methodology. Then, by adopting SODA as our reference, we show how an AOSE methodology can be enhanced with simple yet expressive zooming mechanisms. Finally, we present a simple case study where the enhanced agent-oriented methodology (SODA +zoom) is exploited and put to the test.
Ambra Molesini, Andrea Omicini, Alessandro Ricci, Enrico Denti
Improving AOSE with an Enriched Modelling Framework
Abstract
We describe an approach to the development of a complex social care system that defines specific steps along the path to MAS implementation. In particular we explore the use of conceptual knowledge modelling techniques by means of conceptual graphs and a transactions-based architecture for model verification during requirements gathering, together with a translation to AUML for design specification, and propose a rigorous framework to enrich and extend existing AOSE methodologies. The resulting output from Transaction Agent Modelling (TrAM) can then be developed further using the agent development toolkit of choice.
Richard Hill, Simon Polovina, Martin D. Beer
Dealing with Adaptive Multi-agent Organizations in the Gaia Methodology
Abstract
Changes and adaptations are always necessary after the deployment of a multiagent system (MAS), as well as of any other type of software systems. Some of these changes may be simply perfective and have local impact only. However, adaptive changes to meet changed situations in the operational environment of the MAS may have global impact on the overall design. In this paper, we analyze the issue of continuous design change/adaptation in a MAS organization, and the specific problem of how to properly model/design a MAS so as to make it ready to adaptation. Following, the paper focuses on the Gaia methodology and analyzes – also with the help of an illustrative example – its suitability in supporting and facilitating adaptive changes in MASs organizations, and its advantages and limitations with this regard over a number of different agent-oriented methodologies.
Luca Cernuzzi, Franco Zambonelli
Implementing Validated Agents Behaviours with Automata Based on Goal Decomposition Trees
Abstract
In order to provide an effective tool allowing to implement validated agents behaviours, this paper first presents a Goal Decomposition Tree (GDT), a model to specify behaviours both in procedural and declarative ways. A GDT allows the designer to verify the specified behaviour. This model is then used to generate a behaviour automaton using automata composition patterns associated to operators used in the tree. This process allows to obtain a finite expression representing all valid behaviours of agents of a MAS.
Gaële Simon, Marianne Flouret

Implementation Tools

Dynamically Generated User-Specified MAS
Abstract
This paper presents an innovative multi-agent system development approach called mission-based on-demand agent generation. This approach allows agents to be dynamically composed at run-time and most importantly, only when needed. Such an approach is different from the conventional one, where agents are generally composed at design time. Our model of a mission allows the MAS to be suspended and resumed at later stage at the same or different location. We present the formal model of the mission, the strategy to execute the mission and the architecture of the prototype system called eHermes. Finally, we report the experimental results that shows that eHermes handles the load satisfactorily and performs the run-time optimization well.
Glenn Jayaputera, Arkady Zaslavsky, Seng Loke
Supporting the Development of Multi-agent Interactions Via Roles
Abstract
In the multi-agent scenario, interaction among agents is an issue that must be faced in an appropriate way. Modeling interactions by roles can simplify the development of the interactions in agent-based applications. The BRAIN framework proposes an interaction model based on roles, an XML notation to define roles, and interaction infrastructures based on the role model and notation. In this paper we explain how the BRAIN framework can be exploited in the different phases of the development of applications where agents play roles. The general advantage is that the development phases rely on the same information, adapted to different needs, granting coherence and continuity during the development.
Giacomo Cabri, Luca Ferrari, Letizia Leonardi
Automating Model Transformations in Agent-Oriented Modelling
Abstract
Current Agent-Oriented Software Engineering (AOSE) methodologies adopt a model-based approach for analysis and design, but, in order to become of practical use, they should include it in a clear and customizable software development process and provide CASE tools that support it.
In this regards, the Model-Driven Architecture (MDA) initiative of OMG is providing useful concepts and techniques. The MDA ultimate objective is that of improving quality and software maintainability by allowing for the reuse of models and mappings between models. It offers standards and techniques for model interoperability and for automating model transformations.
Our goal in this paper is to address the role of model transformations in AOSE by discussing a practical example, with reference to the Tropos methodology. In particular, we will focus on the automatic transformation of a Tropos plan decomposition into a UML 2.0 activity diagram.
We will show how to use the transformation technique to automate model mappings and describe how a CASE tool, based on a modular architecture, has been extended to automate models transformations.
Anna Perini, Angelo Susi
Paving the Way for Implementing Multiagent Systems: Integrating Gaia with Agent-UML
Abstract
This paper describes how to refine a Gaia design by applying agent-oriented extensions of UML. First, we show how the Gaia Interaction model can be improved by applying the first two layers of the Agent Interaction Protocol (AIP) of AUML. Second, Gaia Agent and Service models are refined by applying the AIP’s third layer combined with Extended UML Class Diagrams. Third, Gaia Organisational Structure is enriched by applying the Aalaadin model. The final aim of the whole process is to obtain a more concrete design closer to implementation. We demonstrate how the refinement process can be applied to the development of an agent-based system for conference management.
Juan C. García-Ojeda, Alvaro E. Arenas, José de Jesús Pérez-Alcázar
Applying Multi-agent Concepts to Dynamic Plug-In Architectures
Abstract
In this work we present the basic concepts for a dynamic plug-in-based software architecture using concepts from the Petri net-based MAS framework Mulan. By transferring the concepts of agent-orientation to a plug-in-based architecture we are able to design our application and the plug-in-based system on an abstract level. Moreover, general problems that evolve from a highly dynamic and configurable architecture have been solved by basing the conceptual design on multi-agent principles. In this paper we discuss the general properties of extensible systems and the benefits that can be achieved when applying the multi-agent view to their architecture.
In addition to the conceptual modeling of such architectures, we provide a practical example where the concept has been successfully applied in the development of the latest release of Renew. Through the introduction of the multi-agent concepts, the new architecture is now – at runtime – dynamically extensible by registering plug-ins with the management system.
Lawrence Cabac, Michael Duvigneau, Daniel Moldt, Heiko Rölke

Experiences and Comparative Evaluations

Using the Analytic Hierarchy Process for Evaluating Multi-Agent System Architecture Candidates
Abstract
Although much effort has been spent on suggesting and implementing new architectures of Multi-Agent Systems (MAS), the evaluation and comparison of these has often been done in a rather ad-hoc fashion. We believe that the time has come to start doing this in a more systematic way using established methods. For instance, we argue that it is important to evaluate the architecture candidates for a particular application according to several quality attributes relevant to that application. The architecture that provides the most appropriate balance between these attributes should then be selected. As a case study we investigate the problem of load balancing and overload control of Intelligent Networks and present four MAS architectures that can be used to handle this task. We instantiate each of these and define metrics for the selected quality attributes. The instantiations are studied in simulation experiments and measurements of the metrics are recorded. The measurements are then analyzed using the Analytic Hierarchy Process, which is a basic approach to select the most suitable alternative from a number of alternatives evaluated with respect to several criteria. We illustrate how such analyzes can be used for deciding which architecture candidate is the most appropriate in different situations.
Paul Davidsson, Stefan Johansson, Mikael Svahnberg
Estimating Costs for Agent Oriented Software
Abstract
Despite the progress in agent oriented software engineering, there is still a long way before achieving maturity. Among others, there is a lack of shared experience in evaluating the cost when developing software using the agent paradigm. This paper provides some results on this issue. It collects data from real agent based projects and gives hints for the application of existing software cost estimation models and what would be appropriate metrics for an agent based software development.
Jorge J. Gómez-Sanz, Juan Pavón, Francisco Garijo
Aspects in Agent-Oriented Software Engineering: Lessons Learned
Abstract
Several concerns in the development of multi-agent systems (MASs) cannot be represented in a modular fashion. In general, they inherently affect several system modules and cannot be explicitly captured based on existing software engineering abstractions. These crosscutting concerns encompass internal agent properties and systemic properties, such as learning, code mobility, error handling, and context-awareness. In this context, it is important to systematically verify whether emerging development paradigms support improved modularization of the crosscutting concerns relative to MASs. This paper reports some lessons learned based on our experience in using aspect-oriented techniques and methods to address these problems. In the light of these lessons, related work and a set of future research directions are also discussed.
Alessandro Garcia, Uirá Kulesza, Cláudio Sant’Anna, Christina Chavez, Carlos J. P. de Lucena
Backmatter
Metadata
Title
Agent-Oriented Software Engineering VI
Editors
Jörg P. Müller
Franco Zambonelli
Copyright Year
2006
Publisher
Springer Berlin Heidelberg
Electronic ISBN
978-3-540-34099-7
Print ISBN
978-3-540-34097-3
DOI
https://doi.org/10.1007/11752660

Premium Partner