A language-based software engineering approach for cyber-physical swarms
Aguzzi, Gianluca <1996>
Subject
ING-INF/05 Sistemi di elaborazione delle informazioni
Description
IT systems are becoming increasingly ubiquitous and interconnected, driven by the rise of Internet of Things devices and advancements in edge-cloud computing. This evolution is having a growing impact on society and the economy. An advanced perspective on these systems identifies them as Cyber-Physical Swarm, which consist of large networks of interconnected devices embedded in the physical world, exhibiting collective behaviors. This thesis explores the engineering challenges associated with these systems, focusing on managing the complexities arising from their collective intelligence and large-scale nature. To address these challenges, this work introduces a language-based approach centered on aggregate computing, which is a top-down paradigm designed to describe large-scale collective behaviors. This paradigm was chosen because it facilitates the design of self-organizing behaviors, which are crucial for the resilient operation of CPSWs. Adopting a language-based approach has led to significant advancements in both hybrid methods–combining declarative and sub-symbolic solutions–and standard engineering approaches. Specifically, we identified two major facets to focus on engineering aspects: design patterns–i.e., the reusable solutions to common problems within a given context–and the platform aspects–i.e., the underlying infrastructure that supports the aggregate software. Regarding the former, we have developed new algorithms, APIs, and design methodologies. For the latter, we have taken action at the deployment and collective execution levels. Concurrently, we have explored how learning can be integrated into aggregate programming through a roadmap. We have effectively combined machine learning with aggregate computing both at the pattern level, with work based on many-agent reinforcement learning, specifically collective program sketching and a novel algorithm called field-informed reinforcement learning, and at the platform level with an innovative approach that aims to create distributed schedulers for collective computation. Ultimately, the goal of this research is to provide a holistic approach for the effective design and deployment of large-scale, adaptable, and robust CPSWs.
Aguzzi, Gianluca (2024) A language-based software engineering approach for cyber-physical swarms, [Dissertation thesis], Alma Mater Studiorum Università di Bologna. Dottorato di ricerca in Computer science and engineering , 36 Ciclo. DOI 10.48676/unibo/amsdottorato/11386.