Engineering Resilient Collective Adaptive Systems by Self-Stabilisation

11/22/2017
by   Mirko Viroli, et al.
0

Collective adaptive systems are an emerging class of networked computational systems, particularly suited in application domains such as smart cities, complex sensor networks, and the Internet of Things. These systems tend to feature large scale, heterogeneity of communication model (including opportunistic peer-to-peer wireless interaction), and require inherent self-adaptiveness properties to address unforeseen changes in operating conditions. In this context, it is extremely difficult (if not seemingly intractable) to engineer reusable pieces of distributed behaviour so as to make them provably correct and smoothly composable. Building on the field calculus, a computational model (and associated toolchain) capturing the notion of aggregate network-level computation, we address this problem with an engineering methodology coupling formal theory and computer simulation. On the one hand, functional properties are addressed by identifying the largest-to-date field calculus fragment generating self-stabilising behaviour, guaranteed to eventually attain a correct and stable final state despite any transient perturbation in state or topology, and including highly reusable building blocks for information spreading, aggregation, and time evolution. On the other hand, dynamical properties are addressed by simulation, empirically evaluating the different performances that can be obtained by switching between implementations of building blocks with provably equivalent functional properties. Overall, our methodology sheds light on how to identify core building blocks of collective behaviour, and how to select implementations that improve system performance while leaving overall system function and resiliency properties unchanged.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/26/2017

Programming the Interactions of Collective Adaptive Systems by Relying on Attribute-based Communication

Collective adaptive systems are new emerging computational systems consi...
research
03/24/2019

Middleware Building Blocks for Workflow Systems

This paper describes a building blocks approach to the design of scienti...
research
01/10/2022

Macroprogramming: Concepts, State of the Art, and Opportunities of Macroscopic Behaviour Modelling

Macroprogramming refers to the theory and practice of conveniently expre...
research
02/20/2021

Stability and Resilience of Distributed Information Spreading in Aggregate Computing

Spreading information through a network of devices is a core activity fo...
research
02/06/2018

Aggregate Graph Statistics

Collecting statistic from graph-based data is an increasingly studied to...
research
06/05/2020

Path Towards Multilevel Evolution of Robots

Multi-level evolution is a bottom-up robotic design paradigm which decom...
research
06/09/2020

The Computational Patient has Diabetes and a COVID

Medicine is moving from a curative discipline to a preventative discipli...

Please sign up or login with your details

Forgot password? Click here to reset