Self-* objectives

Multi-agent systems (MAS) assum their own management, proposing a decentralized approach.
MAGIC provide MAS with the explicit definition of self-* objectives:

  • Self-management
  • Autonomic computing, Dynamic Software Product Lines, self-maintenance,…

  • Self-configuration
  • MAPE-K loop, evolutionary algorithms, self-adjusting,…

  • Self-optimization
  • Energy-efficiency, performance,…

  • Self-protection
  • Security policies, authentication, encryption,…

  • Self-healing
  • Fault-tolerant, graceful degradation, self-stabilization,…

Early Requirements Model of the Energy Management System in i*

Encryption pattern for secure communications of agents

Functional Quality Attributes (FQAs)

Functional Quality Attributes (FQAs) are those quality attributes that, to be satisfied, require the incorporation of additional functionality into the application architecture.
For example, to supply MAS with self-protection agents require the incorporation of specific security components (authentication mechanism or encryption algorithms).
MAGIC seeks to ensure a high level of quality attributes such as performance and energy-efficiency thanks to the self-optimization capabilities of agents.

Multi-Agent System Product Lines (MAS-PL)

Multi-Agent System Product Lines (MAS-PL)

MAS and Software Product Lines (SPLs) technologies are combined to exploit the benefits of SPLs: reducing cost, improving time to market, and enhancing agent tecnology in such a away that it is more industrially applicable.
The SPL approach allows the creation of a family of products based on the analysis of commonalities and variabilities of the MAS.

Complete variability model of the multi-agent system for the IoT in CVL

Common Variability Language (CVL)

The variety of devices, networks, resources, and changes in the environment in IoT systems requires to properly model all the variability.
The Common Variability Language (CVL) is a domain-independent language for specifying and resolving variability over MOF-compliant models, being the more suitable solution for use at the architectural level.

Dynamic Software Product Line (DSPL) and Model-Driven Development (MDD)

Dynamic Software Product Line (DSPL) and Model-Driven Development (MDD) technologies automatize the processes of generating MAS’s configurations from the specific models and requirements of each IoT system.
It includes managing the evolution of the self-* objectives.

Self-adaptation process for mobile systems based on dynamic software product lines (DSPLs)

Case studies

  • Ambient Assisted Living (AAL)
  • Smart Cities and Intelligent Transportation Systems (ITS)
  • Virtual tours
  • Intelligent museums
  • Wireless Sensor Networks
  • Shopping Center Assistant
A context speed advisory (CSA) scenario
Generated routes and tradeoffs of the routes of the Urban Tourist Route Planning System
Overview of the multi-agent system of the smart shopping centre