International Journal of Agent-Oriented Software Engineering (9 papers in press)
A user-centred social commitment model for location sharing applications in the family life domain
by Alex Kayal, Willem-Paul Brinkman, Mark Neerincx, M. Birna Van Riemsdijk
Abstract: Mobile location-sharing technology is used increasingly by parents to know where their children are. It is our aim to make such technology more flexible in adapting to the particular social context in which it operates. We propose to realize this by allowing users to specify norms that govern the respective social contexts, to which the application should adapt at run-time to provide tailored support. The challenge we address in this paper is the development of a normative model tailored for mobile applications that support location sharing in family life. The novelty of our work lies in the fact that we employ empirical user-centered design methods and techniques for developing the model in an iterative and "bottom-up" way. This results in two main contributions: 1) a normative model, specifically a social commitment model, for family life location sharing applications shown to be useful and usable, and 2) a demonstration of how user-centered design can be employed to develop a normative model for social applications.
Keywords: Social media; location sharing; social commitments; normative frameworks; user values.
Special Issue on: EMAS 2016 Multiagent Systems Engineering and Applications
Protocol and Role: Abstraction Mechanisms in Agent Oriented Programming Languages
by Bent Bruun Kristensen
Abstract: The language mechanisms protocol and role are used in order to organize the interaction structures between agents in multi-agent systems. Agents are internally organized by means of roles, roles are related as protocols, and agents send messages to each other through their related roles. The comprehensive and complex interaction structures between agents are conceptualized by protocol and role, and these abstraction mechanisms are used in the description of interaction structures. The description of the interaction structures between agents becomes understandable and the development process of multi-agent systems becomes efficient and flexible. The language mechanisms are illustrated by means of a supporting application framework.
Keywords: Multi-agent system; Abstraction mechanism; Protocol; Role; Application framework; Agent oriented programming language.
Automating Failure Detection in Cognitive Agent Programs
by Vincent Koeman, Koen Hindriks, Catholijn Jonker
Abstract: Debugging is notoriously difficult and time consuming but also essential for ensuring the reliability and quality of a software system. In order to reduce debugging effort and enable automated failure detection, we propose an automated testing framework for detecting failures in cognitive agent programs. Our approach is based on the assumption that modules within such programs are a natural unit for testing. We identify a minimal set of temporal operators that enable the specification of test conditions and show that the test language is sufficiently expressive for detecting all failure types of an existing failure taxonomy. We also introduce an approach for specifying test templates that supports a programmer in writing tests. Furthermore, empirical analysis of agent programs allows us to evaluate whether our approach using test templates adequately detects failures, and to determine the effort that is required to do so in both single and multi agent systems. We also discuss a concrete implementation of the proposed framework for the GOAL agent programming language that has been developed for the Eclipse IDE. With the use of this framework, evaluations have been performed based on test files and according questionnaires that were handed in by 94 novice programmers.
Keywords: multi-agent systems; testing; verification.
Augmenting Agent Computational Environments with Quantitative Reasoning Modules and Customizable Bridge Rules
by Stefania Costantini, Andrea Formisano
Abstract: There are many examples where large amounts of data might be potentially accessible to an agent, but the agent is constrained by the available budget since access to knowledge bases is subject to fees. Also, there are several activities that an agent might plan and perform on the web where one or more stages imply the payment of fees. For instance, consider the issue of buying resources in a cloud computing context where the objective of the agent is to obtain the best possible configuration of a certain application within given budget constraints. In this paper we consider the software-engineering problem of how to practically empower agents with the capability to perform budget-constrained reasoning in a uniform and principled way. To this aim, we enhance the ACE component-based agent architecture by means of a device for practical and computationally affordable quantitative reasoning, whose results actually determine one or more courses of agent's actions, also according to policies/preferences. We further enhance the ACE framework by making the agent-components interaction mechanism parametric with respect to the actual modules that an agent may dynamically decide to exploit. We discuss the proposed extensions on a realistic case-study.
Keywords: Processes and methodologies for MAS development; Software architectures and design patterns for MAS; Declarative approaches to engineering agents systems.
Improving Flexibility and Dependability of Remote Patient Monitoring with Agent-Oriented Approaches
by Davide Ancona, Angelo Ferrando, Viviana Mascardi
Abstract: Context: Remote Patient Monitoring (RPM) enables physicians to perform
diagnosis and/or treatment remotely through sensors connected via a
communication network. Dependability and flexibility are recognized as two key
technological requirements for RPM take off.
Research question: We address the questions of how RPM systems designed
and implemented as multiagent systems (MASs) can ensure flexibility and
dependability, and which agent-oriented approach if any is more suitable to
achieve this goal.
Method: We analyzed five state-of-the-art agent-oriented approaches suitable to
engineer dependable and/or flexible systems. We planned to adopt the winner
approach to realize a working prototype able to show the potential of an agent-
oriented approach to RPM.
Results: No approach among the five dominates the others w.r.t. all the ten features
that drove our analysis. In absence of a winner, we selected the approach we are
more familiar with, namely parametric trace expressions. We used them to verify
properties modeling existing medical guidelines and to developed a prototype
where newborns suffering from hypoglycemia must be continuously monitored
Conclusions: Parametric trace expressions proved to be suitable for engineering
flexible and dependable RPM systems. This finding can be generalized: agent-
oriented approaches showing features similar to those of parametric trace
expressions can serve to achieve the same goal.
Keywords: Flexibility; Dependability; Remote Patient Monitoring; Protocol-Driven Agents; Self-adaptive Agents; Parametric Trace Expressions.
Special Issue on: EMAS 2015 Agent-based System Engineering
Modeling Agent Oriented Solutions for the SmartGrid
by Jorge J. Gomez-Sanz, Sandra Garcia-Rodriguez, Nuria Cuartero-Soler
Abstract: This paper contributes with an decentralised agent design for a Microgrid that uses agent technology for avoiding dumping the excess of energy to a main powerline. The agent design is made with INGENIAS. The agents connect with a Microgrid simulator, the SGSimulator, and issue commands to control different distributed renewable energy sources. The paper illustrates the benefits of coordination of agents in such scenario through a simple token based protocol.
Keywords: AOSE; SmartGrid; Design; Microgrid; Coordination.
Quantitative analysis of multi-agent systems through statistical verification of simulation traces
by Benjamin Herd, Simon Miles, Peter McBurney, Michael Luck
Abstract: Due to their immense complexity, large-scale multiagent systems are often not amenable to exhaustive formal verification. Statistical approaches that focus on the verification of individual traces can provide an interesting alternative. However, due to its focus on finite execution paths, trace-based verification is inherently limited to certain types of correctness properties. We show how, by combining sampling with the idea of trace fragmentation, statistical verification can be used to answer interesting quantitative correctness questions about multiagent systems at different observational levels. The usefulness of the verification approach is illustrated with a simple case study from the area of swarm robotics.
Keywords: Multiagent systems; Agent-based simulation; Verification; Statistical model checking; Quantitative analysis.
An Agent Programming Manifesto
by Brian Logan
Abstract: There has been considerable progress in both the theory and practice of agent programming since Georgeff & Rao's seminal work on the Belief-Desire-Intention paradigm. However, despite increasing interest in the development of autonomous systems, applications of agent programming are confined to a small number of niche areas, and adoption of agent programming languages in mainstream software development remains limited. This state of affairs is widely acknowledged within the community, and a number of reasons and remedies have been proposed. In this paper, I present an analysis of why agent programming has failed to make an impact that is rooted in the class of programming problems agent programming sets out to solve, namely the realisation of flexible intelligent behaviour in dynamic and unpredictable environments. Based on this analysis, I outline some suggestions for the future direction of agent programming, and some principles that I believe any successful future direction must follow. rn
Keywords: intelligent agents; belief-desire-intention; BDI; agent programming.
Validating MAS Analysis Models with the ASEME Methodology
by Nikolaos Spanoudakis, Efthymios Floros, Nektarios Mitakidis, Pavlos Delias
Abstract: When designing agent-oriented software, engineers consider performance-related non-functional requirements. To this end, performance engineering practices provide a useful toolbox. In particular, simulation of the system's processes appears eminently suitable. However, agent-oriented software engineering methodologies are not directly linked to process simulation features. This paper extends an AOSE methodology for transforming agent roles models to process models, and for streamlining the transformation process towards simulation. Our method allows diverse process model generation, aiming to support the process simulation, and was integrated into a model-driven engineering methodology. We used an established process modelling notation (BPMN) as the target language for the process model, and we are able to deliver a ready-to-simulate model. Through simulation, an analyst can validate specific system requirements and test scenarios of how the system scales beyond the current requirements. Furthermore, because of process models familiarity within the business domain, engineers, managers and stakeholders can seamlessly communicate system designs.
Keywords: Agent-oriented software engineering; AOSE methodology; process models; BPMN; business process modeling notation; simulation; system validation; scaling; model-driven engineering;.