Nuova ricerca

Giacomo CABRI

Professore Ordinario
Dipartimento di Scienze Fisiche, Informatiche e Matematiche sede ex-Matematica


Home | Curriculum(pdf) | Didattica |


Pubblicazioni

2024 - Learn to Bet: Using Reinforcement Learning to Improve Vehicle Bids in Auction-Based Smart Intersections [Articolo su rivista]
Cabri, G.; Lugli, M.; Montangero, M.; Muzzini, F.
abstract

With the advent of IoT, cities will soon be populated by autonomous vehicles and managed by intelligent systems capable of actively interacting with city infrastructures and vehicles. In this work, we propose a model based on reinforcement learning that teaches to autonomous connected vehicles how to save resources while navigating in such an environment. In particular, we focus on budget savings in the context of auction-based intersection management systems. We trained several models with Deep Q-learning by varying traffic conditions to find the most performance-effective variant in terms of the trade-off between saved currency and trip times. Afterward, we compared the performance of our model with previously proposed and random strategies, even under adverse traffic conditions. Our model appears to be robust and manages to save a considerable amount of currency without significantly increasing the waiting time in traffic. For example, the learner bidder saves at least 20% of its budget with heavy traffic conditions and up to 74% in lighter traffic with respect to a standard bidder, and around three times the saving of a random bidder. The results and discussion suggest practical adoption of the proposal in a foreseen future real-life scenario.


2023 - A Survey on the Use of the Multi-agent Paradigm in Coordination of Connected and Autonomous Vehicles [Relazione in Atti di Convegno]
Cabri, G.; Leonardi, L.; Rotonda, E.
abstract

In this paper we present our work of searching, filtering and selecting relevant papers about the exploitation of the multi-agent paradigm in self-driving vehicles, along with the results of our survey.


2023 - Does the venue of scientific conferences leverage their impact? A large scale study on Computer Science conferences [Articolo su rivista]
Bedogni, L.; Cabri, G.; Martoglia, R.; Poggi, F.
abstract

Purpose: Conferences bring scientists together and provide one of the most timely means for disseminating new ideas and cutting-edge works. The importance of conferences in many scientific areas is testified by quantitative indexes. The main goal of this paper is to investigate a novel research question: is there any correlation between the impact of scientific conferences and the venue where they took place? Design/methodology/approach: To measure the impact of conferences, the authors conducted a large scale analysis on the bibliographic data extracted from 3,838 Computer Science conference series and over 2.5 million papers spanning more than 30 years of research. To quantify the “touristicity'' of a venue, the authors exploited indexes about the attractiveness of a venue from reports of the World Economic Forum, and have extracted four country-wide and two city-wide touristic indexes, which measure the attractiveness and the touristicity of any country or city. Findings: The authors found out that the two aspects are related, and the correlation with conference impact is stronger when considering country-wide touristic indexes, achieving a correlation value of more than 0.5 when considering the average citations, and more than 0.8 when considering the total citations. Moreover the almost linear correlation with the Tourist Service Infrastructure index attests the specific importance of tourist/accommodation facilities in a given country. Research limitations/implications: There are two main limitations of this work: (1) the use of citations to evaluate the attractiveness of the conferences and (2) the difficulty to formally define the touristic attractiveness of a venue. Practical implications: Starting from the results concerning the correlation between different touristicity indicators and the outcome of a conference in terms of citations, it would be possible to support conference organizers in their decisions. For instance, they could plan in advance conference venues considering the same touristicity indicators, comparing different options and selecting cities which have high scores. This will allow for rapid planning of a conference venue, encompassing the easiness of travel and the attractivity of a venue, hence increasing the potential outcomes of the conference. Social implications: Regarding the social implications, this study will enable the possibility for municipalities and conference organizers to understand what it can be improved in a specific venue to make it more attractive. This may include better transport connections or selecting cities which show a high potential regarding the touristicity index. Regarding the willingness of a researcher to submit a paper to a specific conference, it would be unaltered, meaning that what the results show is that there is already a mental process, before submitting a paper to a conference, which considers these indicators. Originality/value: This is the first attempt to focus on the relationship of venue characteristics to conference papers. The results open up new possibilities, such as supporting conference organizers in their organization efforts.


2022 - An Algorithm to Predict E-Bike Power Consumption Based on Planned Routes [Articolo su rivista]
Burani, E.; Cabri, G.; Leoncini, M.
abstract

E-bikes, i.e., bikes equipped with a small electrical engine, are becoming increasingly widespread, thanks to their positive contribution to mobility and sustainability. A key component of an e-bike is the battery that feeds the drive unit: clearly, the higher the capacity of the battery, the longer the distances that the biker will cover under engine support. On the negative side, the additional weight incurred by the electric components is likely to ruin the riding experience in case the battery runs out of power. For this reason, an integrated hardware-software system that provides accurate information about the remaining range is essential, especially for older or “not-in-shape” bikers. Many e-bikes systems are already equipped with a small control unit that displays useful information, such as speed, instantaneous power consumption, and estimated range as well. Existing approaches rely on machine learning techniques applied to collected data, or even on the remaining battery capacity and the assistance level required by the drive unit. They do not consider crucial aspects of the planned route, in particular the difference in altitude, the combined weight of bike and biker, and road conditions. In this paper, we propose a mathematical model implemented in an application to compute battery consumption, and hence the presumed remaining range, in a more accurate way. Our application relies on external sources to compute the route and the elevation data of a number of intermediate points. We present the mathematical model on which our application is based, we show the implemented application in shape of an app, and we report the results of the experiments.


2022 - Combining Coordination Strategies for Autonomous Vehicles in Intersections Networks [Relazione in Atti di Convegno]
Gambelli, Marco; Mariani, Stefano; Cabri, Giacomo; Zambonelli, Franco
abstract


2022 - Flexibility out of standardization [Articolo su rivista]
Cabri, G.; Fioretti, G.
abstract

Purpose: This article aims to provide a theoretical unifying framework for flexible organizational forms, such as so-called adhocracies and network organizations. Design/methodology/approach: In this article, organization practices that are typical of the software industry are analyzed and re-interpreted by means of foundational concepts of organization science. It is shown that one and the same logic is at work in all flexible organizations. Findings: Coordination modes can be fruitfully employed to characterize flexible organizations. In particular, standardization is key in order to obtain flexibility, provided that a novel sort of coordination by standardization is added to those that have been conceptualized hitherto. Research limitations/implications: This article highlights one necessary condition for organizations to be flexible. Further aspects, only cursorily mentioned in this paper, need to be addressed in order to obtain a complete picture. Practical implications: A theory of organizational flexibility constitutes a guide for organizational design. This article suggests the non-obvious prescription that the boundary conditions of individual behavior must be standardized in order to achieve operational flexibility. Social implications: This theoretical framework can be profitably employed in management classes. Originality/value: Currently, flexible organizations are only understood in terms of lists of instances. This article shows that apparently heterogeneous case-studies share common features in fact.


2022 - Traffic Flow Modelling When Autonomous Vehicles Coexist with Human Driven Vehicles: Perspectives and Challenges [Relazione in Atti di Convegno]
Cabri, G.; Crisci, S.; Montangero, M.
abstract

The problem of mathematically modeling traffic flows has been tackled, with different approaches, since the first decades of the last century. The classic framework that accounts only for human-driven cars is bound to change due to the rise of autonomous driving technologies, which will deeply transform mobility, as well as general driving rules and infrastructures. It is therefore urgent to design novel approaches for modeling the transition phase, where autonomous vehicles and human-driven vehicles will have to coexist, and to devise appropriate solutions for their coordination. In this paper, we provide a brief overview of the most recent studies on the transition scenario, and outline the main challenges and perspectives that are likely to appear in the near future for this case.


2021 - About auction strategies for intersection management when human-driven and autonomous vehicles coexist [Articolo su rivista]
Cabri, Giacomo; Gherardini, Luca; Montangero, Manuela; Muzzini, Filippo
abstract

Autonomous vehicles are appearing in our streets, and will soon populate our transportation infrastructures, which must be equipped with appropriate sensors and actuators in order to manage vehicles in a fruitful way. Besides the infrastructures, appropriate algorithms must be defined in order to coordinate the vehicles and to enable them to exploit the resources in a fair yet effective way. In the immediate future, autonomous vehicles must coexist human-driven vehicles, and this transitory scenario poses several challenges in coordinating both kinds to exploit street resources. One of these resources, whose management is quite challenging, is represented by intersections: vehicles come and aim at passing the intersection, often as soon as possible, but they must compete with other vehicles having the same aim. A possible approach that has been used in literature to this problem uses auction based mechanisms. In this paper, we place ourselves in the above-mentioned transitory scenario in which both human-driven and autonomous vehicles will compete to cross intersections, and we investigate the effectiveness of auction-based mechanism to coordinate vehicles at intersections. We devise some simple auction policies, and assume vehicle coordination strategies that are suitable also for human drivers. Our results lead us to believe that, under these assumptions, simple auction mechanisms do not introduce advantages for what concern traveling times as they do in the case of exclusively autonomous vehicles.


