CARMA: Collective Adaptive Resource-sharing Markovian Agents

29 Sep 2015  ·  Bortolussi Luca Saarland University, University of Trieste, ISTI-CNR, De Nicola Rocco IMT Lucca, Galpin Vashti University of Edinburgh, Gilmore Stephen University of Edinburgh, Hillston Jane University of Edinburgh, Latella Diego ISTI-CNR, Loreti Michele Università di Firenze, IMT Lucca, Massink Mieke ISTI-CNR ·

In this paper we present CARMA, a language recently defined to support specification and analysis of collective adaptive systems. CARMA is a stochastic process algebra equipped with linguistic constructs specifically developed for modelling and programming systems that can operate in open-ended and unpredictable environments. This class of systems is typically composed of a huge number of interacting agents that dynamically adjust and combine their behaviour to achieve specific goals. A CARMA model, termed a collective, consists of a set of components, each of which exhibits a set of attributes. To model dynamic aggregations, which are sometimes referred to as ensembles, CARMA provides communication primitives that are based on predicates over the exhibited attributes. These predicates are used to select the participants in a communication. Two communication mechanisms are provided in the CARMA language: multicast-based and unicast-based. In this paper, we first introduce the basic principles of CARMA and then we show how our language can be used to support specification with a simple but illustrative example of a socio-technical collective adaptive system.

PDF Abstract
No code implementations yet. Submit your code now

Categories


Programming Languages Distributed, Parallel, and Cluster Computing Performance

Datasets


  Add Datasets introduced or used in this paper