Programming (and Learning) Self-Adaptive & Self-Organising Behaviour with ScaFi: for Swarms, Edge-Cloud Ecosystems, and More
Roberto Casadei, Gianluca Aguzzi, Danilo Pianini, Mirko Viroli
- Year
- 2023
- Citations
- 6
Abstract
Large-scale and fully distributed cyber-physical systems (CPS), such as swarm robotics or IoT systems, pose significant challenges for programming and design. These challenges include promoting the desired (emergent) collective and self-organising behaviour, dealing with failures, enacting decentralised coordination, and deploying efficient executions. Aggregate computing is a promising approach that aims to simplify the design of such systems by providing a high-level abstraction for describing collective and self-organising behaviours. In this tutorial, we introduce a toolchain that supports the development of aggregate computing applications, based on ScaFi (a Scala-based language and toolkit for aggregate computing) and Alchemist (a simulator for CPS scenarios). We will showcase the toolchain by means of a series of examples, ranging from simple collective behaviours to more complex self-adaptive and self-organising ones. Finally, we provide several pointers to research opportunities (e.g., related to learning collective behaviours and adaptive large-scale deployments) and applications (e.g., in swarm robotics, edge-cloud ecosystems, and more).
Keywords
Related papers
Statistical Learning Theory
Yuhai Wu, Vladimir Vapnik
1999
Artificial intelligence: a modern approach
1995
Applied Nonlinear Control
Jean-Jacques Slotine, Weiping Li
1991
A new optimizer using particle swarm theory
R.C. Eberhart, James Kennedy
2002