Abstract
Space and time are key elements for many computer-based systems and often elevated to first-class abstractions. In tuple-based coordination, Linda primitives have been independently extended with space (with tuples and queries spanning spatial regions) or time information (mostly for tuple scoping). However, recent works in collective adaptive systems and aggregate computing show that space and time can naturally be considered as two intertwined facets of a common coordination abstraction for situated distributed systems. Accordingly, we introduce the Spatiotemporal Tuples model, a natural adaptation of Linda model for physically deployed large-scale networks. Unlike prior research, spatiotemporal properties – expressing where and when a tuple should range and has to be deposited/retrieved – naturally turn into specifications of collective adaptive processes, to be carried on in cooperation by the devices filling the computational environment, and sustaining tuple operations in a resilient way, possibly even in mobile and faulty environments. Additionally, the model promotes decentralised implementations where tuples actually reside where they are issued, which is good for supporting peer-to-peer and mobile ad-hoc networks as well as privacy. In this paper, we (i) present and formalise the Spatiotemporal Tuples model, based on the unifying notion of computational space-time structure, (ii) provide an implementation in the ScaFi aggregate computing framework, turning tuple operations into aggregate processes, and finally (iii) provide evaluation through simulation and a rescue case study.
Keywords
- tuple-based coordination
- spatial tuples
- self-organisation
- aggregate computing
- ScaFi
This is a preview of subscription content, access via your institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
This work extends the workshop paper in [17] with formalisation, full implementation, and evaluation.
- 2.
We do not give an explicit syntax for spatio-temporal regions, in order to cover applications with any such syntax. Definable corresponds to space-time computable [2], thus requiring the existence of a computational procedure deciding whether the predicate \(\mathtt {r}(\epsilon , \epsilon ')\) holds in some event \(\epsilon '\) using only information in the past of \(\epsilon '\).
- 3.
References
Alrahman, Y.A., Nicola, R.D., Loreti, M.: Programming interactions in collective adaptive systems by relying on attribute-based communication. Sci. Comput. Program. 192 (2020). https://doi.org/10.1016/j.scico.2020.102428
Audrito, G., Beal, J., Damiani, F., Viroli, M.: Space-time universality of field calculus. In: Di Marzo Serugendo, G., Loreti, M. (eds.) COORDINATION 2018. LNCS, vol. 10852, pp. 1–20. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-92408-3_1
Audrito, G., Casadei, R., Damiani, F., Stolz, V., Viroli, M.: Adaptive distributed monitors of spatial properties for cyber-physical systems. J. Syst. Softw. 175 (2021). https://doi.org/10.1016/j.jss.2021.110908
Audrito, G., Casadei, R., Damiani, F., Viroli, M.: Compositional blocks for optimal self-healing gradients. In: 2017 IEEE 11th International Conference on Self-Adaptive and Self-Organizing Systems (SASO), pp. 91–100. IEEE (2017)
Audrito, G., Damiani, F., Viroli, M., Casadei, R.: Run-time management of computation domains in field calculus. In: IEEE International Workshops on Foundations and Applications of Self* Systems, pp. 192–197. IEEE (2016)
Audrito, G., Viroli, M., Damiani, F., Pianini, D., Beal, J.: A higher-order calculus of computational fields. ACM Trans. Comput. Log. 20(1), 5:1–5:55 (2019). https://doi.org/10.1145/3285956
Beal, J., Dulman, S., Usbeck, K., Viroli, M., Correll, N.: Organizing the aggregate: languages for spatial computing. In: Formal and Practical Aspects of DSLs: Recent Developments, pp. 436–501. IGI Global (2013). http://arxiv.org/abs/1202.5509
Beal, J., Pianini, D., Viroli, M.: Aggregate programming for the Internet of Things. IEEE Comput. 48(9), 22–30 (2015). https://doi.org/10.1109/MC.2015.261
Boix, E.G., Scholliers, C., De Meuter, W., D’Hondt, T.: Programming mobile context-aware applications with TOTAM. J. Syst. Softw. 92, 3–19 (2014)
Brewer, E.: Cap twelve years later: how the “rules” have changed. Computer 45(2), 23–29 (2012)
Busi, N., Gorrieri, R., Zavattaro, G.: On the expressiveness of Linda coordination primitives. Inf. Comput. 156(1–2), 90–121 (2000)
Casadei, R., Pianini, D., Placuzzi, A., Viroli, M., Weyns, D.: Pulverization in cyber-physical systems: engineering the self-organizing logic separated from deployment. Future Internet 12(11), 203 (2020)
Casadei, R., Pianini, D., Viroli, M.: Simulating large-scale aggregate MASs with Alchemist and Scala. In: 2016 Federated Conference on Computer Science and Information Systems (FedCSIS), pp. 1495–1504. IEEE (2016)
Casadei, R., Viroli, M., Audrito, G., Damiani, F.: FScaFi: a core calculus for collective adaptive systems programming. In: Margaria, T., Steffen, B. (eds.) ISoLA 2020. LNCS, vol. 12477, pp. 344–360. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-61470-6_21
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
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)
Casadei, R., Viroli, M., Ricci, A.: Collective adaptive systems as coordination media: the case of tuples in space-time. In: 1st IEEE International Conference on Autonomic Computing and Self-Organizing Systems, ACSOS, Companion Volume, pp. 139–144. IEEE (2020). https://doi.org/10.1109/ACSOS-C51401.2020.00045
Ciancia, V., Latella, D., Massink, M., Paškauskas, R., Vandin, A.: A tool-chain for statistical spatio-temporal model checking of bike sharing systems. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016. LNCS, vol. 9952, pp. 657–673. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47166-2_46
Coulouris, G., Dollimore, J., Kindberg, T.: Distributed Systems: Concepts and Designs, 3rd edn. Addison-Wesley-Longman, Boston (2002)
DeHon, A., Giavitto, J., Gruau, F. (eds.): Computing Media and Languages for Space-Oriented Computation, Dagstuhl Seminar Proceedings, 03 September–08 September 2006, vol. 06361 (2007). http://drops.dagstuhl.de/portals/06361/
Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. (TOPLAS) 7(1), 80–112 (1985)
Gelernter, D.: Multiple tuple spaces in Linda. In: Odijk, E., Rem, M., Syre, J.-C. (eds.) PARLE 1989. LNCS, vol. 366, pp. 20–27. Springer, Heidelberg (1989). https://doi.org/10.1007/3-540-51285-3_30
Loo, J., Mauri, J.L., Ortiz, J.H.: Mobile Ad Hoc Networks: Current Status and Future Trends. CRC Press, Boca Raton (2016)
Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications: the TOTA approach. ACM Trans. Softw. Eng. Methodol. 18(4), 1–56 (2009). https://doi.org/10.1145/1538942.1538945
Menezes, R., Wood, A.: The fading concept in tuple-space systems. In: Proceedings of the 2006 ACM Symposium on Applied Computing, pp. 440–444 (2006)
Merrick, I., Wood, A.: Scoped coordination in open distributed systems. In: Porto, A., Roman, G.-C. (eds.) COORDINATION 2000. LNCS, vol. 1906, pp. 311–316. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-45263-X_21
Murphy, A.L., Picco, G.P., Roman, G.C.: LIME: a coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Eng. Methodol. 15(3), 279–328 (2006). https://doi.org/10.1145/1151695.1151698
Pauty, J., Couderc, P., Banatre, M., Berbers, Y.: Geo-Linda: a geometry aware distributed tuple space. In: 21st International Conference on Advanced Information Networking and Applications (AINA 2007), pp. 370–377. IEEE (2007)
Pianini, D., Montagna, S., Viroli, M.: Chemical-oriented simulation of computational systems with Alchemist. J. Simul. 7(3), 202–215 (2013). https://doi.org/10.1057/jos.2012.27
Ricci, A., Viroli, M., Omicini, A., Mariani, S., Croatti, A., Pianini, D.: Spatial tuples: augmenting reality with tuples. Expert. Syst. 35(5), e12273 (2018)
Tolksdorf, R., Menezes, R.: Using swarm intelligence in Linda systems. In: Omicini, A., Petta, P., Pitt, J. (eds.) ESAW 2003. LNCS (LNAI), vol. 3071, pp. 49–65. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-25946-6_3
Viroli, M., Beal, J., Damiani, F., Audrito, G., Casadei, R., Pianini, D.: From distributed coordination to field calculus and aggregate computing. J. Log. Algebraic Methods Program. 109 (2019). https://doi.org/10.1016/j.jlamp.2019.100486
Viroli, M., Pianini, D., Beal, J.: Linda in space-time: an adaptive coordination model for mobile ad-hoc environments. In: Sirjani, M. (ed.) COORDINATION 2012. LNCS, vol. 7274, pp. 212–229. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30829-1_15
Winskel, G.: An introduction to event structures. In: de Bakker, J.W., de Roever, W.-P., Rozenberg, G. (eds.) REX 1988. LNCS, vol. 354, pp. 364–397. Springer, Heidelberg (1989). https://doi.org/10.1007/BFb0013026
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 IFIP International Federation for Information Processing
About this paper
Cite this paper
Casadei, R., Viroli, M., Ricci, A., Audrito, G. (2021). Tuple-Based Coordination in Large-Scale Situated Systems. In: Damiani, F., Dardha, O. (eds) Coordination Models and Languages. COORDINATION 2021. Lecture Notes in Computer Science(), vol 12717. Springer, Cham. https://doi.org/10.1007/978-3-030-78142-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-030-78142-2_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-78141-5
Online ISBN: 978-3-030-78142-2
eBook Packages: Computer ScienceComputer Science (R0)
-
Published in cooperation with
http://www.ifip.org/