A Quantitative Approach to the Design and Analysis of Collective Adaptive Systems

Abstract

Reasoning about quantitative properties of collective adaptive systems is made difficult by the typically massive size of the models used for the analysis. In this paper, we present our envisaged approach to the prediction and control of the behaviour of large-scale systems, based on formal methods for their rigorous and unambiguous specification, and an array of scalable and accurate underlying analytical tools. Collective adaptive systems (CAS) consist of a large number of spatially distributed heterogeneous entities with decentralised control and varying degrees of complex autonomous behaviour. It is of fundamental importance that a thorough a priori analysis of their design is carried out to investigate all aspects of their behaviour, including quantitative and emergent aspects, before they are put into operation. This is to avoid costly re-designs or re-deployments that are necessitated if an envisaged solution does not turn out to fulfil the desired quality of service. Therefore, performing analysis as early as possible in the development lifecycle gives designers high confidence that, once operational, CAS can adapt to changing requirements autonomously without operational disruption. Unfortunately, the defining characteristics of these systems mean that their behaviour is often highly unpredictable or counter-intuitive. Formal, scalable, quantitative analysis, which provides multiple perspectives on system behaviour while being based on well-established reasoning techniques, is therefore imperative to master such complex systems. Our main objective is the development of an innovative design framework that provides a formal specification language for CAS and a large variety of tool-supported, scalable quantitative analysis and verification techniques. Specifically, our framework will consist of the following main elements. CAS-SCEL: CAS-SCEL is a specification language based on process algebra (e.g., [1]). This is motivated by the possibility of performing compositional design. For instance, a model of a CAS with n entities, each associated with a local specification denoted by E1, . . . , En, would be described by an equation in the form E1 k · · · k En. Here the parallel operator “k” informally means that the local behaviour of each entity can be influenced by the fact that it is operating in a context where other entities are present, either with shared or with conflicting goals and behaviours. Since process algebra can be Luca Bortolussi is with the Department of Mathematics and Geosciences, University of Trieste, Italy, and with CNR-ISTI, Pisa, Italy. Rocco De Nicola is with IMT Lucca, Italy. Nicola Gast is with EPFL, Switzerland. Stephen Gilmore and Jane Hillston are with the School of Informatics, University of Edinburgh, Scotland. Mieke Massink is with CNR-ISTI, Pisa, Italy. Mirco Tribastone is with the Department for Informatics, Ludwig Maximilians University of Munich, Germany. seen as kernels of more expressive higher-level programming languages, such compositional specification may naturally lead to a component-based implementation of the software that will ultimately realise the design. In addition, process algebra offer compositional reasoning. As an example, a property that is found to hold for a specific entity (or group of entities) can carry over in every context in which the entity is operating. This feature is at the basis of a recent technique that aims at a scalable analysis of large-scale process algebra models. In a CAS, it is not uncommon to find large groups of entities that are identical, or that can be reasonably modelled as being so. (The CAS may still be fundamentally heterogeneous due to the presence of distinct groups of such entities.) For instance, a group of n entities, each modelled by some specification E of size k, could be written E k · · · k E | {z }

Extracted Key Phrases

Cite this paper

@inproceedings{Bortolussi2013AQA, title={A Quantitative Approach to the Design and Analysis of Collective Adaptive Systems}, author={Luca Bortolussi and Rocco De Nicola and Nicolas Gast and Stephen Gilmore and Jane Hillston and Mieke Massink and Mirco Tribastone}, year={2013} }