Skip to main content

Programming Distributed Collective Processes for Dynamic Ensembles and Collective Tasks

  • Conference paper
  • First Online:
Coordination Models and Languages (COORDINATION 2023)

Abstract

Recent trends like the Internet of Things (IoT) suggest a vision of dense and multi-scale deployments of computing devices in nearly all kinds of environments. A prominent engineering challenge revolves around programming the collective adaptive behaviour of such computational ecosystems. This requires abstractions able to capture concepts like ensembles (dynamic groups of cooperating devices) and collective tasks (joint activities carried out by ensembles). In this work, we consider collections of devices interacting with neighbours and that execute in nearly-synchronised sense–compute–interact rounds, where the computation is given by a single control program. To support programming whole computational collectives, we propose the abstraction of a distributed collective process (DCP), which can be used to define at once the ensemble formation logic and its collective task. We implement the abstraction in the eXchange Calculus (XC), a core language based on neighbouring values (maps from neighbours to values) where state management and interaction is handled through a single primitive, exchange. Then, we discuss the features of the abstraction, its suitability for different kinds of distributed computing applications, and provide a proof-of-concept implementation of a wave-like process propagation.

This publication is part of the project NODES which has received funding from the MUR - M4C2 1.5 of PNRR with grant agreement no. ECS00000036. The work was also partially supported by the Italian PRIN project “CommonWears” (2020HCWWLP) and the EU/MUR FSE PON-R &I 2014-2020.

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 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.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

Similar content being viewed by others

