Specification and Analysis of Open-Ended Systems with CARMA

  • Jane Hillston
  • Michele Loreti
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9068)


Carma is a new language recently defined to support quantified specification and analysis of collective adaptive systems. It 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 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. A key feature of Carma is the explicit representation of the environment in which processes interact, allowing rapid testing of a system under different open world scenarios. The environment in Carma models can evolve at runtime, due to the feedback from the system, and it further modulates the interaction between components, by shaping rates and interaction probabilities.


Modelling Language Process Algebra Evolution Rule Asynchronous Communication Downward Causation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Compagnoni, A., Giannini, P., Kim, C., Milideo, M., Sharma, V.: A calculus of located entities. In: Proceedings of DCM 2013 (2014)Google Scholar
  2. 2.
    Compagnoni, A., Sharma, V., Bao, Y., Libera, M., Suhkishvili, S., Bidinger, P., Bioglio, L., Bonelli, E.: Biospace: a modeling and simulation language for bacteria-materials interactions. ENTCS 293, 35–49 (2013)Google Scholar
  3. 3.
    Alrahman, Y., De Nicola, R., Loreti, M., Tiezzi, F., Vigo, R.: A calculus for attribute-based communication. In: Proceedings of SAC 2015 (2015, to appear)Google Scholar
  4. 4.
    Steiniger, A., Krüger, F., Uhrmacher, A.M.: Modeling agents and their environment in multi-level-DEVS. In: Proceedings of the 2012 Winter Simulation Conference, Berlin, Germany. IEEE (2012)Google Scholar
  5. 5.
    Bernardo, M., Gorrieri, R.: A tutorial on EMPA: a theory of concurrent processes with nondeterminism, priorities, probabilities and time. Theor. Comput. Sci. 202(1–2), 1–54 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Bohnenkamp, H.C., D’Argenio, P.R., Hermanns, H., Katoen, J.: MODEST: a compositional modeling formalism for hard and softly timed systems. IEEE Trans. Softw. Eng. 32(10), 812–830 (2006)CrossRefGoogle Scholar
  7. 7.
    Bordini, R.H., Okuyama, F.Y., de Oliveira, D., Drehmer, G., Krafta, R.C.: The MAS-SOC approach to multi-agent based simulation. In: Lindemann, G., Moldt, D., Paolucci, M. (eds.) RASTA 2002. LNCS (LNAI), vol. 2934, pp. 70–91. Springer, Heidelberg (2004) CrossRefGoogle Scholar
  8. 8.
    Bortolussi, L., Hillston, J., Tribastone, M.: Fluid performability analysis of nested automata models. Electr. Notes Theor. Comput. Sci. 310, 27–47 (2015)CrossRefGoogle Scholar
  9. 9.
    Bortolussi, L., Policriti, A.: Hybrid dynamics of stochastic programs. Theor. Comput. Sci. 411(20), 2052–2077 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Cardelli, L., Gordon, A.D.: Mobile ambients. Theor. Comput. Sci. 240(1), 177–213 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Celaya, J.R., Desrochers, A.A., Graves, R.J.: Modeling and analysis of multi-agent systems using petri nets. JCP 4(10), 981–996 (2009)Google Scholar
  12. 12.
    Ciocchetta, F., Hillston, J.: Bio-PEPA: a framework for the modelling and analysis of biological systems. Theor. Comput. Sci. 410(33), 3065–3084 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Maus, C., Rybacki, S., Uhrmacher, A.M.: Rule-based multi-level modelling of cell biological systems. BMC Syst. Biol. 5, 166 (2011)CrossRefGoogle Scholar
  14. 14.
    De Nicola, R., Latella, D., Massink, M.: Formal modeling and quantitative analysis of klaim-based mobile systems. In: Proceedings of the 2005 ACM Symposium on Applied Computing (SAC), Santa Fe, New Mexico, USA, 13–17 March 2005, pp. 428–435. ACM (2005)Google Scholar
  15. 15.
    De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: the SCEL language. TAAS 9(2), 7 (2014)CrossRefGoogle Scholar
  16. 16.
    Feng, C., Hillston, J.: PALOMA: a process algebra for located Markovian agents. In: Norman, G., Sanders, W. (eds.) QEST 2014. LNCS, vol. 8657, pp. 265–280. Springer, Heidelberg (2014) Google Scholar
  17. 17.
    Feng, C., Hillston, J.: Speed-up of stochastic simulation of PCTMC models by statistical model reduction (2015, Submitted)Google Scholar
  18. 18.
    Galpin, V.: Modelling network performance with a spatial stochastic process algebra. In: Proceedings of International Conference on Advanced Information Networking and Applications, pp. 41–49. IEEE (2009)Google Scholar
  19. 19.
    Gilmore, S., Hillston, J., Kloul, L., Ribaudo, M.: PEPA nets: a structured performance modelling formalism. Perform. Eval. 54, 79–104 (2003)CrossRefzbMATHGoogle Scholar
  20. 20.
    Helleboogh, A., Vizzari, G., Uhrmacher, A.M., Michel, F.: Modeling dynamic environments in multi-agent simulation. Auton. Agents Multi-Agent Syst. 14(1), 87–116 (2007)CrossRefGoogle Scholar
  21. 21.
    Hermanns, H., Herzog, U., Katoen, J.: Process algebra for performance evaluation. Theor. Comput. Sci. 274(1–2), 43–87 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Hermanns, H., Rettelbach, M.: Syntax, semantics, equivalences and axioms for MTIPP. In: Herzog, U., Rettelbach, M. (eds.) Proceedings of 2nd Process Algebra and Performance Modelling Workshop (1994)Google Scholar
  23. 23.
    Hillston, J.: A Compositional Approach to Performance Modelling. CUP (1995)Google Scholar
  24. 24.
    Latella, D., Loreti, M., Massink, M., Senni, V.: Stochastically timed predicate-based communication primitives for autonomic computing. In: Bertrand, N., Bortolussi, L. (eds.) Proceedings Twelfth International Workshop on Quantitative Aspects of Programming Languages and Systems, QAPL 2014, Grenoble, France, 12–13 April 2014. EPTCS, vol. 154, pp. 1–16 (2014)Google Scholar
  25. 25.
    Bortolussi, L., Nicola, R.D., Galpin, V., Gilmore, S., Hillston, J., Latella, D., Loreti, M., Massink, M.: Carma: collective adaptive resource-sharing markovian agents. In: Proceedings of the Workshop on Quantitative Analysis of Programming Languages 2015 (2015, to appear)Google Scholar
  26. 26.
    Mili, R.Z., Steiner, R.: Modeling agent-environment interactions in adaptive MAS. In: Weyns, D., Brueckner, S.A., Demazeau, Y. (eds.) EEMMAS 2007. LNCS (LNAI), vol. 5049, pp. 135–147. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  27. 27.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes. I. Inf. Comput. 100(1), 1–40 (1992)MathSciNetCrossRefzbMATHGoogle Scholar
  28. 28.
    John, M., Lhoussaine, C., Niehren, J., Uhrmacher, A.M.: The attributed pi calculus. In: Heiner, M., Uhrmacher, A.M. (eds.) CMSB 2008. LNCS (LNBI), vol. 5307, pp. 83–102. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  29. 29.
    Priami, C.: Stochastic \(\pi \)-calculus. Comput. J. 38(7), 578–589 (1995)CrossRefGoogle Scholar
  30. 30.
    Regev, A., Panina, E.M., Silverman, W., Cardelli, L., Shapiro, E.Y.: Bioambients: an abstraction for biological compartments. Theor. Comput. Sci. 325(1), 141–167 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  31. 31.
    Saunier, J., Balbo, F., Pinson, S.: A formal model of communication and context awareness in multiagent systems. J. Logic Lang. Inf. 23(2), 219–247 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  32. 32.
    Tribastone, M., Gilmore, S., Hillston, J.: Scalable differential analysis of process algebra models. IEEE Trans. Softw. Eng. 38(1), 205–219 (2012)CrossRefGoogle Scholar
  33. 33.
    Weyns, D., Holvoet, T.: A formal model for situated multi-agent systems. Fundam. Inform. 63(2–3), 125–158 (2004)MathSciNetzbMATHGoogle Scholar
  34. 34.
    Weyns, D., Omicini, A., Odell, J.: Environment as a first class abstraction in multiagent systems. Auton. Agents Multi-Agent Syst. 14(1), 5–30 (2007)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Laboratory for Foundations of Computer ScienceUniversity of EdinburghEdinburghUK
  2. 2.Dipartimento di Statistica, Informatica, Applicazioni “G. Parenti”Università di FirenzeFlorenceItaly
  3. 3.IMTLuccaItaly

Personalised recommendations