2021 - Adaptive Computing (and Agents) for Enhanced Collaboration (ACEC 2021) [Relazione in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.; Wajid, U.
abstract

The 19th edition of the 'Adaptive Computing (and Agents) for Enhanced Collaboration' (ACEC) track at WETICE 2021 targets the relevant topic of adaptation in relation to tools, methods and techniques for the enterprise. The aim of the track is to bring together researches and practitioners, working on agentbased software systems and/or adaptive computing, to present results and discuss innovative ideas. This report outlines the content of the papers accepted for presentation at the track.


2021 - An Adaptive Approach for the Coordination of Autonomous Vehicles at Intersections [Relazione in Atti di Convegno]
Glorio, Nicholas; Mariani, Stefano; Cabri, Giacomo; Zambonelli, Franco
abstract


2021 - Autonomous, context-aware, adaptive Digital Twins—State of the art and roadmap [Articolo su rivista]
Hribernik, K.; Cabri, G.; Mandreoli, F.; Mentzas, G.
abstract

Digital Twins are an important concept in the comprehensive digital representation of manufacturing assets, products, and other resources, comprising their design and configuration, state, and behaviour. Digital Twins provide information about and services based on their physical counterpart's current condition, history and predicted future. They are the building blocks of a vision of future Digital Factories where stakeholders collaborate via the information Digital Twins provide about physical assets in the factory and throughout the product lifecycle. Digital Twins may also contribute to more flexible and resilient Digital Factories. To achieve this, Digital Twins will need to evolve from today's expert-centric tools towards active entities which extend the capabilities of their physical counterparts. Required features include sensing and processing their environment and situation, pro-actively communicating with each other, taking decisions towards their own or cooperative goals, and adapting themselves and their physical counterparts to achieve those goals. Future Digital Twins will need to be context-aware, autonomous, and adaptive. This paper aims to establish a roadmap for this evolution. It sets the scene by proposing a working definition of Digital Twins and examines the state-of-the-art in the three topics in their relation to DTs. It then elaborates potentials for each topic mapped against the working definition, to finally identify research gaps allowing for the definition of a roadmap towards the full realisation of autonomous, context-aware, adaptive Digital Twins as building blocks of tomorrow's Digital Factories.


2021 - Coordination of Autonomous Vehicles: Taxonomy and Survey [Articolo su rivista]
Mariani, Stefano; Cabri, Giacomo; Zambonelli, Franco
abstract

In the near future, our streets will be populated by myriads of autonomous self-driving vehicles to serve our diverse mobility needs. This will raise the need to coordinate their movements in order to properly handle both access to shared resources (e.g., intersections and parking slots) and the execution of mobility tasks (e.g., platooning and ramp merging). The aim of this paper is to provide a global view of the coordination issues and the related solutions in the field of autonomous vehicles. To this end, we firstly introduce the general problems associated with coordination of autonomous vehicles, by identifying and framing the key classes of coordination problems. Then, we overview the different approaches that can be adopted to deal with such problems, by classifying them in terms of the degree of autonomy in decision making that is left to autonomous vehicles during the coordination process. Finally, we overview some further research challenges to address before autonomous coordinated vehicles can safely hit our streets.


2021 - The future of factories: Different trends [Articolo su rivista]
Salierno, G.; Leonardi, L.; Cabri, G.
abstract

The technological advancements promote the rise of the fourth industrial revolution, where key terms are efficiency, innovation, and enterprises’ digitalization. Market globalization, product mass customization, and more complex products need to reflect on changing the actual design methods and developing business processes and methodologies that have to be data-driven, AI-assisted, smart, and service-oriented. Therefore, there is a great interest in experimenting with emerging technologies and evaluating how they impact the actual business processes. This paper reports a comparison among the major trends in the digitalization of a Factory of the Future, in conjunction with the two major strategic programs of Industry 4.0 and China 2025. We have focused on these two programs because we have had experience with them in the context of the FIRST H2020 project. European industrialists identify the radical change in the traditional manufacturing production process as the rise of Industry 4.0. Conversely, China mainland launched its strategic plan in China 2025 to promote smart manufacturing to digitalize traditional manufacturing processes. The main contribution of this review paper is to report about a study, conducted and part of the aforementioned FIRST project, which aimed to investigate major trends in applying for both programs in terms of technologies and their applications for the factory’s digitalization. In particular, our analysis consists of the comparison between Digital Factory, Virtual Factory, Smart Manufacturing, and Cloud Manufacturing. We analyzed their essential characteristics, the operational boundaries, the employed technologies, and the interoperability offered at each factory level for each paradigm. Based on this analysis, we report the building blocks in terms of essential technologies required to develop the next generation of a factory of the future, as well as some of the interoperability challenges at a different scale, for enabling inter-factories communications between heterogeneous entities.


2020 - Adaptive Computing (and Agents) for Enhanced Collaboration (ACEC 2020) [Relazione in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.; Wajid, U.
abstract

The 18th edition of the 'Adaptive Computing (and Agents) for Enhanced Collaboration' (ACEC) track at WETICE 2020 focuses mostly on the area of adaptive agent-based techniques for the enterprise. The aim of the track is to bring together researches and practitioners from the fields of software agents and adaptive computing to present results and discuss innovative ideas. This report outlines the content of the papers accepted for presentation at the track.


2020 - Agilechains: Agile supply chains through smart digital twins [Relazione in Atti di Convegno]
Pernici, B.; Plebani, P.; Mecella, M.; Leotta, F.; Mandreoli, F.; Martoglia, R.; Cabri, G.
abstract

Currently, production and logistics performance of a single organization are only partially dependent on the internal resources, but more and more often, they also depend on the interactions that happen across the so-called supply chain, that is, the interactions between the organization and its customers and suppliers. In particular, the production and logistics coordination between actors in the supply chain is often a difficult activity which draws significant resources. Also, such coordination requires continuous revisions and updates to be performed. In Industry 4.0, the digital twins paradigm is currently adopted to represent, simulate and test the behavior of one or more machines and production plants belonging to an organization. This paper introduces the AgileChains paradigm, extending the digital twin paradigm to supply chains and the dynamics of their participants. This extension also positively affects the reactivity and resilience of the internal processes in case the supply chain has to be reconfigured. We propose a novel conceptual framework that combines Service Oriented Architectures (SOA) with Cyber-Physical Systems (CPS), in order to create service oriented systems suited for exchanging data in a dynamic and adaptive way. In addition, we propose a novel data management mechanism capable of finding the right balance between the internal needs of each organization when handling their data and the need to securely and efficiently export data in the supply chain (cf. smart data movement ). Finally, we plan to define governance tools to model and manage the supply chain that treat agility as a first-class citizen. These tools will allow users to dynamically and predictively change the involved actors, as well as the nature of the exchanged data and the data exchange policies, focusing in particular on adverse, risk-prone events, so to minimize the risk and to optimize the supply chain performance both in terms of efficiency and effectiveness.


2020 - An Architecture for Predictive Maintenance of Railway Points Based on Big Data Analytics [Relazione in Atti di Convegno]
Salierno, G.; Morvillo, S.; Leonardi, L.; Cabri, G.
abstract

Massive amounts of data produced by railway systems are a valuable resource to enable Big Data analytics. Despite its richness, several challenges arise when dealing with the deployment of a big data architecture into a railway system. In this paper, we propose a four-layers big data architecture with the goal of establishing a data management policy to manage massive amounts of data produced by railway switch points and perform analytical tasks efficiently. An implementation of the architecture is given along with the realization of a Long Short-Term Memory prediction model for detecting failures on the Italian Railway Line of Milano - Monza - Chiasso.


2020 - Identification of Social Aspects by Means of Inertial Sensor Data [Articolo su rivista]
Bedogni, Luca; Cabri, Giacomo
abstract


2020 - Managing Human-driven and Autonomous Vehicles at Smart Intersections [Relazione in Atti di Convegno]
Cabri, G.; Montangero, M.; Muzzini, F.; Valente, P.
abstract

Auction-based crossing management approaches are used to design coordination policies for autonomous vehicles and improve smart intersections by providing for differentiated latencies. In this paper we exploit auction-based mechanisms to design a management intersections system re-using traffic lights and coordinating human driven and autonomous vehicles. We first describe in detail this system that uses already present traffic lights and the bidding policy of our auction mechanisms. We then describe our experimental scenario and the research issue that will be addressed by means of future simulations.


2020 - On the Social Implications of Collective Adaptive Systems [Articolo su rivista]
Bucchiarone, A.; Dangelo, M.; Pianini, D.; Cabri, G.; De Sanctis, M.; Viroli, M.; Casadei, R.; Dobson, S.
abstract

Many Collect ive Adaptive Systems (CASs) exist in nature: think of ant colonies, where large collectives of ants operate autonomously but interact with other ants and the environment to provide resilient global behaviors that sustain their colony. Following scientific studies that were aimed at understanding and predicting the evolution of these systems, and fueled by technological advances, research has started to investigate CAS engineering: the methods, tools, and techniques for building CASs. This naturally leads to a vision where collectives of humans and computational elements, situated both in the digital and physical worlds, collaborate to give rise to 'intelligent' collective behavior supporting novel kinds of applications and services. Humans can be involved in two ways: both as users and as components of the CAS, in the sense that human behaviors and limitations are often integral to the system description. This has significant social implications that need to be considered by CAS researchers: in this paper, we share a discussion that took place between some experts thinking about CAS engineering, focusing on the social implication of CASs and related open research challenges. We hope that this provides a useful context for future research projects, research grant proposals, and research directions.


2020 - Specification and verification of railway safety-critical systems using TLA+: A Case Study [Relazione in Atti di Convegno]
Salierno, Giulio; Morvillo, Sabatino; Leonardi, Letizia; Cabri, Giacomo
abstract


2020 - The FIRST (vF Interoperation suppoRting buSiness innovaTion) Project: Service Management for Virtual Factories [Relazione in Atti di Convegno]
Bai, Y.; Bose, S.; Cabri, G.; de Vrieze, P.; Eder, N.; Lazovik, A.; Mandreoli, F.; Mecella, M.; Mu, H.; Xu, L.
abstract

The H2020 FIRST project addresses the virtual factories, which are digital abstractions of real factories. The exploitation of virtual factories enables interoperability between real components inside a factory as well as between different factories belonging to the same supply chain. Moreover, virtual factories can be exploited to manage and compose services inside a factory, defining dynamic adaptation of set of services depending on high-level goals. In this paper we sketch the project results and its current state.


2019 - A Survey of the Use of Software Agents in Digital Factories [Relazione in Atti di Convegno]
Bicocchi, N.; Cabri, G.; Leonardi, L.; Salierno, G.
abstract

Digital factories represent an abstraction of real factories, which is useful to manage at a high level the processes as well as the interactions inside the factories but also the interactions between factories. This abstraction can automatize several processes and can enable to dynamically adapt the factory production to unexpected situations. Software agents can meet the requirements of digital factories by means of their features of autonomy, reactivity, proactivity and sociality. In this paper, we survey the use of software agents in the context of digital factories, showing how they can be exploited. A discussion about the advantages brought by software agents and the limitation of agent-based approaches completes the paper.


2019 - Adaptive Computing (and Agents) for Enhanced Collaboration (ACEC 2019) [Relazione in Atti di Convegno]
Monica, S.; Bergenti, F.; Blake, M. B.; Cabri, G.; Wajid, U.
abstract

The 17th edition of the "Adaptive Computing (and Agents) for Enhanced Collaboration" (ACEC) track at WETICE 2019 focuses mostly on the area of adaptive agent-based techniques for the enterprise. The aim of the track is to bring together researches and practitioners from the fields of software agents and adaptive computing to present results and discuss innovative ideas. This report outlines the content of papers accepted for presentation at the track.


2019 - An architectural approach for digital factories [Relazione in Atti di Convegno]
Bicocchi, N.; Cabri, G.; Leotta, F.; Mandreoli, F.; Mecella, M.; Sapio, F.
abstract

Digital factories comprise a multi-layered integration of various activities along the factories and product life-cycles. A central aspect of a digital factory is that of enabling the product lifecycle stakeholders to collaborate through the use of software solutions. The digital factory expands outside the company boundaries and allows to collaborate on business processes over the whole supply chain. This extended abstract, based on a recently published paper, discusses an interoperability architecture for digital factories. It analyses the key requirements for enabling a scalable factory architecture characterized by access to services, aggregation of data, and orchestration of production processes.


2019 - Auction-based crossings management [Relazione in Atti di Convegno]
Cabri, G.; Gherardini, L.; Montangero, M.
abstract

Autonomous vehicles will ``invade'' our street in a not so far future. They must be coordinated in order to exploit the resources in a fair yet effective way. One of these resources, whose management is quite challenging, is represented by crossings: vehicles come and aim at passing the intersection, often as soon as possible, but they must compete with other vehicles. In this paper we propose an auction-based mechanism to coordinate the vehicles at a crossing, considering the presence of both human-driven and autonomous vehicles; moreover, we introduce an enhancement mechanism to take into consideration also the presence of vehicles in the lanes behind the first one. We analyze different strategies and, by means of simulation experiments, we compare them and show how waiting times change depending on the strategies. The results show that the cooperative strategy presents average waiting times lower for all vehicles than a competitive strategy.


2019 - Different Perspectives of a Factory of the Future: An Overview [Relazione in Atti di Convegno]
Salierno, Giulio; Cabri, Giacomo; Leonardi, Letizia
abstract

Digitalfactory,andCloudManufacturingaretwoapproaches that aim at addressing the Factory of the Future, i.e., to provide digital support to manufacturing factories. They find their roots in two different geographical areas, respectively Europe and China, and therefore presents some differences as well as the same goal of building the factory of the future. In this paper, we present both the digital factory and the cloud manufacturing approaches and discuss their differences.


2019 - Dynamic digital factories for agile supply chains: An architectural approach [Articolo su rivista]
Bicocchi, Nicola; Cabri, Giacomo; Mandreoli, Federica; Mecella, Massimo
abstract

Digital factories comprise a multi-layered integration of various activities along the factories and product lifecycles. A central aspect of a digital factory is that of enabling the product lifecycle stakeholders to collaborate through the use of software solutions. The digital factory thus expands outside the company boundaries and offers the opportunity to collaborate on business processes affecting the whole supply chain. This paper discusses an interoperability architecture for digital factories. To this end, it delves into the issue by analysing the key requirements for enabling a scalable factory architecture characterized by access to services, aggregation of data, and orchestration of production processes. Then, the paper revises the state-of-the-art w.r.t. these requirements and proposes an architectural framework conjugating features of both service-oriented and data-sharing architectures. The framework is exemplified through a case study.


2019 - ECAS 2018 Foreword: 3rd Workshop on Engineering Collective Adaptive Systems [Abstract in Atti di Convegno]
Cabri, G.; Dobson, S.; De Sanctis, M.; Bourcier, J.; Schiendorfer, A.; Dustdar, S.; Damiani, F.; Musolesi, M.; Wirsing, M.; Hillston, J.; Viroli, M.; Bortolussi, L.; Teuscher, C.; Massink, M.; Gallo, F.; Trubiani, C.; Spalazzese, R.; Iovino, L.; Pahl, C.; Klos, V.; Geihs, K.; Caporuscio, M.; Loreti, M.; Inverardi, P.; Lewis, P.; Markey, N.; Melgratti, H.; Bagnoli, F.; Clarke, S.; Di Marzo Serugendo, G.; Powers, S.; Mourshed, M.; Coore, D.
abstract


2019 - EU H2020 MSCA RISE Project FIRST - “virtual Factories: Interoperation suppoRting buSiness innovation” [Capitolo/Saggio]
Boese, Stephan; Cabri, Giacomo; Eder, Norbert; Mandreoli, Federica; Lazovik, Alexander; Mecella, Massimo; Phalp, Keith; de Vrieze, Paul; Xu, Lai; Yu, Hongnian
abstract

FIRST – “virtual Factories: Interoperation suppoRting buSiness innovation”, is a European H2020 project, founded by the RESEARCH AND INNOVATION STAFF EXCHANGE (RISE) Work Programme as part of the Marie Skłodowska-Curie actions. The project concerns with Manufacturing 2.0 and aims at providing the new technology and methodology to describe manufacturing assets; to compose and integrate the existing services into collaborative virtual manufacturing processes; and to deal with evolution of changes. This Chapter provides an overview of the state of the art for the research topics related to the project research objectives, and then it presents the progresses the project achieved up to now towards the implementation of the proposed innovations.


2019 - Intelligent agents supporting digital factories [Relazione in Atti di Convegno]
Bicocchi, N.; Cabri, G.; Leonardi, L.; Salierno, G.
abstract

Intelligent agents represent a widely exploited paradigm of the Distributed Artificial Intelligence (DAI). They have been applied in many fields, and recently they have appeared also in the digital factory field. Digital factories are abstractions of real factories, which enable high-level management of factories' processes, along with their automatization. So, the real factories can dynamically adapt their processes to unexpected situations. In this paper, we survey different works at the state of the art that show how intelligent agents can support digital factories, along with the limitations of their application. A discussion about the advantages of intelligent agents and the open issues completes the paper.


2019 - QoS evaluation of constrained cloud manufacturing service composition [Relazione in Atti di Convegno]
Salierno, G.; Cabri, G.; Leonardi, L.
abstract

Cloud manufacturing is a paradigm that represents distributed cyber-physical systems in which software abstractions and services work in strict connection to manufacturing equipment and machines. In cloud manufacturing, the cloud platform receives high-level tasks that are decomposed into subtasks, which are fulfilled by appropriate services. Despite different approaches have been proposed to compose services in order to accomplish manufacturing tasks, physical constraints have not been considered.In this paper, we propose an approach that enacts a trade-off between quality of service and physical constraints of manufacturing services in order to adapt to equipment constraints. To show the effectiveness of the proposed approach, we quantitatively compare it with a straightforward approach which does not consider any physical constraint. Experimental results of our algorithm show that the trade-off between quality of service and capacity of physical manufacturing equipment is acceptable for efficient cloud service compositions.


2019 - User-aware comfort in retail environments [Relazione in Atti di Convegno]
Bicocchi, N.; Boese, S.; Cabri, G.
abstract

A retail environment can be thought as an environment where customers can buy products, goods or services. The user-experience in physical retail environments is important not only for facilitating the selling of goods and services, but also for providing satisfaction and appealing to retain customers over the long term. The user-experience can be enhanced by adapting aspects of the physical environment such as music, colour, fragrance to the tastes of the customers. In this paper we propose a user-aware approach to adapt physical aspects of a retail environment in order to improve the perceived comfort level. We introduce a model of the user context, which can be used both for representing information about the customers and for driving the adaptation of the environment. The proposed decision system is based on a microservice architecture providing both modularity and flexibility. Real-world examples are also used to show applications of the approach.


2018 - A User-Aware and Semantic Approach for Enterprise Search [Articolo su rivista]
Cabri, Giacomo; Martoglia, Riccardo
abstract

This article describes how in addition to general purposes search engines, specialized search engines have appeared and have gained their part of the market. An enterprise search engine enables the search inside the enterprise information, mainly web pages but also other kinds of documents; the search is performed by people inside the enterprise or by customers. This article proposes an enterprise search engine called AMBIT-SE that relies on two enhancements: first, it is user-aware in the sense that it takes into consideration the profile of the users that perform the query; second, it exploits semantic techniques to consider not only exact matches but also synonyms and related terms. It performs two main activities: (1) information processing to analyse the documents and build the user profile and (2) search and retrieval to search for information that matches user’s query and profile. An experimental evaluation of the proposed approach is performed on different real websites, showing its benefits over other well-established approaches.


2018 - Adaptive computing (and agents) for enhanced collaboration (ACEC 2018) [Relazione in Atti di Convegno]
Monica, Stefania; Bergenti, Federico; Brian Blake, M.; Cabri, Giacomo; Wajid, Usman
abstract

The 16th edition of the »Adaptive Computing (and Agents) for Enhanced Collaboration» (ACEC) track at WETICE 2018 focuses mostly on the area of adaptive agent-based techniques for the enterprise. The objective of the track is to bring together researches from the fields of software agents and adaptive computing to present results and discuss in the context of adaptive techniques and enterprise collaboration. This report briefly reports on the content of accepted papers.


2018 - Context-Aware Systems and Applications (ICCASA 2016, 2017) and Nature of Computation and Communication (ICTCC 2016, 2017) [Articolo su rivista]
Vinh, Phan Cong; Barolli, Leonard; Cabri, Giacomo; Vassev, Emil
abstract

Editorial introduction to the special issue


2018 - Dealing with data and software interoperability issues in digital factories [Relazione in Atti di Convegno]
Bicocchi, Nicola; Cabri, Giacomo; Mandreoli, Federica; Mecella, Massimo
abstract

The digital factory paradigm comprises a multi-layered integration of the information related to various activities along the factory and product lifecycle manufacturing related resources. A central aspect of a digital factory is that of enabling the product lifecycle stakeholders to collaborate through the use of software solutions. The digital factory thus expands outside the actual company boundaries and offers the opportunity for the business and its suppliers to collaborate on business processes that affect the whole supply chain. This paper discusses an interoperability architecture for digital factories. To this end, it delves into the issue by analysing the main challenges that must be addressed to support an integrated and scalable factory architecture characterized by access to services, aggregation of data, and orchestration of production processes. Then, it revises the state of the art in the light of these requirements and proposes a general architectural framework conjugating the most interesting features of serviceoriented architectures and data sharing architectures. The study is exemplified through a case study.


2017 - Adaptive computing (and agents) for enhanced collaboration [Relazione in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.; Jarrett, J.; Monica, S.; Wajid, U.
abstract

The 15th edition of the "Adaptive Computing (and Agents) for Enhanced Collaboration" track at WETICE 2017 focuses on the areas of adaptive agent-based services and adaptive techniques for enterprises. The purpose of the track is to bring together researches in the fields of software agents and adaptive computing as they relate to the context of adaptive techniques and enterprise collaboration. This report briefly discusses the content of the papers accepted for presentation in the track.


2017 - Adaptive coordination in autonomous driving: Motivations and perspectives [Relazione in Atti di Convegno]
Bertogna, Marko; Burgio, Paolo; Cabri, Giacomo; Capodieci, Nicola
abstract

As autonomous cars are entering mainstream, new research directions are opening involving several domains, from hardware design to control systems, from energy efficiency to computer vision. An exciting direction of research is represented by the coordination of the different vehicles, moving the focus from the single one to a collective system. In this paper we propose some challenging examples thatshow the motivations for a coordination approach in autonomous driving. Moreover, we present some techniques borrowed from distributed artificial intelligence that can be exploited to tackle the previously mentioned challenges.


2017 - Enabling Autonomic Computing Support for the JADE Agent Platform [Articolo su rivista]
Farahani, Ali; Nazemi, Eslam; Cabri, Giacomo; Capodieci, Nicola
abstract

Engineering complex distributed system is a real challenge documented in recent literature. Novel paradigms such as Autonomic Computing (AC) approaches appear to be the fittest engineering model in order to face performance instabilities of systems inserted in open and non-deterministic environments. To this purpose, the availability of appropriate development environments will facilitate the design of such systems. Standard agent development platforms represent a good starting point, but they generally lack of rigorous ways to define central AC-related concepts such as the prominent role of feedback loops and knowledge integration in decision making processes: we therefore believe that Agent Oriented Software Engineering (AOSE) can be substantially enriched by taking into account such concepts. In this paper, a novel extension of the well-known JADE agent development environment is discussed. This extension enhances JADE in order to address the engineering process with Autonomic Computing support. It is called “Autonomic Computing Enabled JADE” or shortly ACE-JADE. The behavioral model of ACE-JADE will be thoroughly described in the context of a case study (NASA ANTS project).


2017 - SASO 2016: Selected, revised, and extended best papers [Articolo su rivista]
Cabri, Giacomo; Picard, Gauthier; Suri, Niranjan
abstract

...


2016 - A Neural Network Approach to Find The Cumulative Failure Distribution: Modeling and Experimental Evidence [Articolo su rivista]
Alsina, EMANUEL FEDERICO; Cabri, Giacomo; Regattieri, Alberto
abstract

The failure prediction of components plays an increasingly important role in manufacturing. In this context, new models are proposed to better face this problem, and, among them, artificial neural networks are emerging as effective. A first approach to these networks can be complex, but in this paper, we will show that even simple networks can approximate the cumulative failure distribution well. The neural network approach results are often better than those based on the most useful probability distribution in reliability, the Weibull. In this paper, the performances of multilayer feedforward basic networks with different network configurations are tested, changing different parameters (e.g., the number of nodes, the learning rate, and the momentum). We used a set of different failure data of components taken from the real world, and we analyzed the accuracy of the approximation of the different neural networks compared with the least squares method based on the Weibull distribution. The results show that the networks can satisfactorily approximate the cumulative failure distribution, very often better than the least squares method, particularly in cases with a small number of available failure times.


2016 - A Self-healing Architecture based on RAINBOW for Industrial Usage [Articolo su rivista]
Farahani, Ali; Nazemi, Eslam; Cabri, Giacomo
abstract

Over recent decades computer and software systems become more and more complex because of the applications’ and user’s requirements. The complexity makes the software systems more vulnerable to the error and bugs. Also, environmental situations affect software systems which do not react to the environmental activities. Self-healing architectures have been proposed in order to make systems defeat these problems and to make systems capable of reacting to the environmental activity. Hence, these architectures help system to become dynamic and more robust, but finding a proper architecture which can support and cover system’s requirements is an issue. This is particularly true in industrial environments, which consist of some known and some unknown parameters. This paper presents an architecture that can be used in some industrial environment to facilitate the process of adapting the system to unpredicted situations. This architecture has been developed over the base of RAINBOW infrastructure and it is compliant to the MAPE control loop (Autonomic Computing control loop). The paper reports also about the practical experience of implementing this architecture for a painter robot in an automotive factory, which deals with problems in painted part by itself. The proposed architecture uses rule-based reasoning and it actualizes the method of environmental modeling by using a rule-based system as the model extractor. The results of the implementation shows huge benefits in reusability and even in the quality of painting process.


2016 - ACE-JADE: Autonomic Computing Enabled JADE [Relazione in Atti di Convegno]
Farahani, Ali; Cabri, Giacomo
abstract

Autonomic computing has become an enormous trend in software engineering in the past decade. Also, dealing with problems from a distributed system point of view has often become a choice. Using autonomic computing in distributed environments started about decade ago. In this context, the availability of a development environment could be useful for developing the systems easily and with better quality. In this research we are going to describe a method for extending one of the well-known development environments for agent-oriented systems (JADE) in order to enable support for Autonomic Computing in it. This research will state the desired path to the ACE-JADE by extending the Agent, Behavior, Message in JADE and also adding Knowledge into JADE.


2016 - AMBIT-SE: Towards a User-aware Semantic Enterprise Search Engine [Relazione in Atti di Convegno]
Cabri, Giacomo; Gaddi, Stefano; Martoglia, Riccardo
abstract

Search engines represent one of the most exploited tools both in our everyday life and in our work. In this paper we propose a user-aware semantic enterprise search engine called AMBIT-SE. It is "enterprise" in the sense that it is focused on the search in enterprise websites; the "semantic" aspect is related to the fact that it exploits not an exact word match, but relies also on the meaning of the words by means of synonyms and related terms; finally, to produce query results it takes into account also the user information, which turns out to be very useful to improve the search. We explain how our system works and report the results of experiments on different websites.


2016 - An adaptive agent-based system for deregulated smart grids [Articolo su rivista]
Capodieci, Nicola; Pagani, Giuliano Andrea; Cabri, Giacomo; Aiello, Marco
abstract

The power grid is undergoing a major change due mainly to the increased penetration of renewables and novel digital instruments in the hands of the end users that help to monitor and shift their loads. Such transformation is only possible with the coupling of an information and communication technology infrastructure to the existing power distribution grid. Given the scale and the interoperability requirements of such future system, service-oriented architectures (SOAs) are seen as one of the reference models and are considered already in many of the proposed standards for the smart grid (e.g., IEC-62325 and OASIS eMIX). Beyond the technical issues of what the service-oriented architectures of the smart grid will look like, there is a pressing question about what the added value for the end user could be. Clearly, the operators need to guarantee availability and security of supply, but why should the end users care? In this paper, we explore a scenario in which the end users can both consume and produce small quantities of energy and can trade these quantities in an open and deregulated market. For the trading, they delegate software agents that can fully interoperate and interact with one another thus taking advantage of the SOA. In particular, the agents have strategies, inspired from game theory, to take advantage of a service-oriented smart grid market and give profit to their delegators, while implicitly helping balancing the power grid. The proposal is implemented with simulated agents and interaction with existing Web services. To show the advantage of the agent with strategies, we compare our approach with the “base” agent one by means of simulations, highlighting the advantages of the proposal.


2016 - An Evaluation Method for Self-Adaptive Systems [Relazione in Atti di Convegno]
Farahani, Ali; Nazemi, Eslam; Cabri, Giacomo; Rafizadeh, Alireza
abstract

Nowadays, change is an important aspect of the world. Complexity and change in requirements and environments bring us to Autonomic Systems as a solution. Like any other kind of software system better implementation of a system needs a proper evaluation method for system implementation. To evaluate a Self-Adaptive system, appropriate quality factors are needed for evaluation. This research tries to use non-adaptive systems evaluation methods to evaluate Self-Adaptive ones. The qualitative factors for self-adaptive systems have been extracted from a literature review (as Self-Adaptive System Qualitative Factors or for abbreviation SAQFs). Hence, there is no explicit or even implicit way for measuring most of the SAQFs, This research has tried to measure them through some measurable Qualitative Criterion. These Qualitative Criteria (we call them QCs) consist of some self-adaptive systems attributes and also some non-adaptive systems qualitative factors. A map between these SAQFs and software systems QCs (which are more measurable) have been introduced. For each QC sufficient metrics for measuring could be dug up based on the problem context. For better knowing about the influence of qualitative factors on each other, a prerequisite and post-requisite graph from relations among SAQFs have been introduced. This relational graph shows the importance and impact of each factors measurement on measuring the systems from self-adaptive viewpoint. For evaluating the method, we have proposed a questionnaire to experts about the model the correctness of these impacts and influences have been verified. In addition, a case study on a system in changing environment evaluated with proposed method and the applicability of the method have been reviewed.


2016 - Artificial immunology for collective adaptive systems design and implementation [Articolo su rivista]
Capodieci, Nicola; Hart, Emma; Cabri, Giacomo
abstract

Distributed autonomous systems consisting of large numbers of components with no central control point need to be able to dynamically adapt their controlmechanisms to deal with an unpredictable and changing environment. Existing frameworks for engineering self-adaptive systems fail to account for the need to incorporate self-expression - that is, the capability of a system to dynamically adapt its coordination pattern during runtime. Although the benefits of incorporating self-expression are well known, currently there is no principled means of enabling this during system design.We propose a conceptual framework for principled design of systems that exhibit self-expression, based on inspiration from the natural immune system. The framework is described as a set of design principles and customizable algorithms and then is instantiated in three case studies, including two from robotics and one from artificial chemistry.We show that it enables self-expression in each case, resulting in systems that are able to adapt their choice of coordination pattern during runtime to optimize functional and nonfunctional goals, as well as to discover novel patterns and architectures.


2016 - Designing a Collaborative Middleware for Semantic and User-aware Service Composition [Relazione in Atti di Convegno]
Cabri, Giacomo; Martoglia, Riccardo; Zambonelli, Franco
abstract

The large availability of services, provided by different means such as the Web, smartphone apps and wearable devices, provides users a valuable support for their everyday activities, but at the same time introduces the need for a tailored choice and exploitation of them.Several approaches have been proposed that take into account users' preferences, but a comprehensive user-aware approach is still missing.In this paper we propose a middleware for composing and exploiting services that exhibits some key features: (i) it considers the profile of users that exploit the service to choose appropriate services, (ii) it exploits semantic similarity techniques to make the choice more effective, and (iii) it enables the collaboration among users.By means of a case study we present a possible scenario that can take advantage of our middleware, and show how it can be exploited.


2016 - Evolutionary Strategies for Novelty-Based Online Neuroevolution in Swarm Robotics [Relazione in Atti di Convegno]
Galassi, Marco; Capodieci, Nicola; Cabri, Giacomo; Leonardi, Letizia
abstract

Neuroevolution in robot controllers throughobjective-based genetic and evolutionary algorithms is a wellknownmethodology for studying the dynamics of evolution inswarms of simple robots. A robot within a swarm is able toevolve the simple neural network embedded as its controllerby also taking into account how other robots are performingthe task at hand. In online scenarios, this is obtained throughinter-robot communications of the best performing genomes (i.e.representation of the weights of their embedded neural network).While many experiments from previous work have shown thesoundness of this approach, we aim to extend this methodologyusing a novelty-based metric, so to be able to analyze differentgenome exchange strategies within a simulated swarm of robotsin deceptive tasks or scenarios in which it is difficult to modela proper objective function to drive evolution. In particular, wewant to study how different information sharing approachesaffect the evolution. To do so we developed and tested threedifferent ways to exchange genomes and information betweenrobots using novelty driven evolution and we compared themusing a recent variation of the mEDEA (minimal EnvironmentdrivenDistributed Evolutionary Algorithm) algorithm. As thedeceptiveness and the complexity of the task increases, ourproposed novelty-driven strategies display better performancein foraging scenarios.


2016 - Message from the SASO 2016 Program Committee Chairs [Relazione in Atti di Convegno]
Cabri, G.; Picard, G.; Suri, N.
abstract


2016 - Self-∗ properties in collective adaptive systems [Relazione in Atti di Convegno]
Farahani, Ali; Nazemi, Eslam; Cabri, Giacomo
abstract

In this paper we analyze the self-∗ properties in the collective systems with respect to its relationship with other concepts like emergence and propagation, then we will consider the manipulations that should be made in order to make the MAPE-K loop compliant with the characteristics of collective systems.


2016 - Towards an Integrated Platform for Adaptive Socio-Technical Systems for Smart Spaces [Relazione in Atti di Convegno]
Cabri, Giacomo; Cossentino, Massimo; Denti, Enrico; Giorgini, Paolo; Molesini, Ambra; Mordonini, Monica; Sabatucci, Luca; Tomaiuolo, Michele
abstract

The widespread availability of mobile devices equipped with sensors on board is strongly pushing towards the development of smart spaces—offices, streets, hospital, airports, homes and shops equipped with sensing systems to help people find relevant information quickly and use services comfortably, often in a collaborative way. A common aspect in these scenarios is that the technology complexity is amplified by the organisational and procedural complexity of the application domain: this is in fact typical of socio-technical systems—kinds of systems that inherently need to be conceived, designed and developed taking into account both the technological and the human/organisational aspects from the earliest stages. In this paper, we select and discuss some challenges in the definition and development of adaptive socio-technical systems for smart spaces; the selected challenges aim at focusing in particular on (i) a socio-technical model and process, (ii) a multi-level integration framework, and (iii) methods and system analysis techniques for runtime adaptation. In fact, designing such systems requires the suitable combination of enabling technologies into an operational framework, integrating and coordinating a multiplicity of processes managed by complex organisations, each made up of independent and autonomous units.


2016 - Towards User-Aware Service Composition [Relazione in Atti di Convegno]
Cabri, Giacomo; Leoncini, Mauro; Martoglia, Riccardo; Zambonelli, Franco
abstract

Our everyday life is more and more supported by the information technology in general and specific services provided by means of our electronic devices. The AMBIT project (Algorithms and Models for Building context-dependent Information delivery Tools) aims at providing a support to develop services that are automatically tailored based on the user profile. However, while the adaptation of the single services is the first step, the next step is to achieve adaptation in the composition of different services. In this paper, we explore how services can be composed in a user-aware way, in order to decide the composition that better meets users’ requirements. That is, we exploit the user profile not only to provide her customized services, but also to compose them in a suitable way.


2016 - 14th adaptive computing (and agents) for enhanced collaboration: Adaptive approaches for socio-technical systems [Abstract in Atti di Convegno]
Cabri, G.; Blake, M. B.
abstract

This report describes the culmination of the 14th installment of the "Adaptive Computing (and Agents) for Enhanced Collaboration" (ACEC) track. ACEC focuses on collaborative computing that occurs dynamically among web-accessible software systems and devices. The articulation of these network artifacts must be controlled by adaptive sometimes intelligent control mechanisms, sometimes realizes as agents. ACEC have for over 14 years brought together researchers from multiple disciplines to address the challenges associated with effective, just-in-time collaboration. The track this year showcases perspective papers that address adaptive approaches for socio-technical systems, in different contexts such as smart spaces and crowd sourcing.


2016 - 2nd workshop on distributed adaptive systems [Abstract in Atti di Convegno]
Bucchiarone, A.; Cabri, G.; Capodieci, N.; Zhu, H.
abstract

This is the preface of the 2nd Workshop on Distributed Adaptive Systems (DAS 2016), held at the 13th IEEE International Conference on Autonomic Computing (ICAC 2016).


2015 - ACEC 2015 Track Report: Adaptive computing (and agents) for enhanced collaboration [Abstract in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.; Wajid, U.
abstract

This report describes the culmination of the 13th installment of the "Adaptive Computing (and Agents) for Enhanced Collaboration" (ACEC) track. ACEC focuses on collaborative computing that occurs dynamically among webaccessible software systems and devices. The articulation of these network artifacts must be controlled by adaptive, intelligent control mechanisms, sometimes realized as agents. ACEC has for over 13 years brought together researchers from multiple disciplines to address the challenges associated with effective, just-in-time collaboration. The track this year showcases papers that explore emerging models and design patterns for adaptive architectures for a varied set of domains such as robotic and crowdsourcing.


2015 - Building self-adaptive systems by adaptation patterns integrated into agent methodologies [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Capodieci, Nicola; Leonardi, Letizia
abstract

Adopting patterns, i.e. reusable solutions to generic problems, turns out to be useful to rely on tested solutions and to avoid reinventing the wheel. To this aim, we proposed to use adaptation patterns to build systems that exhibit self-adaptive features. However, these patterns would be more usable if integrated in a methodology exploited to develop a system. In this paper we show how our Catalogue of adaptation patterns can be integrated into methodologies for adaptive systems; more in detail, we consider methodologies which support the development of multi-agent systems that can be considered good examples of adaptive systems. The paper, in particular, shows the integration of our Catalogue of adaptive patterns into the PASSI methodology, together with the graphical tool that we developed to support it.


2015 - Context-aware Readings with Inbooki [Capitolo/Saggio]
Grassi, Daniele; Barigazzi, Giacomo; Bouhtouch, Anas; Cabri, Giacomo
abstract

E-books are more and more spreading among readers, who take advantage from the capability of reading them on different devices and of storing a whole library of books in a light and portable device. What is still missing is a technology that enables not only the adaptation to the exploited device, but also to the context in which the books are read. The experience of the users can be more immersive if the flow of the book content can be modified by the reading device depending on different aspects related to the moment and place of reading. To overcome this limit, we have developed Inbooki, a system for writing and reading e-books that can take into consideration the context in which they are read and can adapt to it, making the experience of the readers more immersive in the story told by the book. The proposed model of the context take into consideration the information from the device sensors, the user profile, and the user choices.


2015 - Context-awareness in the deregulated electric energy market: an agent-based approach [Articolo su rivista]
Capodieci, Nicola; Alsina, EMANUEL FEDERICO; Cabri, Giacomo
abstract

Multiagent systems are commonly used for simulation of new paradigms of energy distribution. Especially when considering Smart Grids, the autonomicity deployed by goal-driven agents implies the need for being aware of multiple aspects connected to the energy distribution context. With ‘context’, we refer to the outside world variables such as weather, stock market trends, location of the users, government actions, and so on; therefore, an architecture highly context-aware is needed. We propose a model in which every important factor concerning the electric energy distribution is presented by modeling context-aware agents able to identify the impact of these factors. Moreover, some tests have been performed regarding the web service integration in which agents contracting energy will automatically retrieve data to be used in adaptive and collaborative aspects; an explicative example is represented by the retrieval of weather forecasting that provides input on ongoing demand and data for the predicted availability (in case of photovoltaic or wind powered environments).


2015 - Integrating Adaptation Patterns into Agent Methodologies to Build Self-Adaptive Systems [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

Agent systems represent a very good example of complex and self-adaptive systems. Adaptation must be conceived not only at the level of single components, but also at the system level, where adaptation must concern the entire structure of one system; adaptation patterns have been proposed to address both levels. Many methodologies have been proposed to support developers in their work, but they lack in addressing the choice and the exploitation of adaptation patterns. In this work, we propose an integration of adaptation patterns in agent-oriented methodologies, exploiting an existing methodology to concretely show how such an integration can be enacted.


2015 - Introduction to the Special Issue on Collective Adaptive Systems [Articolo su rivista]
Cabri, Giacomo; Hart, Emma
abstract

Collective Adaptive Systems (CAS) is a broad term that describes large scale systems that comprise of many units/nodes, each of which may have their own individual properties, objectives and actions. Decision-making in such a system is distributed and possibly highly dispersed, and interaction between the units may lead to the emergence of unexpected phenomena. CASs are open, in that nodes may enter or leave the collective at any time, and boundaries between CASs are fluid. The units can be highly heterogeneous (computers, robots, agents, devices, biological entities, etc.), each operating at different temporal and spatial scales, and having different (potentially conflicting) objectives and goals, even if often the system has a global goal that is pursued by means of collective actions. Our society increasingly depends on such systems, in which collections of heterogeneous technological nodes are tightly entangled with human and social structures to form artificial societies. Yet, to properly exploit them, we need to develop a deeper scientific understanding of the principles by which they operate, in order to better design them. The aim of this special issue is to provide a selection of the state of the art, emerging trends, new technologies and best practices in the field of collective adaptive systems. The idea was born at the second FoCAS Workshop on Fundamentals of Collective Adaptive Systems at SASO 2014 in London, however, an open call enabled any researcher working on a related topic to submit a paper for review.


2015 - Patterns for self-adaptive systems: agent-based simulations [Capitolo/Saggio]
Puviani, Mariachiara; Cabri, Giacomo; Zambonelli, Franco
abstract

Self-adaptive systems are distributed computing systems that can adapt their behavior and structure to different kinds of conditions. This adaptation does not concern the single components only, but the entire system. In a previous work we have identified several patterns for self-adaptation, classifying them by means of a taxonomy, which aims at being a support for developers of self-adaptive systems. Starting from that theoretical work, we have simulated the described self-adaptation patterns, in order to better understand the concrete and real features of each pattern. The contribution of this paper is to report about the simulation work of three patterns as examples, detailing how it was carried out, in order to provide a further support for the developers.


2015 - The influence of the picking times of the components in time and space assembly line balancing problems: An approach with evolutionary algorithms [Relazione in Atti di Convegno]
Alsina, EMANUEL FEDERICO; Capodieci, Nicola; Cabri, Giacomo; Regattieri, Alberto; Gamberi, Mauro; Pilati, Francesco; Faccio, Maurizio
abstract

The balancing of assembly lines is one of the most studied industrial problems, both in academic and practical fields. The workable application of the solutions passes through a reliable simplification of the real-world assembly line systems. Time and space assembly line balancing problems consider a realistic versions of the assembly lines, involving the optimization of the entire line cycle time, the number of stations to install, and the area of these stations. Components, necessary to complete the assembly tasks, have different picking times depending on the area where they are allocated. The implementation in the real world of a line balanced disregarding the distribution of the tasks which use unwieldy components can result unfeasible. The aim of this paper is to present a method which balances the line in terms of time and space, hence optimizes the allocation of the components using an evolutionary approach. In particular, a method which combines the bin packing problem with a genetic algorithm and a genetic programming is presented. The proposed method can be able to find different solutions to the line balancing problem and then evolve they in order to optimize the allocation of the components in certain areas in the workstation.


2015 - 3rd FoCAS workshop on fundamentals of collective adaptive systems (FoCAS 2015) [Abstract in Atti di Convegno]
Cabri, G.; Capodieci, N.; Willies, J.
abstract

The FoCAS workshop focuses on identifying and addressing challenges related to the development of collective adaptive systems, which are systems composed of several components that are able to adapt themselves (both as individual and as system) to changing execution conditions. The first edition of this workshop was organized within the ECAL (European Conference on Artificial Life) 2013 conference, while the second edition was held at SASO 2014 (Self-Adaptive Self-Organizing Systems) conference.


2014 - Adaptive, dynamic, and resilient systems [Curatela]
Suri, N.; Cabri, G.
abstract

As the complexity of today’s networked computer systems grows, they become increasingly difficult to understand, predict, and control. Addressing these challenges requires new approaches to building these systems. Adaptive, Dynamic, and Resilient Systems supplies readers with various perspectives of the critical infrastructure that systems of networked computers rely on. It introduces the key issues, describes their interrelationships, and presents new research in support of these areas. The book presents the insights of a different group of international experts in each chapter. Reporting on recent developments in adaptive systems, it begins with a survey of application fields. It explains the requirements of such fields in terms of adaptation and resilience. It also provides some abstract relationship graphs that illustrate the key attributes of distributed systems to supply you with a better understanding of these factors and their dependencies. The text examines resilient adaptive systems from the perspectives of mobile, infrastructure, and enterprise systems and protecting critical infrastructure. It details various approaches for building adaptive, dynamic, and resilient systems-including agile, grid, and autonomic computing; multi-agent-based and biologically inspired approaches; and self-organizing systems. The book includes many stories of successful applications that illustrate a diversified range of cutting-edge approaches. It concludes by covering related topics and techniques that can help to boost adaptation and resilience in your systems.


2014 - Agent-based simulations of patterns for self-adaptive systems [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Zambonelli, Franco
abstract

Self-adaptive systems are distributed computing systems composed of different components that can adapt their behavior to different kinds of conditions. This adaptation does not concern the single components only, but the entire system. In a previous work we have identified several patterns for self-adaptation, classifying them by means of a taxonomy, which aims at being a support for developers of self-adaptive systems. Starting from that theoretical work, we have simulated the described self-adaptation patterns, in order to better understand the concrete and real features of each pattern. The contribution of this paper is to report about the simulation work, detailing how it was carried out, and to present a table of applicability that completes the initial taxonomy of patterns and provides a further support for the developers.


2014 - AMBIT: Towards an Architecture for the Development of Context-dependent Applications and Systems [Relazione in Atti di Convegno]
Cabri, Giacomo; Leoncini, Mauro; Martoglia, Riccardo
abstract

The development of ubiquitous services tailored to the needs and expectations of a very large number of potential users (especially mobile users) requires that future applications and systems be aware of the service fruition contexts and possibly of accurate user proles. The AMBIT research project aims at providing a general model of con- text as well as a platform that can be exploited to build and deploy dif- ferent kinds of context-dependent applications and systems. We aim at overcoming the restrictions of the existing approaches, which are mainly due to the limited notion of context they propose (if any). In partic- ular, we stress the fact that current technologies does not accurately consider the notion of context semantics and user prole, which is the main source of the ooding of useless data that overload systems and often users' minds.


2014 - An agent based approach to simulate production, degradation, repair, replacement and preventive maintenance of manufacturing systems [Relazione in Atti di Convegno]
Alsina, EMANUEL FEDERICO; Cabri, Giacomo; Alberto, Regattieri
abstract

The capacity to be able to reconfigure the production systems is considered fundamental for the today manufacturing factories, due to the increasing request of a high performance of customer service level (lead time and price). For this reason, the simulation of the productivity of a specific configuration of a production line becomes a great assistance to the decision making process. This paper presents the potential of a multi-agent model used to simulate the failure behavior of a complex line production. This approach offers a decentralized alternative to design decision-making system based on the simulation of distributed entities. In particular, the presented model is able to independently manage the variations of the production rates and the failure prone, caused by the degradation of the machines, repair actions, and replacements. In addition, random failures, and preventive maintenance of a manufacturing system of a single product were considered. The blackboard system and the contract net protocol have inspired the manner to coordinate the productivity of the different machines in the production line, in order to simulate the highest feasible and most balanced productivity in different states of the line.


2014 - Artificial Immune System driven evolution in Swarm Chemistry [Relazione in Atti di Convegno]
Capodieci, Nicola; E., Hart; Cabri, Giacomo
abstract

Morphogenetic engineering represents an interesting field in which models, frameworks and algorithms can be tested in order to study how self-* properties and emergent behaviours can arise in potentially complex and distributed systems. In this field, the morphogenetic model we will refer to is swarm chemistry, since a well known challenge in this dynamical process concerns discovering mechanisms for providing evolution within coalescing systems of particles. These systems consist in sets of moving particles able to self-organise in order to create shapes or geometrical formations that provide robustness towards external perturbations. We present a novel mechanism for providing evolutionary features in swarm chemistry that takes inspiration from artificial immune system literature, more specifically regarding idiotypic networks. Starting from a restricted set of chemical recipes, we show that the system evolves to new states, using an autonomous method of detecting new shapes and behaviours free from any human interaction.


2014 - Artificial Immune System in the context of Autonomic Computing: integrating design paradigms [Relazione in Atti di Convegno]
Capodieci, Nicola; Hart, E.; Cabri, Giacomo
abstract

We describe a framework for developing autonomic computing systems, based on an analogy with the natural immune system. A detailed comparison between the autonomic computing literature and the field of cognitive immune networks is drawn, particularly with respect to ensembles of components (in automomic computing) and ensembles of cells (in immune systems). We show how current approaches to designing autonomic systems could be enriched by considering alternative design processes based on cognitive immune networks.


2014 - Enabling Self-expression: the Use of Roles to Dynamically Change Adaptation Patterns [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

Self-expression is the capability of a system of changing its adaptation pattern at runtime; this can lead to better performance still keeping the achievement of the global goal in a Collective Adaptive System (CAS). In this paper, we show how self-expression can be achieved by means of roles. Developers can embed the adaptation logic in pieces of software that represent roles that system units can play: by changing the roles at runtime, the adaptation pattern changes as a consequence. Exploiting a swarm robotics case study, we show the applicability of our approach and the improvement of the performances with respect to keeping the same pattern during the execution.


2014 - Idiotypic networks for evolutionary controllers in virtual creatures [Relazione in Atti di Convegno]
Capodieci, Nicola; E., Hart; Cabri, Giacomo
abstract

We propose a novel method for evolving adaptive locomotive strategies for virtual limbless creatures that addresses both functional and non-functional requirements, respectively the ability to avoid obstacles and to minimise spent energy. We describe an approach inspired by artificial immune systems, based on a dual-layer idiotypic network that results in a completely decentralised controller. Results are compared to a set of five fixed locomotion strategies and show that adaptive control can evolve and simultaneously optimise energy requirements, starting from the same locomotion non-adaptive strategies.


2014 - Implementing Agent Roles in Java [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Roles represent a powerful means to enable software agents to act in open environments. They can be implemented in different ways, and in this talk I will show two directions exploiting Java. The former one is quite traditional and exploits composition; the latter one adds the capabilities of roles to agents' classes in form of injected bytecode. I will compare the two approaches trying to generalize the considerations.


2014 - Inbooki: Context-aware adaptive e-books [Relazione in Atti di Convegno]
Grassi, D.; Bouhtouch, A.; Cabri, G.
abstract

Traditional e-books are more and more exploited by readers, thanks to the chance of reading them on different devices and to the capability of storing a whole library of books in a light and portable device. However, they are still very rigid and do not adapt to the context of the readers. In this paper we propose a system for writing and reading enhanced e-books that are able to adapt to the context where they are read and to the user’s choices during the reading. Our approach take advantage of the possibilities offered by today’s devices, like context-awareness and user interaction. Past proposals are limited to a specific field or did not consider a wide range of external conditions and interactions, providing a very limited adaptation.


2014 - Introduction [Capitolo/Saggio]
Cabri, G.; Suri, N.
abstract

A True Story Los Angeles, California, December 10, 2012, 9:00 AM. John has just arrived at his office and is trying to access his email but experiences many problems. The performance is slow, timeouts expire, and he receives a number of “Server Error 502" messages. He is wondering whether the problem is with his client, with the network connection, or with the server. He cannot know that thousands of other users are experiencing similar problems-not only with emails but also with other services from the same provider.


2014 - Introduction to the Special Issue on Enabling Technologies for Collaborations [Articolo su rivista]
Cabri, Giacomo; Bergenti, Federico; Aiello, Marco; Reddy, Sumitra; Reddy, Ramada
abstract

Collaboration is an important aspect in almost all elds of human life, and today the need for supporting collaboration is increased by the fact that we are always connected by means of different kinds of devices. In particular in the enterprise world, this need has emerged and satisfying it can lead to relevant bene ts for companies. In the last years, enabling technologies have evolved to meet new and challenging requirements. The aim of this special issue is to provide a selection of the state of the art, emerging trends, new technologies and best practices in the eld of technologies that enable collaboration. The idea was born at the 2014 IEEE WETICE Conference on Enabling Technology: Infrastructure for Collaborative Enterprises, but the call was open to any submission.


2014 - Message from general co-chairs [Abstract in Atti di Convegno]
Bergenti, F.; Cabri, G.
abstract


2014 - Modeling Self-Expression by Holons [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo; Zambonelli, Franco
abstract

In the field of autonomic computing the current trend is to develop cooperating computational entities enabled with enhanced self-* properties. The term self-* indicates the possibility of an element inside a set (an ensemble) composed of many potentially heterogeneous components to self organize, heal (repair), optimize and configure without little or no human interaction. The goal is to increase the level of adaptivity for both the ensemble and the single element, especially in scenarios in which stopping a system for further tuning is unfeasible. In this paper, we propose an approach to model and enable the capability of adopting different collaboration patterns in ensembles of autonomic components inserted in open and nondeterministic environments. This model takes inspiration from the holonic organisation of multi agent systems and from a Self-* property, called Self-Expression, which is defined as the property of a distributed system to change its collaboration pattern at run time in order to better adapt its execution of tasks in unknown situations. Ensembles able to deploy Self-Expression, show a higher level of adaptation and the concept of Self-Expression can be easily exploited though a Self-Repeating structure like a hierarchy of holons.


2014 - Self-Expression and Dynamic Attribute-based Ensembles in SCEL [Relazione in Atti di Convegno]
Cabri, Giacomo; Capodieci, Nicola; Luca, Cesari; Rocco De, Nicola; Rosario, Pugliese; Francesco, Tiezzi; Zambonelli, Franco
abstract

In the field of distributed autonomous computing the current trend is to develop cooperating computational entities enabled with enhanced self-* properties. The expression self-* indicates the possibility of an element inside an ensemble, i.e. a set of collaborative autonomic components, to self organize, heal (repair), optimize and configure with little or no human interaction. We focus on a self-* property called Self-Expression, defined as the ability to deploy run-time changes of the coordination pattern of the observed ensemble; the goal of the ensemble is to achieve adaptivity by meeting functional and non-functional requirements when specific tasks have to be completed. The purpose of this paper is to rigorously present the mechanisms involved whenever a change in the coordination pattern is needed, and the interactions that take place. To this aim, we use SCEL (Software Component Ensemble Language), a formal language for describing autonomic components and their interactions, featuring an highly dynamic and flexible way to form ensembles based on components' attributes.


2014 - Towards self-aware and self-composing services [Capitolo/Saggio]
Cabri, G.; Zambonelli, F.
abstract


2014 - 2nd FOCAS workshop on fundamentals of collective adaptive systems [Abstract in Atti di Convegno]
Cabri, G.; Hart, E.
abstract

The FoCAS workshop focuses on identifying and addressing challenges related to the development of collective adaptive systems - systems composed of massive numbers of components in which both invidual elements and the system as whole adapt to changing execution conditions. The 2014 workshop at SASO is the 2nd occurrence of the workshop, following the first successful FOCAS workshop held at the European Conference on ALife (ECAL) in 2013.


2014 - 3rd AWARE workshop on Challenges for Achieving Self-Awareness in Autonomic Systems [Abstract in Atti di Convegno]
Cabri, G.; Hart, E.; Pitt, J.
abstract

The AWARE workshop focuses on identifying and addressing challenges related to the development of self-aware systems, which are capable of autonomous management thanks to different levels of awareness. The edition of 2013 follows two successful editions in the past SASO conferences, 2011 and 2012. © 2013 IEEE.


2013 - A Taxonomy of Architectural Patterns for Self-Adaptive Systems [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Zambonelli, Franco
abstract

Autonomic systems are able to adapt themselves to unpredicted and unexpected situations. Such adaptation capabilities can reside in individual components as well as in ensembles of components. In particular, a variety of different architectural patterns can be conceived to support self-adaptation at the level both of components and of ensembles. In this paper, we propose a classication of such self-adaptation patterns { for both the component level and the system level { by means of a taxonomy organized around the locus in which the feedback loops promoting adaptation reside. We show that the proposed classication covers most self-adaptation patterns, and enables deriving further ones by applying a simple set of composition mechanisms. Three examples of existing patterns of the taxonomy are detailed in the paper to show the applicability of the approach. As discussed in the paper, the advantage of the proposed classication is twofold: it enables identifying the (possibly common) properties of the existing self-adaptation patterns; and, consequently, it can help developers in choosing the most appropriate self-adaptation patterns for the development of autonomic systems.


2013 - Adaptive Computing for Agents and Dynamic Collaborative Environments [Abstract in Atti di Convegno]
Bergenti, F.; Cabri, G.; Blake, M. B.; Wajid, U.
abstract

The "Adaptive Computing (and Agents) for Enhanced Collaboration" (ACEC) track currently enjoys its 11th year. ACEC focuses on the dynamic collaboration that occurs between networked systems as realized by agent-based or adaptive solutions or services. The purpose of this track is to bring together research in the fields of software agents and daptive computing, more broadly, as they relate to the challenges associated with efficient, effective collaboration. This report briefly discusses the content of the papers presented in the track by respective authors and collective knowledge derived from the underlying state-of-the-art.


2013 - An Agent-based Approach for Transportation Scheduling in Developing Countries [Relazione in Atti di Convegno]
Alsina, EMANUEL FEDERICO; Cabri, Giacomo
abstract

Developing countries can take advantage from the adoption of applications that automates the scheduling of public transportation. However, the adopted solution must suit the peculiarities of those countries, in particular the very dynamic situation of the road and of the traffic, and also the specific management of drivers. Moreover the solutions should have an affordable cost for this kind of countries. In this paper we present an approach to transportation scheduling based on software agents, which has been developed for Buenos Aires in Argentina, a city that exhibits several features common to other cities of developing countries. The paper reports also the results of the application of our approach, which show that the scheduled departures are very close to the desired ones, respect different constrains and are produced in a short time.


2013 - An immune network approach for self-adaptive ensembles of autonomic components: a case study in swarm robotics [Relazione in Atti di Convegno]
Capodieci, Nicola; Hart, Emma; Cabri, Giacomo
abstract

We describe an immune inspired approach to achieve self-expression within an ensemble, i.e. enabling an ensemble of autonomic components to dynamically change their coordination pattern during the runtime execution of a given task. Building on previous work using idiotypic networks, we consider robotic swarms in which each robot has a lymph node containing a set of antibodies describing conditions under which different coordination patterns can be applied. Antibodies are shared between robots that come into communication range facilitating collaboration. Tests in simulation in robotic arenas of varying complexity show that the swarm is able to learn suitable patterns and effectively achieve a foraging task, particularly in arenas of high complexity.


2013 - Applying Multi-armed Bandit Strategies to Change of Collaboration Patterns at Runtime [Relazione in Atti di Convegno]
Cabri, Giacomo; Capodieci, Nicola
abstract

Autonomic systems have some interesting properties that enable them to self-manage at runtime. Traditionally, they are Self-configuration, Self-healing, Self-optimization, and Self-protection. Another interesting property is Self-expression, i.e. the capability of reconfiguring the collaboration pattern of a system at runtime and in an autonomous way. This re-factoring of behaviours, roles and interactions takes place whenever the environment in which the set of components is inserted experiences some changes, so that in order to adapt to the ever variable external conditions, the system is still able to maximize its utilities. In the past we have motivated the need for such a pattern change, and have proposed some approaches to enact it in situations in which we can associate to each external condition the fittest coordination pattern. In this paper we propose a strategy to decide the change and to choose the next collaboration pattern in situations in which the system components do not have sufficient knowledge and cognition to reason about the varying external conditions. Our approach is based on the algorithms proposed to solve the multi-armed bandit problem, in which a player must choose which slot machine to pull, given a number of them, in order to maximize the reward.


2013 - Collaboration in Swarm Robotics: a Visual Communication Approach [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo
abstract

Swarm robotics involves a number of simple robots that have a common task and carry it out in a collective way. In this context the collaboration among the different components is a crucial aspect, but not always it can be enacted in a direct way, i.e., by means of direct communication between components. This is because of the simplicity of the robots, but this turns out to increase robustness and flexibility of the swarm systems. In this paper we present a case study in which some robots are in charge of sweeping the perimeter of an area, and propose a distributed algorithm for the task division. We have tested the proposed algorithm in different situations; we report the results and we also compare them to the ones achieved with no collaboration.


2013 - Designing Self-Aware Adaptive Systems: from Autonomic Computing to Cognitive Immune Networks [Relazione in Atti di Convegno]
Capodieci, Nicola; E., Hart; Cabri, Giacomo
abstract

An autonomic system is composed of ensembles of heterogeneous autonomic components in which large sets of components are dynamically added and removed. Nodes within such an ensemble should cooperate to achieve system or human goals, and systems are expected to self-adapt with little or no human-interaction. Designing such systems poses significant challenges. In this paper we propose that the system engineer might gain significant inspiration by looking to the biological immune system, particularly by adopting a perspective on the immune system proposed by Cohen known as the Cognitive Immune Network. The goal of this paper is to show how the current literature in autonomic computing could be positively enriched by considering alternative design processes based on cognitive immune networks. After sketching out the mapping in commonalities between the Cognitive Immune Network and the autonomic computing reference model, we demonstrate how these considerations regarding the design process can be exploited with an engineered autonomic system by describing experiments with a simple robotic swarm scenario.


2013 - Is self-expression useful? Evaluation by a case study [Relazione in Atti di Convegno]
Puviani, Mariachiara; C., Pinciroli; Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

In the context of adaptive component-based systems, self-expression is the capability of changing the adaptation pattern when some changes occur in the system itself or in its environment. Even if functional requirements can be met without changing the adaptation pattern, the achievement of non-functional requirements, such as performance, can benefit from a change of adaptation pattern. The aim of this paper is to show, by means of a case study in swarm robotics, that a change of adaptation pattern can affect the performance of a system. In our case study, the robots must collect food items (foraging); we will show that while in an open arena the Reactive Stigmergy Pattern performs better, the Centralised AM Pattern better suits the presence of obstacles. Since the situation of the environment can be unknown in advance, or it can change at runtime, we claim that the change of adaptation pattern can be useful in adaptive componentbased systems.


2013 - Managing Deregulated Energy Markets: an Adaptive and Autonomous Multi-Agent System Application [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo
abstract

Given the complexity of modelling actors and interactions of the deregulated electric energy market, the Multi-Agent System approach turns out to be suitable for both simulation and application of critical aspects in the Smart Grid. In particular, for balancing demand and offer and for handling negotiation among peers: now, even a domestic environment that features photovoltaic and/or wind turbines modules can decide to enter the deregulated market as a small-scale seller, thus making the requirement of having such an architecture to be autonomous by deploying Self-* properties such as Self-Organization, Self- Repairing, Self-Adaptation. To be more specific about the presented case study, we propose a model in which small-scale seller agents dynamically and autonomously decide either to address the market as lone operators or by aggregating into Virtual Power Plants, from time to time in order to adapt to different situations. This iterated decisional process depends on highly variable market related factors, thus our goal is to design a net of agents able to autonomously react to this dynamic environment.


2013 - Preface to the special section on agent-oriented design methods and programming techniques for distributed computing in dynamic and complex environments [Abstract in Rivista]
Cabri, G.; Ganzha, M.
abstract


2013 - Runtime Change of Collaboration Patterns in Autonomic Systems: Motivations and Perspectives [Relazione in Atti di Convegno]
Cabri, Giacomo; Capodieci, Nicola
abstract

Today’s distributed systems are more and more complex, so they are required to be autonomic, i.e., to exhibit some self-* properties in order to manage themselves. Autonomic systems are usually composed of different components, which collaborate to achieve a global goal or to provide a high-level service. The collaboration pattern is usually defined statically, but the aim of this paper is to show that there are motivations to enable composed systems to change their collaboration pattern at runtime in an autonomous way, starting from some case studies. This capability of autonomic systems is called self-expression, meaning that a system can express itself despite unexpected situations. Moreover, we propose three perspective solutions that aim at enabling the change at runtime: role-based, descriptionbased, and Artificial Immune Systems (AIS)-inspired.


2012 - A Context-aware Agent-based Approach for Deregulated Energy Market [Relazione in Atti di Convegno]
Capodieci, Nicola; Alsina, Emanuel Federico; Cabri, Giacomo
abstract

A deregulated energy market is a typical scenario in which software agents are used for simulation and/or application purposes. Agents act on behalf of end users, thus implying the necessity of being aware of multiple aspects connected to the distribution of electricity. These aspects refer to outside world variables like weather, stock market trends, location of the users etc. therefore an architecture highly context aware is needed. We propose a web service integration in which agents contracting energy will automatically retrieve data to be used in adaptive and collaborative aspects, an explicative example, misrepresented by the retrieval of weather forecasting, that provides input on ongoing demand and data for the predicted availability(in case of photovoltaic or wind powered environments). The challenge lies in how to correctly use data coming from different sources, since these information are crucial for user profiling and balancing in the short-term contracts in the Smart Grid.


2012 - A method fragments approach to methodologies for engineering self-organising systems [Articolo su rivista]
Puviani, Mariachiara; G., Di Marzo Serugendo; R., Frei; Cabri, Giacomo
abstract

This article summarizes five relevant methods for developing self-organizing multiagent systems. It identifies their most relevant aspects and provides a description of each one under the form of method fragments expressed using SPEM (Software and System Process Engineering Metamodel). The use of a "metamodel" to describe fragments facilitates the comparison of the methods and their respective fragments. These fragments can be combined and be part of a more general ad hoc methodology, created according to the needs of the designer. Self-organizing traffic lights controllers and self-organizing displays are chosen as case studies to illustrate the methods and to underline which fragments are important for self-organizing systems. Finally, we illustrate how to augment PASSI2, an agent-based methodology which does not consider self-organization aspects, with some of the identified fragments for self-organization.


2012 - A Tripartite Analytic Framework for Characterising Awareness and Self-Awareness in Autonomic Systems Research [Relazione in Atti di Convegno]
Julia, Schaumeier; Jeremy, Pitt; Cabri, Giacomo
abstract

Autonomic systems exhibiting self-* propertiesare composed of inter-connected computational elements withincreasingly sophisticated instrumentation for perception of theenvironment in which they are embedded. In realising theseself-* properties, satisfying functional requirements, or meetingperformance metrics, these components need to have, and areoften said to display, some form of ‘awareness’ and/or ‘selfawareness’.Rather than giving a specific definition of theseterms, in this paper we propose instead a tripartite analyticframework to characterise and categorise forms of awarenessand self-awareness in autonomic systems research. The threeaspects are the level of ‘awareness’ being addressed, the fieldof computer science in which the system has been developed,and the research themes being addressed. By applying theanalytic framework to the articles in the online AwarenessMagazine, and the collected opinions from the AwarenessResearch Agenda, we aim to promote knowledge transfer andscientific dialogue across research communities and disciplines,and promote a common agenda for awareness research.


2012 - Adaptive computing and agent approaches for enhanced collaboration [Abstract in Atti di Convegno]
Bergenti, F.; Cabri, G.; Blake, M. B.; Wajid, U.
abstract

In the 10th edition, the former "Agent-based Computing for Enterprise Collaboration (ACEC)" track has enhanced its offering at WETICE 2012 into the new title "Adaptive Computing (and Agents) for Enhanced Collaboration". This year, ACEC continues its focus on the areas of agent-based services and agent-based solutions for dynamic collaborations, but extends also to adaptive, nonagent based domains or collaboration beyond enterprise settings. The purpose of this track is to bring together research in the fields of software agents and adaptive computing, more broadly, as they relate to the challenges associated efficient, effective collaboration. This report briefly discusses the content of the papers presented in the track by respective authors. © 2012 IEEE.


2012 - Adaptive Game-based Agent Negotiation in Deregulated Energy Markets [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo; G. A., Pagani; M., Aiello
abstract

In the emerging deregulated energy paradigm enabled by the Smart Grid, energy provisioning will change drastically. Energy contracts will be negotiated between a potential multitude of parties at high frequency (e.g., several times per day) based on local needs and micro-generation production facilities. In this context, this paper presents an agent-based approach to manage negotiation among the different parties.The goal of the presented work is to propose adaptive negotiation strategies for trading energy in a deregulated market. In particular, we provide strategies derived from game theory, in order to optimize energy production and supply costs by means of negotiation and adaptation. The novelty lies in the adaptation of the class of minority and stochastic games to the energy trading problem in order to model the strategy of the various parties involved. The paper presents also simulation results of a scenario with a large number of energy buyers, a small set of prosumers (energy consumers and producers using renewable micro-generation facilities) and a few large-scale traditional electricity suppliers.


2012 - Adaptive Patterns for Intelligent Distributed Systems: a Swarm robotics Case Study [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

In order to propose some evaluation of adaptive architectural patterns for intelligent distributed systems, in this paper we present a case study where a swarm of robots is required to coordinate and adapt to perform a task. We will present the results of several simulations and propose some considerations that help further research about adaptive patterns in intelligent distributed systems.


2012 - Agent modeling of a pervasive application to enable deregulated energy markets [Relazione in Atti di Convegno]
Capodieci, N.; Cabri, G.; Pagani, G. A.; Aiello, M.
abstract

In a not so far future, private houses will be provided with devices that can produce renewable energy, and this will give the owners the chance of selling the unused energy to neighbors. The fact that this selling will be based on peer to peer negotiation (i.e., between single producers and single consumers), will make this market deregulated. This situation could lead to advantages for both producers, who will have an extra income for energy they would not use, and consumers, who can buy cheaper energy than the big companies' one. However, this scenario is very complex and dynamic, and without an appropriate management can lead to odd situations. This paper presents the agent-based modeling of an application to manage the negotiation among different parties producing and consuming energy. We will show that the feature of autonomy of agents well suit the requirements of the proposed scenario. Moreover, we will exploit game theory to define a strategy that try to optimize energy production and supply costs by means of negotiation and learning. By means of simulation of the different parties we will show the effectiveness of the proposed approach; the results show that applying our approach enables to reduce the price of the energy and leads to an equilibrium between expected and real prices.


2012 - Agent Roles for Context-Aware P2P Systems [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Roles represent a useful concept that has been successfully exploited to design and manage agent interactions in a context-aware fashion. For instance, they can be made available by a local context with specific features, or they can be exploited to enforce local policies while keeping general mechanisms.Moreover, one of the most important recognized advantage is that they allow a separation of concerns between algorithmic and interaction issues, simplifying the job of the developers of systems.In this paper we propose to apply roles in the field of P2P systems, explaining which the related advantages and the issues to be faced are. We will also present an infrastructure, RoleX, which was conceived for agents' roles but can be adapted to P2P scenarios to accomplish this task.


2012 - Agent Societies to Design and Implement Complex Systems [Capitolo/Saggio]
Cabri, Giacomo; Puviani, Mariachiara; C., Barbieri
abstract

Software agents are usually exploited to model and implement complex and un- predictable systems [17], paying attention to the interactions between component agents, in particular in open and heterogeneous systems. Agents may face situa- tions that was not completely predicted by their developers, which must rely on their adaptability derived from their features of proactivity, reactivity and sociality.


2012 - An Agent-based Application to Enable Deregulated Energy Markets [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo; G. A., Pagani; M., Aiello
abstract

Private houses are more and more enabled with devices that can produce renewable energy, and the not so remote chance of selling the surplus energy makes them new players in the energy market.This market is likely to become deregulated since each energy home-producer can negotiate the energy price with consumers, typically by means of an auction; on the other hand, consumers can always rely on energy companies, even if their energy is more expensive.This scenario could lead to advantages for users, but it is certainly complex and dynamic, and needs an appropriate management.To this purpose, in this paper we propose an agent-based application to deal with the negotiation among different parties producing and consuming energy.Software agents, thanks to their autonomy in taking decisions, well suit the requirements of the proposed scenario.For our application, we adopt a strategy derived from game theory, in order to optimize energy production and supply costs by means of negotiation and learning.The effectiveness of our approach is proved by simulation results of a situation involving energy buyers, energy producers using renewable micro-generation facilities and large-scale traditional electricity companies.


2012 - AWARENESS 2012 - 2nd Awareness Workshop on Challenges for Achieving Self-Awareness in Autonomic Systems [Abstract in Atti di Convegno]
Hart, E.; Cabri, G.; Schaumeier, J.
abstract


2012 - Conceptual Map and Classification in Ensembles of Autonomic Components: from Awareness to Organization [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo
abstract

Designing cooperative autonomic components andstudying their possible interactions when operating in ensemblein open and non-deterministic environments, poses severalchallenges for the developer. While older studies focus on theseveral possibilities for optimized collaboration protocols andcommunication possibilities in distributed architectures, themost recent trend is more focussing on the self-expression andself-organizing features that aware components may deployduring run-time, thus exploring new frontiers in designingadaptive collaboration patterns. In this paper we propose aconceptual map for autonomic components (taking into accountthe distributed robotics scenario) able to classify old andnew approaches in collaboration, highlighting similarities andcommonalities between patterns and by focussing on the laststudies about awareness of autonomous components. Being apreliminary study, the further goal is represented by findinga design approach for dynamically changing collaborationpatterns during a run-time execution of tasks.


2012 - Coordination And Task Division In Robot Ensembles: Perimeter Sweep Case Study [Relazione in Atti di Convegno]
Capodieci, Nicola; Cabri, Giacomo
abstract

Coordination and communication in scenarios where a multitude of robots are presents represent very critical aspects when designing robot ensembles. This paper will show how is it possible to coordinate and sub-divide tasks in a homogeneous ensemble of robots, exploiting a wall-following case study in which every bot has to be aware of the presence of other peers, by adapting its choices accordingly and cooperate to improve the overall performances. The global task has to be accomplished with extremely limited communication capabilities and by distributed coordination. Software simulations that model existing robots were performed for helping us to show the efficiency of the proposed approach.


2012 - Evaluation of Structured Collaborative Tagging for Web Service Matchmaking [Capitolo/Saggio]
Gawinecki, Maciej; Cabri, Giacomo; Marcin, Paprzycki; Maria, Ganzha
abstract

Turning Web services into Semantic Web Services (SWS) can be prohibitively expensive for large repositories. In such cases collecting community descriptions in forms of structured tags can be a more affordable approach to describe Web services. However, little is understood about how tagging impacts performance of retrieval. There are neither real structured tagging systems for Web services, nor real corpora of structured tags. To start addressing these issues, in our approach, we motivated taggers to tag services in a partially controlled environment. Specifically, taggers were given application requirements and asked to find and tag services that match the requirements. Tags collected in this way were used for Web service matchmaking and evaluated within the framework of the Cross-Evaluation Track of the Third Semantic Service Selection 2009 contest. As part of the lessons learned, we explain relations between description schema (SWS, tags, flat document) and matchmaking heuristics, and performance of retrieval in different search scenarios. We also analyze reliability of tagging system performance as related to taggers/searchers autonomy. Finally, we identify threats to results credibility stemming from partial control of the tags collection process.


2012 - Mobile Agent Coordination [Capitolo/Saggio]
Cabri, Giacomo; Quitadamo, Raffaele
abstract

In this chapter, we will discuss mobile agent coordination, starting with some general considerations about coordination and mobility.By means of a case study, we compare some coordination models and point out that fully uncoupled models better suit dynamic scenarios such as those involving mobility. Therefore, we then focus mainly on uncoupled coordination models (Linda-like models), surveying some proposed coordination systems in literature and evaluating them with regard to some chosen classification criteria. Finally, the chapter proposes an innovative approach to mobile agent coordination, which exploits the powerful concept of roles in multi-agent systems.


2012 - Self-healing in ensembles’ adaptive collaborative patterns [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; R., Frei
abstract

Many of today's complex applications are composed of ensembles of service components which interact and collaborate with each other to satisfy user requests or to build higher-level services. In any case, we can recognize different collaboration patterns, which we have classified in a preliminary taxonomy considering autonomic features.In this paper we analyze the collaboration patterns from the self-healing point of view, in order to point out the support that each pattern can provide to self-healing features of the whole ensemble, and not only of the single component.Moreover, we will provide a concrete example by means of a case study based on autonomous robots that search for food in an unknown environment to fill a common nest.


2011 - A multi-agent approach for territorial emergency management [Relazione in Atti di Convegno]
Domnori, E.; Cabri, G.; Leonardi, L.
abstract

The management of territorial emergencies and disasters has become a real issue in the healthcare system. The recent events such as earthquakes and inundations have brought into attention the need for an improvement of rescue operations in order to limit the lost of human lives. Such scenarios require a distributed, context-aware, reactive and autonomous support. In this paper we present an architectural approach for coordination based on the multi-agent technology. In the following, we will show how agents behaviour well fits to these requirements and how they can be efficiently applied to these problems.


2011 - Agent-based computing for enterprise collaboration: Agents and services interoperability [Abstract in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.; Wajid, U.
abstract

The 9th edition of the "Agent-based Computing for Enterprise Collaboration" track at WETICE 2011 focuses on the areas of agent-based services and agent-based solutions for dynamic collaborations. The purpose of this track is to bring together researches in the fields of software agents as they relate to the context of enterprise collaboration. This report briefly discusses the content of the papers presented in the track by respective authors. © 2011 IEEE.


2011 - Comparing Service-Oriented Computing and Agent-Oriented Programming towards Integration [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Puviani, Mariachiara; Quitadamo, Raffaele
abstract

Service Oriented Computing (SOC) and Agent Oriented Programming (AOP) are two promising paradigms exploitedin the development of distributed systems. In fact, even if starting from different conceptual abstractions, both paradigms tryto face unpredictability and complexity in wide and open distributed scenarios. In this context, they exhibit both strengths andweaknesses. The aim of this paper is to propose a comparison between the two paradigms, performed with regard to some issuespeculiar of distributed systems that the two paradigms address: space decomposition, interactions among distributed components,reusability/customization, interoperability/heterogeneity and security. Of course the purpose of this paper is not to define the“best one”, rather the paper aims at providing developers with critical knowledge about the advantages and the limitations ofthe two paradigms. Finally, the need for a smart integration of the two paradigms is pointed out, which will lead to exploit theadvantages of both in a joint way. We briefly survey some proposals in this direction and report some considerations about them.


2011 - Coordination Issues in an Agent-Based Approach for Territorial Emergence Management [Relazione in Atti di Convegno]
Domnori, Elton; Cabri, Giacomo; Leonardi, Letizia
abstract

This paper presents a new architectural approachfor managing the health-care emergences and large scaledisasters using agent-based applications. Such scenarios requirea support that must be distributed, context-aware, reactive andautonomous. In the following we will show how agent’s behaviourbest fits to these requirements and how the technologycan be applied efficiently to problems where the main challengeis the coordination and collaboration between components. Wepropose a FIPA compliant Multi-Agent System based on theBDI and PIM technology.


2011 - Designing and implementing intelligent agents for e-health [Relazione in Atti di Convegno]
Domnori, Elton; Cabri, Giacomo; Leonardi, Letizia
abstract

Recent large-scale disasters and territorial emergences,such as the Japan seaquake and Australian inundation,has bring to the attention to the efficiency of the rescueoperation. Such scenarios are unpredictable and require aprompt and coordinated reaction from the authorities. Thispaper presents an architectural approach for coordinationand cooperation based on the Multi-Agent technology. Inthe following, we will show how agents are able to offera distributed, context-aware, reactive and autonomous support.We propose a multi-agent framework which enables theimplementation Multi-Agent Systems (MAS) for emergencyscenarios management.


2011 - Implementing Agent Interoperability Between Language-Heterogeneous Platforms [Relazione in Atti di Convegno]
Cabri, Giacomo; Domnori, Elton; D., Orlandini
abstract

One of the most important feature of a MAS (Multi-AgentSystem) is the cooperation and the coordination amongagents placed in distributed environments. Due to the highheterogeneity of agents and platforms, interoperability hasbecome a key issue for the use of MASs in academic and industrialfields. Several approaches to interoperability proposedso far are based on the JAVA technology exploitingthe homogeneity of the programming language and technology.In this paper we introduce a new middleware thatenables the interoperability among agents execution in differentplatforms. Our approach is FIPA-IEEE compliantand language independent.


2011 - Managing territorial emergencies with Ubimedic2 [Relazione in Atti di Convegno]
Domnori, Elton; Cabri, Giacomo; Leonardi, Letizia
abstract

We propose Ubimedic2, an agent based frame-work that enables the implementation of Multi-Agent Systemsfor emergency management and territorial disasters. In thisdemo we present a simple simulation to better expose theUbimedic2 functionalities.


2011 - Multi-Agent approach for Disaster Management [Relazione in Atti di Convegno]
Domnori, Elton; Cabri, Giacomo; Leonardi, Letizia
abstract

The emergency situations deriving from naturaldisasters or large scale accidents represent one of the mostcritical activities in the health care system.We are all concernedabout the necessity of a coordinated reaction and organizationwhen there is a large number of people involved and time isa very precious aspect. This paper introduces a multi-agentsystem for the management of the territorial emergencies inlarge scale disasters and shows how the agent technology canmeet successfully the related requirements. In this paper wepropose a multi-agent framework, called Ubimedic2, able tocoordinate autonomously the operative units during the rescueoperation.


2011 - On Self-adaptation, Self-expression, and Self-awareness in Autonomic Service Component Ensembles [Relazione in Atti di Convegno]
Zambonelli, Franco; Bicocchi, Nicola; Cabri, Giacomo; Leonardi, Letizia; Puviani, Mariachiara
abstract

Software systems operating in open-ended andunpredictable environments have to become autonomic, i.e.,capable of dynamically adapting their behavior in response tochanging situations. To this end, key research issues include:(i) framing the schemes that can facilitate components (orensembles of) to exhibit self-adaptive behaviors; (ii) identifyingmechanisms to enable components or ensembles to self-expressthe most suitable adaptation scheme; and (iii) acquiring theproper degree of self-awareness to enable putting in action selfadaptation and self-expression schemes. In this position paper, with the help of a representative case study, we frame anddiscuss the above issues, survey the state of the art in the area,and sketch the main research challenges that will be faced inthe ASCENS project towards the definition of a fully-fledgedframework for autonomic services.


2011 - Principles and practice of programming in java 2008 special issue [Abstract in Rivista]
Horspool, R. N.; Gitzel, R.; Cabri, G.; Aleksy, M.
abstract


2011 - Smart Meter aware Domestic Energy Trading Agents [Relazione in Atti di Convegno]
Capodieci, Nicola; G. A., Pagani; Cabri, Giacomo; M., Aiello
abstract

The domestic energy market is changing with the increasing availability of energy micro-generating facilities. On thelong run, households will have the possibility to trade energyfor purchase and sale from a number of different actors. Wemodel such a futuristic scenario using software agents. Weillustrate an implementation including the interfacing with aphysical Smart Meter and provide initial simulation results.Given the high autonomy of the actors in the domestic market and the complex set of behaviors, the agent approachproves to be effective for both modeling and simulating purposes.


2011 - Structured Collaborative Tagging: Is It Practical for Web Service Discovery? [Relazione in Atti di Convegno]
Gawinecki, Maciej; Cabri, Giacomo; M., Paprzycki; M., Ganzha
abstract

One of the key requirements for the success of Service Oriented Architecture is discoverability of Web services. However, public services suffer from the lack of metadata. Current methods to provide such metadata are impractical for the volume of services published on the Web: they are too expensive to be implemented by a service broker, and too difficult to be used for retrieval. We introduce structured collaborative tagging to address these issues. Here, user tags not only aspects relevant for her but also suggested ones (input, output and behavior). Cost, performance and usability of the proposed technique obtained during the Semantic Service Selection 2009 contest are reported. Obtained results suggests that there is no “free lunch.” While the method is user-friendly and supports effective retrieval, it still involves cost of attracting the community, and is practical only as complementary one. The analysis shows this is due to user’s autonomy as to what, when and how to tag.


2011 - Towards a Taxonomy of Adaptive Agent-based Collaboration Patterns for Autonomic Service Ensembles [Relazione in Atti di Convegno]
Cabri, Giacomo; Puviani, Mariachiara; Zambonelli, Franco
abstract

Services are increasingly becoming the building block of today's distributedsystems. However, to support the development of robust complex applications made up ofensembles of cooperating service components and to promote autonomic features(i.e., self-management and self-adaptation), adaptive collaboration patterns among components have to be enforced. In this paper, to analyze adaptive collaboration patterns in agent-based terms,we would like to introduce a taxonomy of adaptive agent-based collaborationpatterns, for their exploitation in the area of autonomic service ensembles. The proposed taxonomy, as preliminary as it can be, has two main advantages: (i) it enables the reuse of existing experience from the agents' world in the area of autonomic service systems, and (ii) it can provide useful suggestions to designer for the choice of the most suitable patterns.


2011 - Ubimedic2: An Agent-Based Approach in Territorial Emergence Management [Relazione in Atti di Convegno]
Domnori, Elton; Cabri, Giacomo; Leonardi, Letizia
abstract

Healthcare emergences and large scale disastersare two of the most critic scenarios of healthcare system.Such scenarios require a support that must be distributed,context-aware, reactive and autonomous. This paper presentsan architectural approach for coordination based on the multiagenttechnology. In the following, we will show how agentsbehaviour best fits to these requirements and how can beefficiently applied to these problems. In this paper we propose aframework, called Ubimedic2, that enables the implementationof Multi-Agent Systems for emergency management. Theframework is FIPA compliant and based on the BDI technology.


2010 - A Roadmap towards Sustainable Self-aware Service Systems [Relazione in Atti di Convegno]
S., Dustdar; C., Dorn; F., Li; L., Baresi; Cabri, Giacomo; C., Pautasso; Zambonelli, Franco
abstract

Self-awareness and self-adaptation have become primary concerns in large-scale systems as they have become too complex to be managed by human administrators alone, but rather require a new blend of coordination mechanisms between people and software services. This paper presents a roadmap to effective and efficient system adaptation through coupling self- awareness of global-level goals with sustainability constraints. Sustainability of large-scale systems challenges self-adaptation approaches by its intrinsic characters of global and long-lasting effects. We introduce a scientific architecture comprising five levels of awareness: (i) event-awareness, (ii) situation-awareness, (iii) adaptability awareness, (iv) goal-awareness, and (v) future-awareness. Within each level we introduce applicable principles and subsequently outline necessary models, algorithms, and protocols. The approach puts special focus on the interdependencies of human and service elements.


2010 - Building an Agent Methodology from Fragments: the MEnSA experience [Relazione in Atti di Convegno]
Puviani, Mariachiara; M., Cossentino; Cabri, Giacomo; A., Molesini
abstract

To fill the existing gap between agent-oriented methodologies and multi-agent system infrastructures, we studied how to build a new methodology that takes into consideration the infrastructures' features. Our aim was, starting from specific requirements, to reuse fragments of existing methodologies by composing them, because they are documented, known and tested. To this purpose we exploited the Situational Method Engineering (SME) approach, and used the OMG standard Software Process Engineering Metamodel (SPEM) as a tool for describing the processes. In this paper we present the motivations of our approach, the work we have done to compose the new methodology, briefly the resulting methodology, and some lessons learned.


2010 - Conference organization [Abstract in Atti di Convegno]
Cossentino, M.; Hilaire, V.; Moselini, A.; Villaplana, E. A.; Bernon, C.; Botti, V.; Cabri, G.; Deloach, S.; Fortino, G.; Fuentes-Fernandez, R.; Galland, S.; Garro, A.; Gaud, N.; Giorgini, P.; Gomez, A.; Moreno, J. C. G.; Guessoum, Z.; Huget, M. -P.; Levy, R.; Pierre, G. M.; Migeon, F.; Morreale, V.; Omicini, A.; Ossowski, S.; Pavon, J.; Pena, J.; Perini, A.; Ralyte, J.; Sabatucc, W. R. L.; Seidita, V.; Sienna, A.; Storniolo, P.; Sudeikat, J.; Susi, A.; Taveter, K.; Tolvanen, J. -P.; Van De Weerd, I.; Puviani, M.
abstract


2010 - Role-Based Software Agent Interaction Models: A Survey [Articolo su rivista]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia; Zambonelli, Franco
abstract

The role concept represents a useful approach that has been exploited in different agent-based systems, in particular applied to interactions between agents. There are some requirements that are important for the development of agent-based applications using roles, for instance the support for the analysis, the design and the implementation phases. We have considered and compared different role-based proposals in the literature, and this paper presents a survey of the most spread ones. Weexplain each proposal and point out if and how it meets the identified requirements. Far from deciding the best proposal, our aim is to present the advantages and drawbacks of several proposals to designers and developers, so that they can make the best choice with regard to their needs.


2010 - Trade-off between complexity of structured tagging and effectiveness of Web service retrieval [Relazione in Atti di Convegno]
Gawinecki, Maciej; Cabri, Giacomo; M., Paprzycki; M., Ganzha
abstract

Searching for services often starts from the exploration ofthe service space. Community generated tags can support exploration of this space. Researchers attracted by the community-available “free manpower” proposed more complex tagging-based annotation models.Those models tag specific parts of the Web service definition: single operations, as well as inputs and outputs of those operations. However, there is no evidence whether effort spent on annotating complex structures is justified by the performance improvement of retrieval based on those annotations. In this paper we apply similarity-based search to find a trade-off between retrieval effectiveness of existing annotation modelsand the annotation effort.


2010 - WSCOLAB: Structured collaborative tagging for Web service matchmaking [Relazione in Atti di Convegno]
Gawinecki, Maciej; Cabri, Giacomo; M., Paprzycki; M., Ganzha
abstract

A key driver for Service Oriented Architecture implementations is the hope to save development time and costs through a higher degree of reuse of readily deployed Web services. To achieve this goal, it is necessary to make services discoverable. Current approaches use authoritatively defined taxonomies to categorize services, which simply does not work for the flood of services being published on the Web in uncoordinated manner. Collaborative tagging claims to address this problem, because it is the process by which many users add metadata in the form of keywords to shared content (Golder and Huberman, 2006). However, it suffers from the lack of structure to describe Web service interfaces. We introduce structured collaborative tagging classification schema that can provide Web service descriptions for both categorization and interface matchmaking approaches. We report an experiment where 27 taggers have used our classification schema to annotate 50 Web services from Jena Geography Dataset. We also propose a single-request Web service matchmaking technique based on the proposed classification schema. The performance of the proposed technique has been confirmed by the first position awarded in the Cross-Evaluation track of the Semantic Service Selection 2009 contest against other matchmaking approaches. It shows that our classification schema is simple and powerful enough to be used by both tagging and querying end-users.


2009 - Agent Societies to Design and Implement Complex Systems [Capitolo/Saggio]
Cabri, Giacomo; Puviani, Mariachiara; Barbieri, C.
abstract

Software agents are usually exploited to model and implement complex and unpredictable systems, paying attention to the interactions between component agents, in particular in open and heterogeneous systems. Agents may face situations that was not completely predicted by their developers, which must rely on their adaptability derived from their features of proactivity, reactivity and sociality. But this could not be enough: social norms must be enforced to rule the agent interactions in open environments. Moreover, social norms enable to enact local policies as well, i.e. policies defined by the environment where agents live. To this purpose, the abstraction of agent societies has been proposed and applied to complex systems.In this paper we address the development of agent societies, in particular considering methodologies and infrastructures. We will present the existing methodologies and point out the degree of the available specific support for societies. Moreover, we will explain that appropriate support must be provided also by underlying infrastructures. Further, we will show that there is a gap between methodologies and infrastructures that leads to fragmented solutions; we will sketch some proposals to bridge such a gap by means of meta-models.


2009 - An Agent-based Architecture for Service Management [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Services and agents represent two paradigms that are currentlyexploited to build complex applications. Each of themhas peculiar features that can grant different advantages,and their joint exploitation can make them compensate eachother’s lacks. However, a complete integration seems to benot feasible to achieve.In this paper, we propose an agent-based architecture tomanage different services; in particular, we focus on servicecomposition. This architecture relies on three different kindsof agents, whose cooperation aims at composing servicesto fulfill users’ requests. A concrete example in the field ofe-health is reported to give concreteness to our proposal.


2009 - Experiences in Applying Situational Method Engineering in AOSE [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

In the software engineering field different methodologies have been provided to support developers in their work. However, the development of systems proposes complex and different scenarios nowadays, and existing methodologies can hardly meet the requirements of all existing scenarios. This problem can be solved applying the Situational Method Engineering (SME) approach, which enables to build appropriate methodologies by composing fragments of existing ones. This approach has also the valuable advantage of reusing models, solutions and tools of existing and tested methodologies. In this paper, we focus on Agent Oriented Software Engineering (AOSE) and reports three examples of application of the Situational Method Engineering approach. We show that this approach can be applied following different directions, and in particular: entity-driven, metamodel-driven, and characteristic-driven. To concretely show these directions, we present three examples of methodologies for developing agent and self-organizing systems, all constructed composing methodology fragments to meet scenario requirements.


2009 - Methodologies for self-organising systems: a SPEM approach [Relazione in Atti di Convegno]
Puviani, Mariachiara; G., Di Marzo Serugendo; R., Frei; Cabri, Giacomo
abstract

This article summarises five relevant methods for developing self-organising multi-agent systems. It identifies their most promising aspects and provides a meta-model of each under the form of 'SPEM fragments'. These fragments can be combined and be part of a larger ad hoc methodology. Self-organising traffic lights were chosen as an illustrating example for the relevant features of the different methods considered.


2009 - The future of AOSE: exploiting SME for a new conception of methodologies [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

In the last years, the software engineering eld has provided developers with dierent methodologies to support their work. Nevertheless, existing methodologies can hardly meet the requirements of all existing scenarios, which are more and more complex and highly dierentiated. This problem can be faced by applying the Situational Method Engineering (SME) approach, which enables to build appropriate methodologies by composing \fragments" of existing ones. We envision this approach as the future of software engineering in general, and in particular if applied in Agent Oriented Software Engineering (AOSE). This approach has also the valuable advantage of reusing models, solutions, experiences and tools of existing and tested methodologies. In this paper we report three examples of application of the Situational Method Engineering approach in AOSE. We show that this approach can be applied following dierent directions, and in particular: entity-driven, metamodel-driven, and characteristic-driven. To concretely show these directions, we present three examples of methodologies for developing agent systems (one regarding self-organising systems), all constructed composing methodology fragments to meet the scenario requirements.


2009 - The MAR&A Methodology to Develop Agent Systems [Relazione in Atti di Convegno]
Cabri, Giacomo; Puviani, Mariachiara; Leonardi, Letizia
abstract

In this paper we present a new agent methodology called MAR&A. Its aim is to better connect agent methodologiesand agent infrastructures, since in the agent development we can find a “gap” between them. Ourapproach was not to build a new agent methodology from scratch, but to reuse “fragments” of existing methodologies.Besides presenting the methodology, we propose its use in a case study, to help readers understandthe exploitation of this methodology and to sketch the connections with agent infrastructures.


2008 - A Role-Based Agent-Oriented Approach to Medical Device Integration [Capitolo/Saggio]
F., DE MOLA; Cabri, Giacomo
abstract

Monitoring heterogeneous medical devices is a key issue for efficient medical information management in high-quality health care delivery. Collecting vital signs and integrating data from various sources is very important in order to make precise diagnosis and provide effective emergency response. Current commercial rules and the scarce adoption of standard protocols are the first main obstacle to achieve a real integration. We propose a work-in-progress, role-based, agent-oriented solution to overcome this obstacle: proper mobile agents are in charge of acquiring data from each kind of medical device (e.g., electrocardiograms, blood pressure, and oxygen saturation gauges), providing a uniform interface toward the business logic; in its turn, each medical device is provided by a vendor-specific role, embodying the capability to interface with the device by means of its own protocol. Thus, each time a new medical device requires the integration in a wider system, a generic mobile agent migrates to the device node; here, it assumes the role of the specific device manufacturer and starts delivering the acquired data hiding the heterogeneity of the device. We will propose such a solution describing the implementation of a demonstrative prototype exploiting the RoleSystem infrastructure, which dynamically makes role capabilities available to the agents.


2008 - Agent Roles: from Methodologies to Infrastructures [Relazione in Atti di Convegno]
Puviani, Mariachiara; Cabri, Giacomo; Leonardi, Letizia
abstract

Role is an important and useful concept to define the collaboration in agent systems, since it allows to abstract from physical agents and to focus on their behaviour. So, the role concept is exploited in agent methodologies and agents infrastructures, but often in different and discontinue ways. The aim of this paper is to map the role concepts proposed in different agent methodologies, and also mapping other concepts related to role. Moreover, we try to extend this mapping also to agent infrastructures, so to help developers choosing the right methodologies and infrastructures. Providing a comparison (and outlining the contrasts) will be important and useful as a starting point to understand and to try to unify foundational agent concepts.


2008 - Agent-based Computing for enterprise collaboration synergies of agents and services [Abstract in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.
abstract

The sixth "Agent-based Computing for Enterprise Collaboration" workshop at WETICE 2008 focused on the areas of: agent-based semantic composition of Web services; agent-oriented software engineering methodologies and tools; and large scale multi-agent systems. The intention of this workshop was to bring together researches in the fields of software agents as they relate to the context of enterprise collaboration. This report briefly discusses the content of the papers presented at the workshop by respective authors. Moreover, the report ends with a summary of the main issues and challenges touched during the concluding discussion session. © 2008 IEEE.


2008 - Building Computational Institutions for Agents with RoleX [Articolo su rivista]
Cabri, Giacomo; Ferrari, L; Rubino, R.
abstract

While the sociality of software agents drives toward the definition of institutions for multi agent systems, their autonomy requires that such institutions be ruled by appropriate norm mechanisms. Computational institutions represent useful abstractions. In this paper we show how computational institutions can be built on top of the RoleX infrastructure, a role-based system with interesting features for our aim. We achieve a twofold goal: on the one hand, we give concreteness to the institution abstractions; on the other hand we demonstrate the flexibility of the RoleX infrastructure.


2008 - Connecting Methodologies and Infrastructures in the Development of Agent Systems [Relazione in Atti di Convegno]
Cabri, Giacomo; Puviani, Mariachiara; Quitadamo, Raffaele
abstract

In the building of agent systems developers canbe supported by both appropriate methodologies and infrastructures, which guide them in the different phases of thedevelopment and provide useful abstractions.Nevertheless, we assist to a situation in which methodologiesand infrastructures are not connected each other: the products ofthe analysis and design phases could not always be exploited inthe implementation phase in a direct way, even if sometimesCASE-tools are present to help in translating methodologies’diagrams in infrastructures’ code. This leads to a “gap” betweenmethodologies and infrastructures that is likely to producefragmented solutions and to make the application maintenancedifficult.In this paper we face this issue, proposing three directions tosolve the problem. We do not want to propose a “new brand”methodology and infrastructure tightly connected, rather, weaim at reusing as much as possible what already exists, notonly in abstract terms, but also in concrete “fragments” ofmethodologies; an appropriate meta-language that describes howa methodologies works would be useful to more easily mapthem onto the infrastructures, or even to “compose” a newmethodologies. A further approach is based on an “intermediate”layer between methodologies and infrastructures, which providesa mapping between the involved entities.


2008 - Eghemon: a distributed, PDA-based Museum Guide [Capitolo/Saggio]
Cabri, Giacomo; A., Fontanesi
abstract

Cultural heritage access can benefit from the adoption of information technology to enhance the tourist experience. In particular, this paper focus on the visits to museums, proposing our experience in developing a system that supports the tourists during the visit to the different rooms containing artworks. The proposed system relies on context-aware mobile devices, which propose multimedia information to the visitors and can dynamically manage the needed information about artworks. A fixed PC-based distributed infrastructure not only provides such information, but also monitors the presence of devices in the rooms, realizing the so-called “context-awareness”. This leads to some advantage from both tourist and museum point of view in terms of flexibility, adaptability and maintenance. In this paper we explain the development of the system and show its use.


2008 - Environment-Supported Roles to Develop Complex Systems [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Interactions represent an important issue to be faced in the development of complex agent systems, and deserve for appropriate support.In this context, roles have been successfully exploited to designand deal with agent interactions. In this paper we explain how the role management can be supported by the environment and which the related advantages are. We will also present an infrastructure, RoleX, that can be exploited to accomplish this task.


2008 - Introducing Join-Computing [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Engineering the interaction between components is a key issue in the development of complex softwaresystems. While technologies for developing components are spread, more difficult is the composition of such componentsin heterogeneous, unpredictable and dynamic scenarios. In this paper we introduce the Join-Computing asa general model in which components are able to “join” in order to exploit each other features. We discuss also thetechnological issues related to the Join-Computing, which can be exploited to concretize the model.


2008 - Methodologies and Infrastructures for Agent Society Simulation: Mapping PASSI and RoleX [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Puviani, Mariachiara
abstract

Today’s development of agent applicationsin general, but in particular related to society simulation, presents two aspects thatare separated by a gap: agent methodologies and agent infrastructures. On the onehand, methodologies support the agent development in its first phases—mainly analysis and design—while infrastructures areclearly focused on the implementation anddeployment. Unfortunately, there are fewconnections between them, leading to fragmented solutions. In this paper, we proposeto bridge this gap by means of meta-models,and we show how the PASSI methodologyand the RoleX infrastructure can be connected by following our approach.


2008 - Methodologies for Designing Agent Societies [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Puviani, Mariachiara
abstract

Today's complex systems can be addressed by exploiting software agents, and in particular sets of interacting agents. Agent societies represent a powerful means to design organization-oriented agent-based systems, in particular those where agents belonging to different users meet and interact. To effectively exploit them, developers must be supported by appropriate methodologies. In this paper we present a survey of agent-based methodologies, evaluated under some criteria that, in our opinion, are useful for developing societies. Our aim is to help developers in understanding the society-related features and choosing the most appropriate to their needs.


2008 - Mobile JikesRVM: a Framework to Support Transparent Java Thread Migration [Articolo su rivista]
Quitadamo, R; Cabri, Giacomo; Leonardi, Letizia
abstract

Today’s complex applications must face the distribution of data and code among different networknodes. Computation in distributed contexts is demanding increasingly powerful languages andexecution environments, able to provide programmers with appropriate abstractions and tools. Java isa wide-spread language that allows developers to build complex software, even distributed, but itcannot handle the migration of computations (i.e. threads), due to intrinsic limitations of manytraditional JVMs. After analyzing the approaches in literature, this paper presents our thread migrationframework (called Mobile JikesRVM), implemented on top of the IBM Jikes Research VirtualMachine (RVM): exploiting some of the innovative techniques in the JikesRVM, we implemented anextension of its scheduler that allows applications to easily capture the state of a running thread andmakes it possible to restore it elsewhere (i.e. on a different hardware architecture or operating system),but still with a version of framework installed). Our thread serialization mechanism provides supportfor both proactive and reactive migration, available also for multi-threaded Java applications, andtools to deal with the problems of resource relocation management. With respect to previousapproaches, we implemented Mobile JikesRVM without recompiling its JVM (Java Virtual Machine)source code, but simply extending JikesRVM functionalities with a full Java package to be importedwhen thread migration is needed.


2008 - Principles and Practice of Programming in Java - Proceedings of the 6th International Conference, PPPJ 2008: Message from the Editors [Abstract in Atti di Convegno]
Veiga, L.; Amaral, V.; Horspool, N.; Cabri, G.
abstract


2008 - Tackling Complexity of Distributed Systems: towards an integration of Service-Oriented Computing and Agent-Oriented Programming [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Quitadamo, Raffaele
abstract

The development of distributed systems poses different issues that developers must carefully take into consideration. Web services and (mobile) agents are two promising paradigms that are increasingly exploited in distributed systems design: they both try, albeit with very different conceptual abstractions, to govern unpredictability and complexity in wide-open distributed scenarios. In this paper, we compare the two approaches with regard to different aspects. Our aim is to provide developers with critical knowledge about the advantages of the two paradigms, stressing also the need for an intelligent integration of the two approaches.


2008 - The LAICA Project: An ad-hoc middleware to support Ambient Intelligence [Articolo su rivista]
Cabri, Giacomo; DE MOLA, Francesco; Ferrari, Luca; Leonardi, Letizia; Quitadamo, Raffaele; Zambonelli, Franco
abstract

Our everyday environments are going to be disseminated of devices and sensors that exhibit some degree of autonomy and that collaborate to support users in their activities. This envisions a not-so-far future called "Ambient Intelligence", i.e., environments that show a certain degree of intelligence. Useful abstractions for Ambient Intelligence are represented by software agents, since they are autonomous and capable of acting on behalf of their owners. In the context of the LAICA project we have exploited the agent paradigm to model devices and sensors, and have developed an ad-hoc middleware to orchestrate all the involved components. This paper discusses the adoption of agents in Ambient Intelligence, and explains the design and implementation of the middleware.


2008 - The PIM: an Innovative Robot Coordination Model based on Java Thread Migration [Relazione in Atti di Convegno]
Quitadamo, Raffaele; D., Ansaloni; N., Suri; K. M., Ford; J., Allen; Cabri, Giacomo
abstract

There is a growing demand to apply multi-robot systems to address many current problems ranging from search and rescue to distributed surveillance to coordination of small satellites in space. Solving these problems effectively requires that teams of robots coordinate effectively. Many of the algorithms for coordination are based on the so-called centralized paradigm, where a central controlling authority is responsible for coordinating the entire team of robots. Unfortunately, centralized approaches often fall short when dealing with rapidly changing situations, unreliability of communications, and failure of robots, especially in hostile environments. Distributed approaches, in an effort to address such issues, tend to introduce complex negotiation or market-based strategies for distributed task execution, sometimes resulting in cumbersome programming models and suboptimal solutions. In this paper, we introduce the readers to the PIM (Process Integrated Mechanism) approach to multi-robot coordination grounded in research on Java thread migration. The core idea of the PIM is to retain the perspective of the single controlling authority but abandon the notion that it must have a fixed location within the system. Instead, the single coordinating thread is rapidly moved among the team members. The PIM leverages on Java thread mobility to preserve the optimality of the centralized approach, while effectively addressing most of its weaknesses (e.g. sluggish response to dynamic conditions, communication difficulties, and a single point of failure). A prototype implementation of such a model is presented on top of the Mobile JikesRVM framework for Java thread migration, along with some preliminary performance results.


2007 - Agent-based computing for enterprise collaboration agent interoperability for workflow and services [Abstract in Atti di Convegno]
Bergenti, F.; Blake, M. B.; Cabri, G.
abstract

The fifth "Agent-based Computing for Enterprise Collaboration" workshop at WETICE 2007 focused on the areas of agent interaction protocols and coordination, agent modeling, and agent-based security and trust. The intention of this workshop was to bring together researches in the fields of workflow and software agents as they relate to the context of enterprise collaboration with services. This report briefly discusses the content of the papers as presented by the participating authors. Moreover, there is a summary of the main issues and challenges introduced during the concluding discussion sessions.


2007 - Agent-based Plug-and-Play Integration of Role-Enabled Medical Devices [Relazione in Atti di Convegno]
Cabri, Giacomo; DE MOLA, Francesco; Leonardi, Letizia
abstract

Information technology is proposing as an important support for managing health care. In particular, software agents represent a useful paradigm to meet the different requirements of e-health applications. In this paper we focus on the issues related to the integration of heterogeneous medical devices, to perform flexible vital sign monitoring by means of easy plug-and-play device connection. We propose an approach that integrates the agent-based UbiMedic framework, which provides facilities for e- health applications, and the RoleSystem infrastructure, which allows the management of interactions by means of agent roles. A prototype has been implemented and an example is exploited to show the advantages of the proposed approach, notably its interoperability.


2007 - Role Suggestion for Agents by Overhearing [Articolo su rivista]
Cabri, Giacomo; Ferrari, L; Leonardi, Letizia; Quitadamo, R.
abstract

Software agents represent an interesting paradigm to develop intelligent and distributed systems, because of their autonomy, proactiveness and reactivity; in addition, their sociality enables the distribution of the application logic in different agents that can interact together and with the host environment. In such scenario interactions must be carefully designed and managed at run-time. The concept of role has been adopted in different (agent) approaches to flexibly manage interactions; roles represent stereotypes of behavior, which are useful not only in the modeling of systems and applications, but also in their design and implementation. Overhearing is a technique that enables the observation of agents’ behavior by “hearing” the exchanged messages. In general, overhearing can be useful to “label” observed agents and manage agent organizations. In this paper we explore the adoption of overhearing in conjunction with agent roles in order to provide more features to agents themselves. In particular the approach presented here can support and help the agent deciding the role to assume and then how to use it, after having observed the agent behavior.


2007 - Service-Oriented Agent Methodologies [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Puviani, Mariachiara
abstract

Agents and services are two concepts that more andmore are integrating and exploiting the advantages ofeach other. Agent-oriented methodologies effectivelysupport the development of agent-based system in thedifferent phases. In this paper, we explore how andhow much the most common agent-orientedmethodologies are also oriented to the development ofservices. Rather than searching for the “best”methodology, we aim at defining some evaluationcriteria and surveying the existing methodologiesconsidering such criteria.


2007 - The Service Ecosystem: Dynamic Self-Aggregation of Pervasive Communication Services [Relazione in Atti di Convegno]
Quitadamo, Raffaele; Zambonelli, Franco; Cabri, Giacomo
abstract

The continuous growth in ubiquitous computing andnetwork connectivity in our everyday environmentscalls for a deep rethinking of traditional communicationservice architectures. In pervasive scenarios, manuallyconfiguring communication service/protocols isbecoming mostly unthinkable, due to the highheterogeneity of devices and services, and to thedecentralized and embedded nature of the involvedentities. The next step is towards the“componentization” of communication services, i.e.services implemented and exposed by softwarecomponents, rather than static protocol/service layers.Stack layering is likewise expected to be replaced by thedynamic and flexible aggregation of such components.Canonical software engineering models for componentcomposition and syntactic service interfaces can hardlytackle the openness and dynamicity of such envisionedpervasive communication services. Therefore, thispaper proposes an innovative ecology-inspiredcomposition model for pervasive services. The key ideais to exploit semantics as an overlay for serviceaggregation rather than a mere additional descriptionof a static service.


2006 - Agent Composition via Role-based Infrastructures [Articolo su rivista]
Cabri, Giacomo
abstract

Software agents represent an interesting paradigm to approach complex and distributed systems. Their sociality enables to build multiagent systems, where different agents interact to pursue their goals. Multiagent systems can involve both cooperative and competitive agents. In both cases, the composition of different agents is an issue that must be faced by developers. In this paper, we propose to build infrastructures based on roles, which are abstractions that enable the composition of different agents in an open scenario. Some concrete examples are provided to support our proposal.


2006 - Agent-based computing for enterprise collaboration - Agent-oriented workflows and services [Abstract in Atti di Convegno]
Cabri, G.
abstract

The fourth "Agent-based Computing for Enterprise Collaboration" workshop at WETICE aimed at bringing together researcher in the field of collaboration supported by software agents. This paper briefly discusses the content of the papers as presented by the participating authors. Moreover, there is a summary of the main issues of the concluding discussions. © 2006 IEEE.


2006 - Agents and Ambient Intelligence: the LAICA Experience [Relazione in Atti di Convegno]
L., Ferrari; Cabri, Giacomo; Zambonelli, Franco
abstract

Ambient intelligence generally refers to scenarios of computationally enriched environments enabling us both to better interact with the physical world and to integrate in the physical world smart functionalities. In this context, multiagent systems are a natural paradigm to develop and deploy dynamic and situation-aware ambient intelligence services.Here we present and discuss our experience in the development of agent-based ambient intelligent services for the city of Reggio Emilia, as performed in the context of the LAICA project.


2006 - Applying security policies through agent roles: A JAAS based approach [Articolo su rivista]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia
abstract

Agents are an emerging technology that grants programmers a new way to exploit distributed resources. Role is a powerful concept that can be used to model agent interactions, both between different agents and between agents and environments. Roles allow agents to dynamically acquire capabilities to perform specific tasks, and therefore enable separation of concerns and code reusability in software development and maintenance. Permissions and security issues related to role´s use should be carefully taken into account, especially when the agent scenario becomes open, including even mobile agents. In a Java agent scenario, we believe that the standard policy file mechanism does not suffice, because a fine grain permission management is required. This paper focuses on how to exploit the Java Authentication and Authorization Service (JAAS) at the role level in order to apply authorizations and local policies to Java agents for controlling the use of their roles.


2006 - Collaboration-Driven Role Suggestion for Agents [Relazione in Atti di Convegno]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia; Quitadamo, Raffaele
abstract

Thanks to their capabilities of being autonomous, proactive and reactive, software agents are today a powerful paradigm to develop complex systems, which typically involve several interacting agents. In those systems, interactions must be carefully designed and must be smartly managed at run-time. A good paradigm to deal with interaction and run-time situations is represented by the concept of role, which has been exploited in different approaches. In this paper we investigate the adoption of overhearing, a paradigm to deal with cooperating agents, in order to improve the adoption of roles. The approach presented here can be adopted to support the agent decisions regarding the role to assume and its use


2006 - Enabling Java Mobile Computing on the IBM Jikes Research Virtual Machine [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Quitadamo, Raffaele
abstract

Today's complex applications must face the distribution of data and code among different network nodes. Java is a wide-spread language that allows developers to build complex software, even distributed, but it cannot handle the migration of computations (i.e. threads), due to intrinsic limitations of many traditional JVMs. After analyzing the approaches in literature, this paper presents our research work on the IBM Jikes Research Virtual Machine: exploiting some of its innovative VM techniques, we implemented an extension of its scheduler that allows applications to easily capture the state of a running thread and makes it possible to restore it elsewhere (i.e. on a different hardware or software architecture, but still with a version of JikesRVM installed). Our thread serialization mechanism provides support for both proactive and reactive migration of single- and multi-threaded Java applications. With respect to previous approaches, we implemented the mobility framework without recompiling a previous JVM source code, but simply extending its functionalities with a full Java package.


2006 - Leveraging strong agent mobility for Aglets with the Mobile JikesRVM framework [Articolo su rivista]
Quitadamo, R.; Leonardi, Letizia; Cabri, Giacomo
abstract

Mobility enables agents to migrate among several hosts, becoming active entities of networks. Java is today one of the most exploited languages to build mobile agent systems, thanks to its object-oriented support, portability and network facilities. Nevertheless, Java does not support strong mobility, i. e. the possibility of relocating running threads along with their execution state; challenges arising from implementing strong mobilityupon the JVM has led to the choice of a weaker form of agent mobility (i. e. weak mobility): although in many agent scenarios (e.g. in simple reactiveagents) weak mobility could be enough, it usually complicates programming parallel and distributed applications, as it forces developers to structure their agent-based programs as sort of FSMs (Finite State Machine). In this paper, we present our Mobile JikesRVM framework to enable strong Java thread migration, based on the IBM Jikes Research Virtual Machine. Moreover, we show how it is possible (and often desirable) to exploit such a framework to enrich a Mobile Agent Platform, like the IBM Aglets, with strong agent mobility and to leverage software agents potential in parallel and distributed computing.


2006 - Special Issue on Collaboration Support Systems [Articolo su rivista]
Cabri, Giacomo; Zhu, Hb; Yang, Jb
abstract

COLLABORATION is one of the major requirements intoday’s life and business. We can find collaborative activitiesat different levels and with different extents. The range ofinvolved fields is very wide, from classrooms to enterprises, andall demand for appropriate support. In particular, informationtechnology can provide such support, but it is not a trivialtask. On one hand, collaborative systems may be complex,distributed, open, and dynamic applications; on the other hand,the human factor plays a very important role with respect toother application fields.Collaboration is, for its own nature, distributed. Collaborationsupport systems must accomplish such distribution byexploiting appropriate technologies and must meet users’ requirementswhile also evolving or adapting to the users’ needs.Collaboration between different organizations can be achievedby the openness of the systems, a feature that could lead toglobal collaboration.Technological advance in collaborative systems is limited.Human perception and feeling are perhaps more important forthese systems to gain wide acceptance. Users are asked tocollaborate in (possible slightly) different ways from usual collaborations,and social aspects must also be taken into accountwhen designing collaborative systems. This is the reason whycareful tests must be carried out to evaluate a system.This picture points out that collaboration support systemsmust be carefully developed.The motivation for organizing this special issue arose fromour experience in different workshops [mainly IEEEWorkshopson Enabling Technologies: Infrastructure for CollaborativeEnterprises and Role-based Collaboration sessions at IEEEConferences on Systems, Man, and Cybernetics (SMC)]. Inthose occasions, several systems were proposed, and we feltthat it was time to make the point of the situation in the field.Even if this special issue does not aim at saying the last wordin the collaboration field, we hope that this papers’ contentswill be of interest to readers and stimulate not only softwareengineering researchers but also interdisciplinary practitioners.All submitted papers were good and interesting. A normalreview process was followed, and all the papers chosen forpublication in this special issue meet the very high standardof the IEEE TRANSACTIONS ON SYSTEMS, MAN, ANDCYBERNETICS, PART A (TSMC-A).Two papers are about collaboration in learning. CollaborativeOnline Examinations: Impacts on Interaction, Learning,and Student Satisfaction focuses on examinations supportedDigital Object Identifier 10.1109/TSMCA.2006.883182by collaboration support systems, while Supporting VicariousLearning With Collaborative Lessons Learned Programsproposes a support system to observe decision processes andmanage lesson learned in order to improve collaboration. Bothpapers start from a collaboration model and propose an implementedsystem to support specific kinds of collaboration.Consistency is the main issue of the paper From PredefinedConsistency to User-Centered Emergent Consistency in Real-Time Collaborative Editing Systems; the authors present acollaboration model suitable for real-time systems and proposea new model of dynamic consistency based on the users’ needs.The Web is perhaps one of the most interesting environmentsfor collaboration. CoLab: A New Paradigm and Tool forBrowsing Collaboratively the Web proposes a new browsingparadigm, where different users can browse together the sameWeb information; the paper presents CoLab, a system thatimplements the aforementioned cobrowsing paradigm.The paper Discovering and Managing Access to PrivateServices in Collaborative Sessions proposes an approach todiscover and manage services in a safe and controlled wayduring collaboration. The concept of session is exploited notonly for collaboration but also for service discovering purposes.Collaboration in mobile computing scenarios presents severalissues, which are addressed by the pape


2006 - Strong Agent Mobility for Aglets based on the IBM JikesRVM [Relazione in Atti di Convegno]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia; Quitadamo, Raffaele
abstract

Mobility enables agents to migrate among several hosts, becoming active entities of networks. Java is today one of the most exploited languages to build mobile agent systems, thanks to its object-oriented support, portability and network facilities. Nevertheless, Java does not support strong mobility, i.e., the mobility of threads along with their execution state; thus developers cannot develop agents as real mobile entities. This paper reports our approach for Java thread strong migration, based on the IBM Jikes Research Virtual Machine, presenting our results and proposing an enrichment of the Aglets mobile agent platform in order to exploit strong agent mobility.


2006 - Supporting a territorial emergency scenario with Services and Agents: a case study comparison [Relazione in Atti di Convegno]
Cabri, Giacomo; F., DE MOLA; Quitadamo, Raffaele
abstract

Territorial emergency scenarios imply several interesting issues with regard to the development of distributed applications and systems. From complexity to dynamism and unpredictability, these issues must be faced with appropriate paradigms and tools, which must grant flexibility and adaptability. In this paper, we apply concepts and abstractions from the service-oriented computing paradigm and from software agents to support the management of territorial emergencies. Rather than making a theoretical comparison, we analyze a proper case study and show where the advantages and drawbacks of the two paradigms are more evident. From these considerations, we conclude that agents better suit this scenario, but need still to learn from the emerging paradigm of SOC


2006 - Supporting the Development of Multi-agent Interactions Via Roles [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L; Leonardi, Letizia
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.


2006 - The UbiMedic Framework to Support Medical Emergencies by Ubiquitous Computing [Articolo su rivista]
DE MOLA, Francesco; Cabri, Giacomo; N., Muratori; Quitadamo, Raffaele; Zambonelli, Franco
abstract

This paper investigates the feasibility ofemploying the Software Agent technology in the highlydynamic and variable context of healthcare emergencycoordination and decision-support domain. We introduce thedesign of an agent-based middleware tailored to therequirements of such context and propose a framework,called UbiMedic, for the implementation and deployment ofservices, like monitoring services, communications andremote medical measurements in injured people. From theanalysis of the framework, we are able to identify some of themajor technical requirements it should meet as well aschallenges to be addressed for effective use in commercialapplications. We choose software agents as the key enablingtechnology because they offer a single, general framework inwhich large-scale, distributed real-time decision-supportapplications can be implemented more efficiently.


2006 - Uncoupling Coordination: Tuple-based Models for Mobility [Capitolo/Saggio]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia; Mamei, Marco; Zambonelli, Franco
abstract

This chapter focuses on tuple-based (Linda-like) coordination models as middleware services for mobile and pervasive computing systems. After having introduced the basic concepts of tuple-based coordination, the chapter discusses the suitability of tuple-based models for mobility and introduces a simple taxonomy of tuple-based middleware models for mobile systems. Then, on the basis of the introduced taxonomy, the chapter presents several proposals – both industrial and academic – that have been made in the area. Eventually, the paper outlines open research issues and promising research directions in the area of tuple-based coordination models for mobile computing systems.


2005 - A role-based mobile-agent approach to support e-democracy [Articolo su rivista]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia
abstract

Information technology can fruitfully support the participation of citizens in the public life. E-democracy is the set of infrastructures, applications, and devices that make such participation easier and let people better approach to the political actions, for instance attending conventions and voting for a candidate. This paper proposes an approach based on mobile agents playing roles to simplify the task of the developers of e-democracy applications, making them more flexible and adaptable. An application example is exploited to show the concrete advantages of our approach.


2005 - Agent-based Computing for Enterprise Collaboration - Services and agents [Abstract in Atti di Convegno]
Bergenti, F.; Cabri, G.
abstract

The third "Agent-based Computing for Enterprise Collaboration" workshop at WETICE aimed at bringing together researcher in the field of collaboration supported by software agents. This paper briefly discusses the content of the papers as presented by the participating authors. Moreover, there is a summary of the main issues of the concluding panel discussions. © 2005 IEEE.


2005 - Describing and Extending Classes with XMI: an Industrial Experience [Capitolo/Saggio]
Cabri, Giacomo; Iori, M.; Salvarani, A.
abstract

This chapter reports on an industrial experience about the management and the evolution of classes in an automated way. Today’s software industries rely on software components that can be reused in different situations, in order to save time and reuseverified software. The object-oriented programming paradigm significantly supports component-oriented programming, by providing the class construct. Nevertheless, already-implemented components are often required to evolve toward new architecturalparadigms. Our approach enables the description of classes via XML (eXtensible Markup Language) documents, and allows the evolution of such classes via automated tools, which manipulate the XML documents in an appropriate way. To grant standarddescriptions compliant with the UML (Unified Modeling Language) model, we exploit the XMI (XML Metadata Interchange) interchange format, which is a standard, defined by OMG (Object Management Group), that puts together XML, UML and MOF (MetaObject Facility).


2005 - Exploiting runtime bytecode manipulation to add roles to Java agents [Articolo su rivista]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia
abstract

Thanks to their sociality, agents can interact with other agents in a cooperative or competitive way. Such interactions must be carefully taken into consideration in the development of agent-based applications. A good paradigm for modeling such interactions is the one based on the concept of roles, which is fully exploited in the BRAIN framework. The use of roles achieves several advantages, from separation of concerns between the algorithmic issues and the interaction ones, to the reuse of solutions and experiences in different applications. In this paper, we propose an interaction infrastructure for enabling Java agents to dynamically assume roles at runtime and then to use them. Our approach is based on the capability of modifying the bytecode of Java agents at runtime in order to add the members of role classes. An application example and a comparison with other approaches show the effectiveness of our approach.


2005 - Improving Aglets with strong agent mobility through the IBM JikesRVM [Relazione in Atti di Convegno]
Cabri, G.; Ferrari, L.; Leonardi, L.; Quitadamo, R.
abstract

Agents are problem-solving entities that, thanks to characteristics such as autonomy, reactivity, proactivity and sociality, together with mobility, can be used to develop complex and distributed systems. In particular, mobility enables agents to migrate among several hosts, becoming active entities of networks. Java is today one of the most exploited languages to build mobile agent systems, thanks to its object-oriented support, portability and network facilities. Nevertheless, Java does not support strong mobility, i.e., the mobility of threads along with their execution state; thus developers cannot develop agents as real mobile entities. This paper reports our approach for Java thread strong migration, based on the IBM Jikes Research Virtual Machine, presenting our results and proposing an enrichment of the Aglets mobile agent platform in order to exploit strong agent mobility.


2005 - Injecting roles in Java agents through runtime bytecode manipulation [Articolo su rivista]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia
abstract

Agents are problem-solving entities that can be used to develop complex and distributed systems because they are autonomous, mobile, reactive, social, and proactive. Today's trends in agent technology include the development of applications as multi-agent systems, where several agents interact within the same application. In these systems, the interactions among agents must be carefully considered. Roles constitute a powerful paradigm for modeling interactions, allowing algorithmic issues and interaction-dependent issues to be handled independently. In this paper, we present the RoleX interaction infrastructure, which enables Java(TM) agents to dynamically assume and use roles at runtime. Our approach is based on using bytecode manipulation to add (or remove) Java members from agents, changing their capabilities. We detail the main component of RoleX, the Role Loader, which performs the bytecode manipulation that allows agents to dynamically assume and release roles.


2005 - The LAICA Project: Supporting Ambient Intelligence via Agents and Ad-Hoc Middleware [Relazione in Atti di Convegno]
Cabri, Giacomo; L., Ferrari; Leonardi, Letizia; Zambonelli, Franco
abstract

Users' environments are going to be disseminated of intelligent devices and sensors that coordinate each other to help users in their activities. This leads to what is called "ambient intelligence", i.e., environments that exhibits a certain degree of intelligence. Software agents are the natural candidates for this kind of task, thanks to their autonomy and the capability to act on behalf of their owners, resulting thus appropriate in the ambient intelligence area. In this position paper, we discuss the use of agents in ambient intelligence, and sketch the relevant aspects of the LAICA project. In particular, we focus on the design of a middleware for ambient intelligence that connects several kinds of agents and other distributed components.


2004 - Agent Role-based Collaboration and Coordination: a Survey About Existing Approaches [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

The development of agent-based systems musttake into account interactions, carefully modelling andengineering them. Roles represent a good concept thatcan help designers and developers dealing withinteractions. So far, several role approaches for agentshave been proposed. This paper presents a survey on themost important existing approaches. This surveyevaluates the above approaches presenting their maincharacteristics and comparing them each other to find outhow they provide support for analysis, design,implementation, interoperability and openness. Also thesupport for a formal notation is evaluated. This surveydoes not try to find out the best role approach, but toexpose to designers and developers advantages anddrawbacks of several approaches, so that they canrecognize the conditions under which their use ispreferable rather than others.


2004 - Embedding Jaas in Agent Roles to Apply Local Security Policies [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; L., Ferrari
abstract

Agents are an emerging technology that grants programmers a new way to exploit distributed resources. Roles are a powerful concept that can be used to model agent interactions, allowing agents to dynamically acquire operations to make specific tasks, and enabling separation of concerns and code reusability. Nevertheless roles should be developed taking into account permissions needed for the execution of their operations. The standard Java policy file mechanism does not suffice in this scenario, since a fine grain in managing permissions is required. This paper focuses on how to exploit the Java Authentication and Authorization Service (JAAS) at the role level in order to apply authorization and local policies to Java agents for limiting their operations.


2004 - MailConfigurator: Automatic Configuration of E-Mail Accounts through Java Mobile Agents [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; L., Ferrari
abstract

E-Mail is the most exploited service in the Internet. We present an application based on Java mobile agents to automatically perform required steps to register an account. The use of roles makes the development easier and the application adaptable, while the use of the Java technology improves portability. Even if our approach is used for e-mail account creation, our results can be applied to other scenarios.


2004 - Rethinking agent roles: extending the role definition in the BRAIN framework [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Agents represent a technology that grants developers a new way to develop complex applications. Thanks to their autonomy, reactivity and mobility agents can be exploited in today's applications, even playing on the behalf of users. Agents are not really useful if isolated, instead their powerful is increased as much as they can cooperate and coordinate with other agents or environments. To deal with the need of coordination, developers can use the role-based approach, where coordination issues are embedded in roles exploited by agents. Nevertheless, up to now, agent roles have been entities that agents can exploit, without following and providing a real agent evolution, as happens in the real life for human being. In this paper, we propose work in progress within the BRAIN role-based framework to overtake the above limitation, providing a new definition of role.


2004 - Role-based Approaches for Agent Development [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; L., Ferrari; Zambonelli, Franco
abstract

Roles seem to be a suitable concept for the development of agent-based systems. We have compared different approaches based on roles for agent development. This paper illustrates the used evaluation criteria and reports the lesson learned.


2004 - Role-based approaches for engineering interactions in large-scale multi-agent systems [Capitolo/Saggio]
Cabri, Giacomo; L., Ferrari; Zambonelli, Franco
abstract

This chapter discusses how the concept of role can be exploited in engineering large-scale multi-agent systems, in order to support the development of the applications and to simplify the related tasks. A role can be considered as a stereotype of behavior common to different classes of agents. Role-based approaches can give several advantages, the most important of which is the separation of concerns between different issues (for instance, algorithmic ones and interaction-related ones), which is very useful to simplify the development of large-scale agent-based applications. A survey of different approaches shows the advantages and the peculiarities of introducing roles in agent-based application development. Moreover, we present in detail the BRAIN framework, developed at the University of Modena and Reggio Emilia, which is an approach based on roles to support agent developers during their work.


2004 - The RoleX Environment for Multi-agent Cooperation [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L; Leonardi, Letizia
abstract

In this paper we present the RoleX environment for multi-agent systems. Born to support the management of role-based interactions, Rolex provides different services, in particular to support open and flexible cooperation. To this purpose, RoleX exploits an event-based communication mechanism and adopts SOAP as message encoding. Such features make RoleX well suit dynamic and unpredictable scenarios such as the Internet.


2004 - Towards the Use of Mobile Agent Based Message Systems [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Communication is the base mechanism for coordination and collaboration in human activities, and it plays a fundamental role in enterprise environments. However current communication systems are not based on the message content, but they focus on the message transport and delivery. Furthermore the presence of several communication protocols and tools leads to heterogeneity in communications, implying difficulties in activity coordination. This paper presents an approach for communications based on the use of mobile agents, which can realize content filtering, and can unify several message systems in a single one.


2004 - Virtual visits to cultural heritage supported by web-agents [Articolo su rivista]
M. E., Bonfigli; Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The integration between information technologies and culturalheritage can impact on everyday life, both from the point of view ofinstitutions and of users. The cultural heritage community haverecently been attracted by the chance offered by informationtechnology, and, in particular, by the possibility of making culturalinformation available to a wide range of people. Museums,exhibitions and cultural institutions can now supply new services toaccess cultural information, and this calls for suitable infrastructuresand tools. In such a context, this paper proposes a Web-basedapplication that enables virtual visits to access cultural informationtailored on the basis of user profiles and devices. The application isclosely integrated within the Web; it also permits one group to buildup virtual visits that can be attended by different people interested inthe same subject. The application is based on an infrastructureexploiting innovative technologies such as active proxy servers andmobile agents; it grants a high degree of flexibility and is particularlysuitable for an improved promulgation of cultural information.


2003 - A Case Study in Role-based Agent Interactions [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Mobile agents are an emerging approach to develop distributed and parallel application. They also can be exploited to develop enterprise applications, since they can act as active network components, and can execute on heterogeneous platforms or architectures. In this paper, we analyze the interaction issues of an agent based application for the automatic registration system of e-mail accounts, and we propose a role-based approach to deal with these interactions. Such an approach enables the development of flexible and reusable agent-based applications, which can also be exploited by enterprise systems to perform automatic or administrative tasks.


2003 - Agent-based Computing for Enterprise Collaboration - What can agents learn from human collaboration? [Abstract in Atti di Convegno]
Blake, M. B.; Cabri, G.
abstract

The first "agent-based computing for enterprise collaboration" workshop at WETICE aimed at bringing together researcher in the field of collaboration supported by software agents. This paper briefly discusses the content of the papers as presented by the participating authors. Moreover, there is a summary of the main issues of the concluding panel discussions.


2003 - BRAIN: A framework for flexible role-based interactions in multiagent systems [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Agent-based approaches in application development seem to meet the requirements of adaptability, scalability, decentralization, and flexibility imposed by complex software systems. In open applications, interactions among agents are one of the most important issues that must be faced carefully. In this paper we propose the BRAIN framework, which aims at supporting the different phases of the development of interactions in agent-based applications, relyingon the concept of role to model agent interactions. Roles carrydifferent advantages in modeling interactions and, consequently, in exploiting derived infrastructures to support multiagent systems. Besides the interaction model, the BRAIN framework includesXRole, an XML-based notation to express roles in an interoperableway, and Rolesystem, an interaction infrastructure that implements the proposed model. An application example shows the advantages of our approach in application engineering.


2003 - Enabling Mobile Agents to Dynamically Assume Roles [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Agent-based application development must face the issues related to the interactions among agents. In fact, their sociality allows decomposing large applications into collaborating agents, while open environments, such as the Internet, require agents belonging to different applications to compete to gain resources. In the BRAIN framework, interactions among agents are fruitfully modeled and implemented on the basis of roles. This approach achieves several advantages, from separation of concerns between the algorithmic issues and the interaction issues, to the reuse of solutions and experiences in different applications. In this paper we propose a mechanism to enable Java agents to dynamically assume roles at runtime. Our approach is based on the modification of the bytecode of Java agents, in order to implement an appropriate interface and to add the related methods. An application example and the comparison with other approaches show the effectiveness of our approach.


2003 - Implementing Role-based Interactions for Internet Agents [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Large-scale decentralized environments, such as the Internet, achieve advantages in exploiting software agents for applications, thanks to their autonomy in carrying out tasks. In such a scenario, interactions among agents are an issue that must be faced in an appropriate way. In the BRAIN framework interactions among agents are fruitfully modeled on the basis of roles, which define a set of capabilities and expected behavior. This approach achieves several advantages, such as agent-oriented features, separation of concerns and reuse of solutions and experiences. In this paper we propose an interaction infrastructure, called Rolesystem, which relies on the aforementioned role-based interaction model. This infrastructure allows agents to dynamically assume roles and interact accordingly. An application example and comparison with other approaches show the effectiveness of our approach.


2003 - Location-dependent services for mobile users [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Mamei, Marco; Zambonelli, Franco
abstract

Several approaches for the provisioning of servicesto mobile users aim at supporting service availability from anyplace and at any time. However, most scenarios also require theenforcement of context-awareness, to dynamically adapt servicesdepending on the context in which they are requested. In thispaper, we focus on the problem of adapting services dependingon the users’ location, whether physical (in space) or logical(within a specific distributed group/application). To this end, wepropose a framework to model users’ location via a multiplicityof local and active service contexts. First, service contextsrepresent the mean to access to services available within aphysical locality. This leads to an intrinsic dependency ofservice provisioning on the users’ physical location. Second, thebehavior of service contexts can be tuned depending on who isrequesting what service. This enables adapting services to thelogical location of users (e.g., a request can lead to differentbehaviors for users belonging to different groups/applications).The paper firstly describes the framework in general terms,showing how it can facilitate the design of distributedapplications involving mobile users as well as mobile agents.Then, it shows how the MARS coordination middleware,implementing service contexts in terms of programmable tuplespaces, can be used to develop and deploy applications andservices coherently with the above framework. A case study isintroduced and discussed through the paper to clarify ourapproach and to show its effectiveness.


2003 - Manipulation of Java Agent Bytecode to Add Roles [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Roles are a powerful paradigm to develop distributed applications based on agents, especially when they are in need of interacting with other entities. An agent-oriented approach requires that roles are conceived as first-class entities, and at the same time that roles are dynamically embedded into agents at runtime. In this paper we propose an approach that addresses such requirements, enabling Java agents to dynamically assume roles. We present a mechanism that modifies the agent bytecode to add the role features.


2003 - Programmazione ad Oggetti in Java: dai Fondamenti a Internet [Monografia/Trattato scientifico]
Cabri, Giacomo; Zambonelli, Franco
abstract

Questo libro presenta i principi e le principali tecniche per la programmazione in linguaggio Java, partendo dai fondamenti della programmazione ad oggetti fino ad arrivare alla programmazione per applicazioni Internet e Web. Il volume, che si fonda sull'esperienza pluriennale degli autori nell'ambito dell'insegnamento di tali materie presso la facoltà di Ingegneria, non intende però in alcun modo essere un semplice "manuale" di uso in Java. Esso si pone l'obbiettivo di presentare e chiarire - attraverso il linguaggio Java - concetti fondamentali per il progetto e lo sviluppo di applicazioni software moderne (quali ad esempio i concetti di interazioni client-server, la gestione dei flussi di dati, la programmazione grafica, le interazioni basate su eventi, la gestione delle strutture dati complesse, il multi-threading, la programmazione di rete e dei servizi web). Per questo motivo il libro non presenta i dettagli e le specifiche di tutte le classi di libreria Java ma fornisce, tramite esempi accuratamente selezionati, i concetti che permetteranno poi a chiunque, sfogliando un qualunque manuale specialistico di Java, di gestire qualsiasi libreria di classi Java, per quanto complessa. La destinazione naturale di questo libro è nell'ambito di moduli di informatica per corsi di laurea di primo livello in facoltà a orientamento scientifico-tecnologico, da fruirsi a seguito di un esame di base di fondamenti di informatica. La lettura del libeo infatti richiede una conoscenza pregressa minima di tecniche di programmazione, e nello specifico di tecniche di programmazione in linguaggio C.


2003 - Role Agent Pattern: a Developer Guideline [Relazione in Atti di Convegno]
Cabri, Giacomo; Ferrari, L.; Leonardi, Letizia
abstract

Agents are an emerging technology that grants programmers a new way to exploit distributed resources. One of the hardest difficult in the development of this kind of application is the managing of agent interactions, since agents must interact in a collaborative and/or competitive way to achieve their task. Roles are a powerful paradigm that can be used to model agent interactions, both between two (or more) agents and between an agent and the platform/node on which it is running. In this paper we propose a guideline to role developing and use, with regard to the agent technology. In particular we focus on the main problems that a role system and a role developer must take into account.


2003 - Role-based interaction infrastructures for Internet agents [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

With no doubt the Internet will achieve advantages in exploiting software agents for applications, thanks to their autonomy in carrying out tasks. In such a scenario, appropriated methodologies are needed to manage the interactions among agents. The BRAIN framework proposes an interaction model based on roles, each one composed by a set of capabilities and an expected behavior. The achieved advantages are agent-oriented features, separation of concerns and reuse of solutions and experiences. In this paper we present two interaction infrastructures, Rolesystem and RoleX, which rely on the above mentioned role-based interaction model. These infrastructures allow agents to assume roles and to interact. An application example and the comparison with other approaches show the effectiveness of our approach.


2003 - Taking back cyberspace [Articolo su rivista]
Jm, Bradshaw; Cabri, Giacomo; R., Montanari
abstract

Researchers must find way to implement trustworthiness if they want users people to stop worrying and learn instead to love agents.


2003 - WRSM 2003 PC co-chairs' message [Abstract in Atti di Convegno]
Narasimhan, P; Blake, B; Cabri, Giacomo
abstract

This Workshop aims to integrate four important computer system-engineering technologies: reliability, security, middleware and agent-based systems. WRSM 2003 was intended to be a selective Workshop for fostering collaborations amongst leading international researchers in the fields of reliable and/or secure middleware, and agent-based systems. This yearrsquos technical program fulfills that expectation and, in fact, breaks new ground again as the themes of WRSM 2003, and its focus on cutting-edge research and technologies, are all the more timely given the recent events in the world.


2002 - Engineering mobile agent applications via context-dependent coordination [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The design and development of Internet applications requiring dynamic and possibly mobile access to Internet resources can take advantage of an approach based on autonomous mobile agents. However, mobility introduces peculiar issues related to the modeling and management of the agents' coordination activities. This paper introduces context-dependent coordination as a framework for the design and development of Internet applications based on mobile agents, and shows how it can be supported by a proper coordination infrastructure. Context-dependent coordination is centered on the notion of programmable coordination media, as the software abstraction via which an agent in an Internet site can access to local resources and coordinate with local agents. Programmability stems from the fact that the behavior of the media can be fully configured to influence agents' coordination activities. This enables local administrators to configure coordination media so as to enact site-dependent coordination policies, and mobile agents to configure the accessed coordination media to obtain an application-dependent behavior of the media themselves. Several application examples shows that exploiting context-dependent coordination promotes a clear separation of concern in design and development, and can make applications more modular and easier to be maintained. The MARS system is assumed as an exemplar coordination infrastructure to clarify the concepts expressed and to show their actual implementation.


2002 - Modeling Role-based Interactions for Agents [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Software agents, thanks to their autonomy in carryingout tasks, are fruitfully exploited in large-scaledistributed environments, such as the Internet. In such ascenario, interactions among agents are an issue thatmust be faced in an appropriate way. This paperproposes an interaction model based on roles, being arole a set of capabilities and an expected behavior.Modeling interactions by roles can simplify the designof the agent-based applications. A notation based onXML is adopted to support the definition and theexploitation of roles at different phases of theapplication development. Finally, an applicationexample shows the effectiveness of the approach.


2002 - MOMIS: Exploiting agents to support information integration [Articolo su rivista]
Cabri, Giacomo; Guerra, Francesco; Vincini, Maurizio; Bergamaschi, Sonia; Leonardi, Letizia; Zambonelli, Franco
abstract

Information overloading introduced by the large amount of data that is spread over the Internet must be faced in an appropriate way. The dynamism and the uncertainty of the Internet, along with the heterogeneity of the sources of information are the two main challenges for today's technologies related to information management. In the area of information integration, this paper proposes an approach based on mobile software agents integrated in the MOMIS (Mediator envirOnment for Multiple Information Sources) infrastructure, which enables semi-automatic information integration to deal with the integration and query of multiple, heterogeneous information sources (relational, object, XML and semi-structured sources). The exploitation of mobile agents in MOMIS can significantly increase the flexibility of the system. In fact, their characteristics of autonomy and adaptability well suit the distributed and open environments, such as the Internet. The aim of this paper is to show the advantages of the introduction in the MOMIS infrastructure of intelligent and mobile software agents for the autonomous management and coordination of integration and query processing over heterogeneous data sources.


2002 - Separation of Concerns in Agent Applications by Roles [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

In the development of agent applications, interactions are an important issue, which must be faced with appropriate methodologies and tools. A separation of concerns between the agents and their interaction needs is helpful in the designing and the implementation phases of the life cycle. In this paper we propose XRole, a system that helps in dealing with interactions. It is based on the definition of roles, which are intended as intermediaries between the application needs and the environment needs. XRole is realized by exploiting the interesting features of the XML language. An application example shows the effectiveness of the approach.


2002 - Web infrastructures and coordination architectures for collaborative applications - Shared artifacts, a shared language, or shared spaces? [Abstract in Atti di Convegno]
Cabri, G.; Kotsis, G.
abstract

The attendees of the workshop "Web Infrastructures and Coordination Architectures for Collaborative Applications" tried to develop a joint opinion how the Web and its infrastructure should develop to become a productive environment for collaborative applications. This paper sketches the different approaches presented in the workshop and summarizes the consolidated results of the discussions.


2002 - XRole: XML Roles for Agent Interaction [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Engineering interactions is a very importantissue in the design and development of Internetapplications. The wideness, the opennessand the uncertainty of the Internet environmentcall for appropriate methodologies. Inthis paper we propose XRole, a system thathelps in dealing with such a kind of interactionsin a modular and effective way. XRole isbased on the definition of roles, intended asintermediaries between the application needsand the environment needs. XRole is implementedexploiting the XML language. An applicationexample in the agent-negotiationarea shows the effectiveness of the approach.


2001 - Coordination infrastructures for mobile agents [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The mobile agent technology is gaining more and more interest in the distributed systems community. In this context, suitable coordination models are needed to handle the coordination, both among mobile agents and between agents and Internet resources. This paper presents two coordination infrastructures that follow two different coordination models: Aglets, based on the message-passing coordination model, and Mobile Agent Reactive Spaces (MARS), based on the Linda-like one. These two approaches are compared in detail, and a mobile-agent application in the area of auction-based negotiation is used to evaluate the pros and cans of the Aglets and MARS solutions in a concrete field. (C) 2001 Elsevier Science B.V. All rights reserved.


2001 - Developing Mobile Agent Organizations: A Case Study in Digital Tourism [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Mobile agents are a useful paradigm for the development of complex Internet applications. However, the effective development of mobile agent applications requires suitable models and infrastructures. This paper proposes an organizational approach to the design and development of mobile agent applications and describes an infrastructure designed to support such approach. The approach models the Internet as a multiplicity of local and active organizational contexts, intended as the places where coordination activities of application agents occur and are ruled. The MARS coordination infrastructure supports the development of mobile agent applications by implementing organizational contexts in terms of programmable tuple spaces. An application example related to the use of mobile agents to access and organize tourist information is introduced and discussed through the paper to clarify our approach and to show its effectiveness.


2001 - Engineering infrastructures for mobile organizations [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Mamei, Marco; Zambonelli, Franco
abstract

Mobile application components can be effectively and uniformly modeled in terms of autonomous agents moving across different contexts during execution. In this paper, we introduce a conceptual framework based on the definition of programmable organizational contexts, which can promote an engineered approach to application design and that, if is supported by a proper programmable coordination infrastructure, can make applications more modular and easy to maintain. On this base, the paper analyses several issues related to the implementation of programmable coordination infrastructures for mobility. In addition, the paper introduces a preliminary proposal for the modeling of programmable coordination infrastructures in terms of a general-purpose event-based infrastructure. Finally, the paper sketches open issues and promising research directions.


2001 - Engineering Mobile-Agent Applications via Context-dependent Coordination [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Mobility introduces peculiar coordination problems in agent-based Internet applications. First, it suggests the exploitation of an infrastructure based on a multiplicity of local interaction spaces. Second, it may require coordination activities to be adapted both to the characteristics of the execution environment where they occur and to the needs of the application to which the coordinating agents belong. This paper introduces the concept of context-dependent coordination based on programmable interaction spaces. On the one hand, interaction spaces associated to different execution environments may be independently programmed so as to lead to differentiated, environment-dependent, behaviors. On the other hand, agents can program the interaction spaces of the visited execution environments to obtain an application-dependent behavior of the interaction spaces themselves. Several examples show how an infrastructure for context-dependent coordination can be exploited to simplify the design of Internet applications based on mobile agents. In addition, the MARS coordination infrastructure is presented as an example of a system in which the concept of context-dependent coordination has found a clean and efficient implementation.


2001 - Mobile Agent Coordination for Distributed Network Management [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Mobile agents are a promising technology to face the problems raised by the increasing complexity and size of today networks. In particular, in the area of network management, mobile agents can lead to a fully distributed paradigm, which can overcome the limitation of the traditional centralised approaches. A basic requirement for the management of a complex network is to define high-level and flexible models to coordinate the accesses to the resources - data and services - provided by the network nodes. On this base, the paper describes the MARS coordination architecture for mobile agents. MARS is based on the definition of programmable tuple spaces associated to the network nodes: mobile agents can access to the local resources and services via the tuple space, thus adopting a standard and high-level interface. The network administrator - via mobile agents - can dynamically program the behaviour of the tuple space in response to the agents accesses, thus leading to a flexible network model. Several examples show the effectiveness of the MARS approach in supporting network management activities.


2001 - Mobile Devices to Assist Cultural Visits [Relazione in Atti di Convegno]
Bonfigli, E.; Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Traditional visits to environments interesting from a cultural point of view are based on technologies that do not permit flexibility and modification to the visit itself on the basis of the visitors’ profile. Software agents running on personal mobile devices can overcome such limitations and lead to personalised visits. The innovative technology based on mobile agents seems to well fit this scenario, where the agents on the mobile devices can interact with fixed HW/SW infrastructures. This paper proposes the reuse of several concepts from the mobile agent technology in the design of distributed applications based on mobile devices. In particular, coordination issues are addressed, and reactive tuple spaces are proposed as coordination means: thanks to their openness and flexibility, they well suit a scenario composed by mobile entities.


2001 - Role-based Infrastructures for Agents [Relazione in Atti di Convegno]
Cabri, Giacomo
abstract

Multi-agent systems represent the most recenttechnology to design and develop distributedapplications. Agents can also gain advantage frommobility, i.e., the capability of changing executionenvironment in world modeled as a set of nodes withdifferent resources and services. This technology callsfor appropriate local infrastructures to manage theinteractions among agents and between agents andenvironments. We propose to build such infrastructureson the basis of roles, which represent the behavior andthe capabilities of agents. Some examples are reported toexplain the exposed concepts in concrete fields.


2001 - Supporting information integration with autonomous agents [Relazione in Atti di Convegno]
Bergamaschi, Sonia; Cabri, Giacomo; Guerra, Francesco; Leonardi, Letizia; Vincini, Maurizio; Zambonelli, Franco
abstract

The large amount of information that is spread over the Internet is an important resource for all people but also introduces some issues that must be faced. The dynamism and the uncertainty of the Internet, along with the heterogeneity of the sources of information are the two main challanges for the today’s technologies. This paper proposes an approach based on mobile agents integrated in an information integration infrastructure. Mobile agents can significantly improve the design and the development of Internet applications thanks to their characteristics of autonomy and adaptability to open and distributed environments, such as the Internet. MOMIS (Mediator envirOnment for Multiple Information Sources) is an infrastructure for semi-automatic information integrationthat deals with the integration and query of multiple, heterogeneous information sources (relational, object, XML and semi-structured sources). The aim of this paper is to show the advantage of the introduction in the MOMIS infrastructureof intelligent and mobile software agents for the autonomous management and coordination of the integration and query processes over heterogeneous sources.


2001 - Tuple-based Technologies for Coordination [Capitolo/Saggio]
Rossi, D.; Cabri, Giacomo; Denti, E.
abstract

By tuple-based technologies we refer to any coordination system that uses associative access to shared dataspaces for communication / synchronization purposes.The idea of using a shared dataspace to coordinate concurrent activities first appeared in the Linda coordination language, which defined a coordination model based on the so-called tuple space, as well as a set of primitives, that extend a host computational language, to access it.The basic Linda model has been extended in various ways by different languages / architectures in order to deal with the different requirements of different application areas, from high speed parallel computations (the context in which Linda was designed) to Internet-based multi-agent architectures.This chapter surveys various tuple-based coordination systems and models, introducing a taxonomy (based on the enhancements with respect to the original Linda model) as well as a set of criteria to classify the considered projects. Our aim is not just to supply an updated reference to existing tuple-based coordination systems, but also to provide the reader with some helpful guidelines to compare coordination models and systems.Given the book focus, we will restrict our survey to the technologies that are explicitly targeted to open distributed systems, trying, at the same time, to offer a perspective that is as wide as possible.


2001 - Web-Assisted Visits to Cultural Heritage [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The wide access to cultural heritage is gaining more and more interest from the information technology community. Museums, exhibitions and cultural places are becoming enterprises that supply new services to access cultural information, and this calls for suitable infrastructures and tools. In such a context, this paper proposes a distributed application to enable virtual visits, based on an infrastructure exploiting innovative technologies such as active proxy servers and mobile agents. Such application is integrated within the Web and permits to build up virtual visits that can be attended by groups of people interested in the same subject. Such visits are tailored on the basis of users' profiles and devices, and can be enhanced by the availability of distributed services. This grants a high degree of flexibility and autonomy for our application.


2001 - XML dataspaces for the coordination of Internet agents [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

This article presents MARS-X, a programmable coordination architecture for autonomous and mobile Internet agents. In MARS-X, mobile Internet agents coordinate through programmable XML dataspaces, accessed by agents in a Linda-like fashion. Therefore, MARS-X enforces open and uncoupled interactions and, via XML, it offers a high degree of standard interoperability. These properties suit very well the characteristics of both mobile Internet agents and the Internet environment itself lit addition, coordination in MARS-X is made more flexible and secure by the capability of programming the behavior of the XML dataspaces by reaction to the agents' accesses. An application example related to the management of on-line academic courses shows the suitability and effectiveness of the MARS-X architecture.


2000 - A Web Infrastructure for People and Agent Interaction and Collaboration [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Internet pervasive services call for flexible supports to enable a wide degree of collaboration. On the one hand, many people are connected to the Internet and surf the Web not only to retrieve information, but also to carry out several kinds of different tasks via online services. On the other hand, the Internet is likely soon to be populated by software agents that will act on behalf of users, and that are “intelligent” enough to achieve better results without boring their users. In this paper, we present a Web-based modular architecture that permits interaction and collaboration among people and agents, leading to a more fruitful exploitation of the capabilities offered by the Internet. A negotiation application based on auctions is used to show the advantages of the proposed architecture


2000 - Agent for Information Retrieval:Issues of Mobility and Coordination [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Internet pervasive services call for flexible supportsto enable a wide degree of collaboration. On the onehand, many people are connected to the Internet andsurf the Web not only to retrieve information, but also tocarry out several kinds of different tasks via the on-lineservices. On the other hand, the Internet is likely to besoon populated by software agents that will act in behalfof users, “intelligent” enough to achieve the better resultwithout boring their users. In this paper we present aWeb-based modular architecture that permitsinteraction and collaboration among people and agents,leading to a more fruitful exploitation of the capabilitiesoffered by the Internet. A negotiation application basedon auctions is used to show the advantages of theproposed architecture.


2000 - Auction-based agent negotiation via programmable tuple spaces [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Auctions are proposed as a distributed negotiation mean, particularly useful in multiagent systems where both cooperative and self-interested agents compete for resources and services. The aim of this paper is to show how auction mechanisms on the Internet can be easily implemented by using programmable tuple spaces. Tuple spaces are shared repositories of information that follow the Linda model; the addition of programmability permits to adapt the tuple space behaviour to the application-specific requirements via reactions. In the implementation of auctions, programmable reactivity is exploited to uncouple the actual auction mechanisms from the selling and bidding policies of the attending agents.


2000 - Context-dependency in Internet-agent Coordination [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The design and development of Internet applications can take advantage of a paradigm based on autonomous and mobile agents. However, mobility introduces peculiar coordination problems in multiagent-based Internet applications. First, it suggests the exploitation of an infrastructure based on a multiplicity of local interaction spaces. Second, it may require coordination activities to be adapted both to the characteristics of the execution environment where they occur and to the needs of the application to which the coordinating agents belong. In this context, this paper introduces the concept of context-dependent coordination based on programmable interaction spaces. On the one hand, interaction spaces associated to different execution environments may be independently programmed so as to lead to differentiated, environment-dependent, behaviors. On the other hand, agents can program the interaction spaces of the visited execution environments to obtain an application-dependent behavior of the interaction spaces themselves. Several examples show how a model of context-dependent coordination can be effectively exploited in Internet applications based on mobile agents. In addition, several systems are briefly presented that, to different extent, define a model of context-dependent coordination.


2000 - MARS: A Programmable Coordination Architecture for Mobile Agents [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Mobile agents offer much promise, but agent mobility and Internet openness make coordination more difficult. Mobile Agent Reactive Spaces, a Linda-like coordination architecture with programming features, can handle a heterogeneous network while still allowing simple and flexible application design.


2000 - Mobile-agent coordination models for Internet applications [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Internet applications face challenges that mobile agents and the adoption of enhanced coordination models may overcome. Each year more applications shift from intranets to the Internet, and Internee-oriented applications become more popular. New design and programming paradigms can help harness the Web's potential. Traditional distributed applications assign a set of processes to a given execution environment that, acting as local-resource managers, cooperate in a network-unaware fashion. In contrast, the mobile-agent paradigm defines applications as consisting of network-aware entities-agents-which. can exhibit mobility by actively changing their execution environment, transferring themselves during execution. The authors propose a taxonomy of possible coordination models for mobile-agent applications, then use their taxonomy to survey and analyze recent mobile-agent coordination proposals, Their case study, which focuses on a Web-based information-retrieval application, helps show that the mobility of application components and the distribution area's breadth can create coordination problems different from those encountered in traditional distributed applications.


2000 - XML Dataspaces for Mobile Agent Coordination [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

This paper presents MARS-X, a programmable coordinationarchitecture for Internet applications based on mobile agents. InMARS-X, derived from the MARS coordination architecture,agents coordinate through programmable XML dataspaces,accessed by agents in a Linda-like fashion. This suits very wellthe characteristics of the Internet environment, because MARS-Xenforces open and uncoupled interactions and offers all theadvantages of XML in terms of standard interoperability. Inaddition, coordination in MARS-X is made more flexible andsecure by the capability of programming the behaviour of theXML dataspaces in reaction to the agents' accesses. Anapplication example related to the management of on-lineacademic courses shows the suitability and the effectiveness ofthe MARS-X architecture.


1999 - A proxy-based framework to support synchronous cooperation on the web [Articolo su rivista]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Owing to its widespread diffusion and ease of use, the Web is an attractive platform to support distributed cooperative work. The paper presents an object-oriented proxy-based framework to support synchronous cooperation on the Web. The framework implements the general-purpose mechanisms of a proxy server. Specific application-dependent functionalities have to be implemented in a module to be installed in the proxy-framework. This leads to the implementation of an extensible proxy-framework, which facilitates the development of specific cooperative services. The paper presents and evaluates several applications enabling different cooperative Web activities, to confirm the effectiveness of our proposal in terms of reusability, usability and performance. Copyright


1999 - Design and Implementation of a Programmable Coordination Architecture for Mobile Agents [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Reggiani, G.; Zambonelli, Franco
abstract

The paper describes the design and the Java implementation of a coordination architecture for mobile agents, based on an object oriented Linda-like tuple space model, compliant with the Sun's JavaSpaces specifications. Moreover, unlike Linda and JavaSpaces, the proposed architecture integrates a reactive model: the behaviour of the tuple spaces can be programmed by installing reactions which are triggered by the accesses of mobile agents to the tuple spaces. Reactions can increase the coordination flexibility and ease agent programming as shown via an application example in the network management area


1999 - Network Management based on Mobile Agents using Programmable Tuple Spaces [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

Today networks are rapidly increasing both in size and in complexity, and their management requires new paradigms and new tools. In fact, centralised approaches suffer of several limits with regard to flexibility and scalability. Even traditional distributed solutions do not completely solve the problems. Instead, mobile agents can be exploited to realise a fully distributed, scalable and flexible network management model. In this context, an appropriate coordination model is required to develop effective network management applications. This paper proposes the MARS coordination architecture, based on programmable Linda-like tuple spaces. Tuples can be exploited both to access network resources and to let agents interact. Moreover, the programmability of the tuple spaces increases flexibility and permits the definition of application specific policies to rule the accesses of mobile agents to local network resources and services. This paper shows, by mean of several examples, how MARS can be employed to support network management.


1999 - Supporting Cooperative WWW Browsing: a Proxy-based Approach [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The paper presents a system for synchronous cooperative browsing that permits users within a workgroup to share information and cooperate toward a common goal. The system implementation is based on a Java proxy, to achieve portability without requiring modification neither to browsers nor to servers. In addition, the paper shows that the implemented system defines a general framework for interactive multi-user WWW applications.


1998 - How to coordinate Internet applications based on mobile agents [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The paper surveys the possible coordination models for mobile agent applications and evaluates them in the context of a widely distributed application in the area of WWW information retrieval. The analysis outlines the advantages and the drawbacks of each coordination model and shows how reactivity of the coordination media can provide the degree of flexibility and adaptability required by mobile agent applications


1998 - Reactive Tuple Spaces for Mobile Agent Coordination [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The paper surveys several coordination models for mobile agent applications and outlines the advantages of uncoupled coordination models based on reactive blackboards. On this base, the paper presents the design and the implementation of the MARS system, a coordination tool for Java-based mobile agents. MARS defines Linda-like tuple spaces that can be programmed to react with specific actions to the accesses made by mobile agents.


1998 - The impact of the coordination model in the design of mobile agent applications [Relazione in Atti di Convegno]
Cabri, Giacomo; Leonardi, Letizia; Zambonelli, Franco
abstract

The paper introduces a taxonomy of the possible coordination models for mobile agent applications and evaluates their impact in the design of a widely distributed application in the area of information retrieval. The analysis outlines the advantages of uncoupled coordination models and points out the need for coordination models based on reactive blackboards


1998 - The impact of the coordination model in the design of mobile agent applications [Relazione in Atti di Convegno]
Cabri, G.; Leonardi, L.; Zambonelli, F.
abstract

The paper introduces a taxonomy of the possible coordination models for mobile agent applications and evaluates their impact in the design of a widely distributed application in the area of information retrieval. The analysis outlines the advantages of uncoupled coordination models and points out the need for coordination models based on reactive blackboards.


1996 - Experience of adaptive replication in distributed file systems [Relazione in Atti di Convegno]
Cabri, Giacomo; A., Corradi; Zambonelli, Franco
abstract

The paper focuses on distributed file systems and presents a system to transparently manage file replication through a network of workstations. The system integrates an adaptive file replication policy that is capable of reacting to changes in the patterns of access to the file system by dynamically creating or deleting replicas. The paper evaluates the efficiency of the system in several situations and shows its effectiveness