References

  1. Abd Alrahman, Y., De Nicola, R., Loreti, M.: Programming interactions in collective adaptive systems by relying on attribute-based communication. Sci. Comput. Programm. 192, 102428 (2020). https://doi.org/10.1016/j.scico.2020.102428

  2. Aguzzi, G., Audrito, G., Casadei, R., Damiani, F., Torta, G., Viroli, M.: A field-based computing approach to sensing-driven clustering in robot swarms. Swarm Intell. 17(1), 27–62 (2023). https://doi.org/10.1007/s11721-022-00215-y

    Article  Google Scholar 

  3. Albani, D., IJsselmuiden, J., Haken, R., Trianni, V.: Monitoring and mapping with robot swarms for agricultural applications. In: 14th IEEE International Conference on Advanced Video and Signal Based Surveillance, AVSS 2017, Lecce, Italy, 29 August - 1 September 2017, pp. 1–6. IEEE Computer Society (2017). https://doi.org/10.1109/AVSS.2017.8078478

  4. Ambrosin, M., Conti, M., Lazzeretti, R., Rabbani, M.M., Ranise, S.: Collective remote attestation at the internet of things scale: state-of-the-art and future challenges. IEEE Commun. Surv. Tutorials 22(4), 2447–2461 (2020). https://doi.org/10.1109/COMST.2020.3008879

    Article  Google Scholar 

  5. Arnold, R., Jablonski, J., Abruzzo, B., Mezzacappa, E.: Heterogeneous UAV multi-role swarming behaviors for search and rescue. In: Rogova, G., McGeorge, N.M., Ruvinsky, A., Fouse, S., Freiman, M.D. (eds.) IEEE Conference on Cognitive and Computational Aspects of Situation Management, CogSIMA 2020, Victoria, BC, Canada, 24–29 August 2020, pp. 122–128. IEEE (2020). https://doi.org/10.1109/CogSIMA49017.2020.9215994

  6. Atzori, L., Iera, A., Morabito, G.: The internet of things: a survey. Comput. Networks 54(15), 2787–2805 (2010). https://doi.org/10.1016/j.comnet.2010.05.010

    Article  MATH  Google Scholar 

  7. Audrito, G.: FCPP: an efficient and extensible field calculus framework. In: International Conference on Autonomic Computing and Self-Organizing Systems (ACSOS), pp. 153–159. IEEE (2020). https://doi.org/10.1109/ACSOS49614.2020.00037

  8. Audrito, G., Casadei, R., Damiani, F., Pianini, D., Viroli, M.: Optimal resilient distributed data collection in mobile edge environments. Comput. Electr. Eng. 96(Part), 107580 (2021). https://doi.org/10.1016/j.compeleceng.2021.107580

  9. Audrito, G., Casadei, R., Damiani, F., Salvaneschi, G., Viroli, M.: Functional programming for distributed systems with XC. In: Ali, K., Vitek, J. (eds.) 36th European Conference on Object-Oriented Programming, ECOOP 2022, 6–10 June 2022, Berlin, Germany. LIPIcs, vol. 222, pp. 20:1–20:28. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2022). https://doi.org/10.4230/LIPIcs.ECOOP.2022.20

  10. Audrito, G., Casadei, R., Torta, G.: Towards integration of multi-agent planning with self-organising collective processes. In: IEEE International Conference on Autonomic Computing and Self-Organizing Systems, ACSOS 2021, Companion Volume, Washington, DC, USA, 27 September - 1 October 2021, pp. 297–298. IEEE (2021). https://doi.org/10.1109/ACSOS-C52956.2021.00042

  11. Audrito, G., Casadei, R., Torta, G.: On the dynamic evolution of distributed computational aggregates. In: IEEE International Conference on Autonomic Computing and Self-Organizing Systems Companion, ACSOS-C 2022, Virtual, CA, USA, 19–23 September 2022, pp. 37–42. IEEE (2022). https://doi.org/10.1109/ACSOSC56246.2022.00024

  12. Audrito, G., Rapetta, L., Torta, G.: Extensible 3D simulation of aggregated systems with FCPP. In: ter Beek, M.H., Sirjani, M. (eds.) Coordination Models and Languages. COORDINATION 2022. IFIP Advances in Information and Communication Technology, vol. 13271, pp. 55–71. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-08143-9_4

  13. Beal, J., Dulman, S., Usbeck, K., Viroli, M., Correll, N.: Organizing the aggregate: languages for spatial computing. In: Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, chap. 16, pp. 436–501. IGI Global (2013). https://doi.org/10.4018/978-1-4666-2092-6.ch016

  14. Boissier, O., Bordini, R.H., Hubner, J., Ricci, A.: Multi-agent oriented programming: programming multi-agent systems using JaCaMo. Mit Press (2020)

    Google Scholar 

  15. Brambilla, M., Ferrante, E., Birattari, M., Dorigo, M.: Swarm robotics: a review from the swarm engineering perspective. Swarm Intell. 7(1), 1–41 (2013). https://doi.org/10.1007/s11721-012-0075-2

  16. Bulling, N.: A survey of multi-agent decision making. KI - Künstliche Intelligenz 28(3), 147–158 (2014). https://doi.org/10.1007/s13218-014-0314-3

    Article  Google Scholar 

  17. Casadei, R.: Artificial collective intelligence engineering: a survey of concepts and perspectives (2023). https://doi.org/10.48550/ARXIV.2304.05147. https://arxiv.org/abs/2304.05147. Accepted for Publication in the Artificial Life Journal (MIT Press)

  18. Casadei, R.: Macroprogramming: Concepts, state of the art, and opportunities of macroscopic behaviour modelling. ACM Computing Surveys (2023). https://doi.org/10.1145/3579353

  19. Casadei, R., Pianini, D., Viroli, M., Natali, A.: Self-organising coordination regions: a pattern for edge computing. In: Riis Nielson, H., Tuosto, E. (eds.) COORDINATION 2019. LNCS, vol. 11533, pp. 182–199. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-22397-7_11

    Chapter  Google Scholar 

  20. Casadei, R., Viroli, M., Audrito, G., Pianini, D., Damiani, F.: Aggregate processes in field calculus. In: Riis Nielson, H., Tuosto, E. (eds.) COORDINATION 2019. LNCS, vol. 11533, pp. 200–217. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-22397-7_12

    Chapter  MATH  Google Scholar 

  21. Casadei, R., Viroli, M., Audrito, G., Pianini, D., Damiani, F.: Engineering collective intelligence at the edge with aggregate processes. Eng. Appl. Artif. Intell. 97, 104081 (2021)

    Article  Google Scholar 

  22. Casadei, R., Viroli, M., Ricci, A., Audrito, G.: Tuple-based coordination in large-scale situated systems. In: Damiani, F., Dardha, O. (eds.) COORDINATION 2021. LNCS, vol. 12717, pp. 149–167. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-78142-2_10

    Chapter  Google Scholar 

  23. De Nicola, R., Jähnichen, S., Wirsing, M.: Rigorous engineering of collective adaptive systems: special section. Int. J. Softw. Tools Technol. Transfer 22(4), 389–397 (2020). https://doi.org/10.1007/s10009-020-00565-0

    Article  Google Scholar 

  24. Gelernter, D., Carriero, N.: Coordination languages and their significance. Commun. ACM 35(2), 96–107 (1992). https://doi.org/10.1145/129630.376083

  25. Giudice, N.D., Matteucci, L., Quadrini, M., Rehman, A., Loreti, M.: Sibilla: a tool for reasoning about collective systems. In: ter Beek, M.H., Sirjani, M. (eds.) Coordination Models and Languages. COORDINATION 2022. IFIP Advances in Information and Communication Technology, vol. 13271, pp. 92–98. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-08143-9_6

  26. Groß, R., Dorigo, M.: Towards group transport by swarms of robots. Int. J. Bio Inspired Comput. 1(1/2), 1–13 (2009). https://doi.org/10.1504/IJBIC.2009.022770

    Article  Google Scholar 

  27. Gruber, T.: Collective knowledge systems: where the social web meets the semantic web. J. Web Semant. 6(1), 4–13 (2008). https://doi.org/10.1016/j.websem.2007.11.011

    Article  Google Scholar 

  28. Gunther, H., Riebl, R., Wolf, L.C., Facchi, C.: Collective perception and decentralized congestion control in vehicular ad-hoc networks. In: 2016 IEEE Vehicular Networking Conference, VNC 2016, Columbus, OH, USA, 8–10 December 2016, pp. 1–8. IEEE (2016). https://doi.org/10.1109/VNC.2016.7835931

  29. Gupta, G.: Language-based software engineering. Sci. Comput. Program. 97, 37–40 (2015). https://doi.org/10.1016/j.scico.2014.02.010

    Article  Google Scholar 

  30. Hendler, J., Berners-Lee, T.: From the semantic web to social machines: a research challenge for AI on the world wide web. Artif. Intell. 174(2), 156–161 (2010). https://doi.org/10.1016/j.artint.2009.11.010

    Article  MathSciNet  Google Scholar 

  31. Horling, B., Lesser, V.R.: A survey of multi-agent organizational paradigms. Knowl. Eng. Rev. 19(4), 281–316 (2004). https://doi.org/10.1017/S0269888905000317

    Article  Google Scholar 

  32. Igarashi, A., Pierce, B.C., Wadler, P.: Featherweight Java: a minimal core calculus for Java and GJ. ACM Trans. Program. Lang. Syst. 23(3), 396–450 (2001)

    Article  Google Scholar 

  33. Karagiannis, V., Schulte, S.: Distributed algorithms based on proximity for self-organizing fog computing systems. Pervasive Mob. Comput. 71, 101316 (2021). https://doi.org/10.1016/j.pmcj.2020.101316

    Article  Google Scholar 

  34. Li, J., Xiang, T., He, L.: Modeling epidemic spread in transportation networks: a review. J. Traffic Transport. Eng. (English Edit.) 8(2), 139–152 (2021). https://doi.org/10.1016/j.jtte.2020.10.003

    Article  Google Scholar 

  35. Liu, C., Hua, J., Julien, C.: SCENTS: collaborative sensing in proximity iot networks. In: IEEE International Conference on Pervasive Computing and Communications Workshops, PerCom Workshops 2019, Kyoto, Japan, 11–15 March 2019, pp. 189–195. IEEE (2019). https://doi.org/10.1109/PERCOMW.2019.8730863

  36. Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications with the TOTA middleware. In: Pervasive Computing and Communications, 2004, pp. 263–273. IEEE (2004). https://doi.org/10.1109/PERCOM.2004.1276864

  37. McGuire, K., Wagter, C.D., Tuyls, K., Kappen, H.J., de Croon, G.C.H.E.: Minimal navigation solution for a swarm of tiny flying robots to explore an unknown environment. Sci. Robotics 4(35), eaaw9710 (2019). https://doi.org/10.1126/scirobotics.aaw9710

  38. Mohan, N., Kangasharju, J.: Edge-Fog cloud: a distributed cloud for internet of things computations. In: 2016 Cloudification of the Internet of Things, CIoT 2016, Paris, France, 23–25 November 2016, pp. 1–6. IEEE (2016). https://doi.org/10.1109/CIOT.2016.7872914

  39. Navarro, I., Matía, F.: A survey of collective movement of mobile robots. Int. J. Adv. Robotic Syst. 10(1), 73 (2013). https://doi.org/10.5772/54600

  40. Newton, R., Welsh, M.: Region streams: Functional macroprogramming for sensor networks. In: Workshop on Data Management for Sensor Networks, pp. 78–87 (2004). https://doi.org/10.1145/1052199.1052213

  41. Nicola, R.D., Loreti, M., Pugliese, R., Tiezzi, F.: A formal approach to autonomic systems programming: the SCEL language. ACM Trans. Auton. Adapt. Syst. 9(2), 1–29 (2014). https://doi.org/10.1145/2619998

  42. Papadopoulos, G.A., Arbab, F.: Coordination models and languages. Adv. Comput. 46, 329–400 (1998). https://doi.org/10.1016/S0065-2458(08)60208-9

    Article  Google Scholar 

  43. Pianini, D., Casadei, R., Viroli, M.: Self-stabilising priority-based multi-leader election and network partitioning. In: IEEE International Conference on Autonomic Computing and Self-Organizing Systems, ACSOS 2022, Virtual, CA, USA, 19–23 September 2022, pp. 81–90. IEEE (2022). https://doi.org/10.1109/ACSOS55765.2022.00026

  44. Pianini, D., Casadei, R., Viroli, M., Mariani, S., Zambonelli, F.: Time-fluid field-based coordination through programmable distributed schedulers. Log. Methods Comput. Sci. 17(4), 18 (2021). https://doi.org/10.46298/lmcs-17(4:13)2021

  45. Pianini, D., Casadei, R., Viroli, M., Natali, A.: Partitioned integration and coordination via the self-organising coordination regions pattern. Future Gener. Comput. Syst. 114, 44–68 (2021). https://doi.org/10.1016/j.future.2020.07.032

    Article  Google Scholar 

  46. Scekic, O., Schiavinotto, T., Videnov, S., Rovatsos, M., Truong, H.L., Miorandi, D., Dustdar, S.: A programming model for hybrid collaborative adaptive systems. IEEE Trans. Emerg. Top. Comput. 8(1), 6–19 (2020). https://doi.org/10.1109/TETC.2017.2702578

    Article  Google Scholar 

  47. Sudharsan, B., Yadav, P., Nguyen, D., Kafunah, J., Breslin, J.G.: Ensemble methods for collective intelligence: combining ubiquitous ML models in IoT. In: 2021 IEEE International Conference on Big Data (Big Data), Orlando, FL, USA, 15–18 December 2021, pp. 1960–1963. IEEE (2021). https://doi.org/10.1109/BigData52589.2021.9671901

  48. Testa, L., Audrito, G., Damiani, F., Torta, G.: Aggregate processes as distributed adaptive services for the industrial internet of things. Pervasive Mob. Comput. 85, 101658 (2022). https://doi.org/10.1016/j.pmcj.2022.101658

    Article  Google Scholar 

  49. Viroli, M., Beal, J., Damiani, F., Audrito, G., Casadei, R., Pianini, D.: From distributed coordination to field calculus and aggregate computing. vol. 109 (2019). https://doi.org/10.1016/j.jlamp.2019.100486

  50. Welsh, M., Mainland, G.: Programming sensor networks using abstract regions. In: Morris, R.T., Savage, S. (eds.) 1st Symposium on Networked Systems Design and Implementation (NSDI 2004), 29–31 March 2004, San Francisco, California, USA, Proceedings. pp. 29–42. USENIX (2004). http://www.usenix.org/events/nsdi04/tech/welsh.html

  51. Weyns, D., Holvoet, T.: Regional synchronization for simultaneous actions in situated multi-agent systems. In: Mařík, V., Pěchouček, M., Müller, J. (eds.) CEEMAS 2003. LNCS (LNAI), vol. 2691, pp. 497–510. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-45023-8_48

    Chapter  MATH  Google Scholar 

  52. Wolf, T.D., Holvoet, T.: Designing self-organising emergent systems based on information flows and feedback-loops. In: Proceedings of the First International Conference on Self-Adaptive and Self-Organizing Systems, SASO 2007, Boston, MA, USA, 9–11 July 2007, pp. 295–298. IEEE Computer Society (2007). https://doi.org/10.1109/SASO.2007.16

  53. Wood, Z., Galton, A.: A taxonomy of collective phenomena. Appl. Ontol. 4(3–4), 267–292 (2009). https://doi.org/10.3233/ao-2009-0071

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roberto Casadei .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 IFIP International Federation for Information Processing

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Audrito, G., Casadei, R., Damiani, F., Torta, G., Viroli, M. (2023). Programming Distributed Collective Processes for Dynamic Ensembles and Collective Tasks. In: Jongmans, SS., Lopes, A. (eds) Coordination Models and Languages. COORDINATION 2023. Lecture Notes in Computer Science, vol 13908. Springer, Cham. https://doi.org/10.1007/978-3-031-35361-1_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-35361-1_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-35360-4

  • Online ISBN: 978-3-031-35361-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics