Skip to main content

Modelling and Analysis of Collective Adaptive Systems with CARMA and its Tools

  • Chapter
  • First Online:
Formal Methods for the Quantitative Evaluation of Collective Adaptive Systems (SFM 2016)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9700))

Abstract

Collective Adaptive Systems (CAS) are heterogeneous collections of autonomous task-oriented systems that cooperate on common goals forming a collective system. 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.

This chapter presents Carma, a language recently defined to support specification and analysis of collective adaptive systems, and its tools developed for supporting system design and analysis. Carma is equipped with linguistic constructs specifically developed for modelling and programming systems that can operate in open-ended and unpredictable environments. The chapter also presents the Carma Eclipse plug-in that allows Carma models to be specified by means of an appropriate high-level language. Finally, we show how Carma and its tools can be used to support specification with a simple but illustrative example of a socio-technical collective adaptive system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    The precise syntax of expressions e has been deliberately omitted. We only assume that expressions are built using the appropriate combinations of values, attributes (sometime prefixed with \(\mathsf {my}\)), variables and the special term \(\mathsf {now}{}\). The latter is used to refer to current time unit.

  2. 2.

    Here we use \(\bullet \) to denote the unit value.

  3. 3.

    Here we assume that functions mtime and atime are obtained after some observations on real systems.

  4. 4.

    We let \(\llbracket \cdot \rrbracket _{\gamma }\) denote the evaluation function of an expression/predicate with respect to the store \(\gamma \).

  5. 5.

    All the operators are right associative and presented in the order of priority.

  6. 6.

    Detailed installation instructions can be found at http://quanticol.sourceforge.net.

  7. 7.

    http://commons.apache.org.

References

  1. Alrahman, Y.A., De Nicola, R., Loreti, M.: On the power of attribute-based communication. CoRR, abs/1602.05635 (2016)

    Google Scholar 

  2. Alrahman, Y.A., De Nicola, R., Loreti, M., Tiezzi, F., Vigo, R.: A calculus for attribute-based communication. In: Proceedings of SAC, pp. 1840–1845. ACM (2015)

    Google Scholar 

  3. Bergstra, J.A., Ponse, A., Smolka, S.A.: Handbook of Process Algebra. Elsevier, Amsterdam (2001)

    MATH  Google Scholar 

  4. Bernardo, M., Gorrieri, R.: A tutorial on EMPA: a theory of concurrent processes with nondeterminism, priorities, probabilities and time. Theoret. Comput. Sci. 202(1–2), 1–54 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  5. Bohnenkamp, H.C., D’Argenio, P.R., Hermanns, H., Katoen, J.-P.: MODEST: a compositional modeling formalism for hard and softly timed systems. IEEE Trans. Software Eng. 32(10), 812–830 (2006)

    Article  Google Scholar 

  6. Bortolussi, L., Gast, N.: Mean-field limits beyond ordinary differential equations. Springer. In: SFM (2016)

    Google Scholar 

  7. Bortolussi, L., De Nicola, R., Galpin, V., Gilmore, S., Hillston, J., Latella, D., Loreti, M., Massink, M.: Collective adaptive resource-sharing Markovian agents. In: Proceedings of the Workshop on Quantitative Analysis of Programming Languages, vol. 194, EPTCS, pp. 16–31 (2015)

    Google Scholar 

  8. Bortolussi, L., Policriti, A.: Hybrid dynamics of stochastic programs. Theor. Comput. Sci. 411(20), 2052–2077 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  9. Ciocchetta, F., Hillston, J.: Bio-PEPA: a framework for the modelling and analysis of biological systems. Theoret. Comput. Sci. 410(33), 3065–3084 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  10. De Maio, P.: Bike-sharing: Its history, impacts, models of provision, and future. J. Public Transp. 12(4), 41–56 (2009)

    Article  Google Scholar 

  11. De Nicola, R., Latella, D., Loreti, M., Massink, M.: A uniform definition of stochastic process calculi. ACM Comput. Surv. 46(1), 5 (2013)

    Article  MATH  Google Scholar 

  12. De Nicola, R., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: The SCEL language. TAAS 9(2), 7 (2014)

    Article  Google Scholar 

  13. 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 

  14. Fricker, C., Gast, N.: Incentives and redistribution in bike-sharing systems (2013). Accessed 17 Sept 2013

    Google Scholar 

  15. Galpin, V.: Spatial representations and analysis techniques. In: Bernardo, M., De Nicola, R., Hillston, J. (eds.) SFM 2016. LNCS, vol. 9700, pp. 120–155. Springer, Switzerland (2016)

    Google Scholar 

  16. Daniel, T.: Gillespie. A general method for numerically simulating the stochastic time evolution of coupled chemical reactions. J. Comput. Phys. 22(4), 403–434 (1976)

    Article  Google Scholar 

  17. Hermanns, H., Herzog, U., Katoen, J.-P.: Process algebra for performance evaluation. Theor. Comput. Sci. 274(1–2), 43–87 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  18. 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 

  19. Hillston, J.: A compositional approach to performance modelling. Cambridge University Press, New York (1996). ISBN:0-521-57189-8

    Google Scholar 

  20. Hillston, J., Loreti, M.: Specification and analysis of open-ended systems with CARMA. In: Weyns, D., et al. (eds.) E4MAS 2014 - 10 years later. LNCS, vol. 9068, pp. 95–116. Springer, Heidelberg (2015). doi:10.1007/978-3-319-23850-0_7

    Chapter  Google Scholar 

  21. Latella, D., Loreti, M., Massink, M.: Investigating fluid-flow semantics of asynchronous tuple-based process languages for collective adaptive systems. In: Holvoet, T., Viroli, M. (eds.) Coordination Models and Languages. LNCS, vol. 9037, pp. 19–34. Springer, Heidelberg (2015)

    Google Scholar 

  22. 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, QApPL 2014, Grenoble, France, 12–13 , vol. 154, EPTCS, pp. 1–16, April 2014

    Google Scholar 

  23. Priami, C.: Stochastic \(\pi \)-calculus. Comput. J. 38(7), 578–589 (1995)

    Article  Google Scholar 

  24. Saunier, J., Balbo, F., Pinson, S.: A formal model of communication and context awareness in multiagent systems. J. Logic Lang. Inform. 23(2), 219–247 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  25. Vandin, A., Tribastone, M.: Quantitative abstractions for collective adaptive systems. Springer. In: SFM (2016)

    Google Scholar 

  26. Weyns, D., Holvoet, T.: A formal model for situated multi-agent systems. Fundam. Inform. 63(2–3), 125–158 (2004)

    MathSciNet  MATH  Google Scholar 

  27. Weyns, D., Omicini, A., Odell, J.: Environment as a first class abstraction in multiagent systems. Auton. Agent. Multi-Agent Syst. 14(1), 5–30 (2007)

    Article  Google Scholar 

Download references

Acknowledgements

This work is partially supported by the EU project QUANTICOL, 600708. The authors thank Stephen Gilmore for his helpful comments on the chapter.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michele Loreti .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Loreti, M., Hillston, J. (2016). Modelling and Analysis of Collective Adaptive Systems with CARMA and its Tools. In: Bernardo, M., De Nicola, R., Hillston, J. (eds) Formal Methods for the Quantitative Evaluation of Collective Adaptive Systems. SFM 2016. Lecture Notes in Computer Science(), vol 9700. Springer, Cham. https://doi.org/10.1007/978-3-319-34096-8_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-34096-8_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-34095-1

  • Online ISBN: 978-3-319-34096-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics