Gianluca Aguzzi ; Roberto Casadei ; Mirko Viroli - MacroSwarm: A Field-based Compositional Framework for Swarm Programming

lmcs:12915 - Logical Methods in Computer Science, August 5, 2025, Volume 21, Issue 3 - https://doi.org/10.46298/lmcs-21(3:13)2025
MacroSwarm: A Field-based Compositional Framework for Swarm ProgrammingArticle

Authors: Gianluca Aguzzi ; Roberto Casadei ; Mirko Viroli

    Swarm behaviour engineering is an area of research that seeks to investigate methods and techniques for coordinating computation and action within groups of simple agents to achieve complex global goals like pattern formation, collective movement, clustering, and distributed sensing. Despite recent progress in the analysis and engineering of swarms (of drones, robots, vehicles), there is still a need for general design and implementation methods and tools that can be used to define complex swarm behaviour in a principled way. To contribute to this quest, this article proposes a new field-based coordination approach, called MacroSwarm, to design and program swarm behaviour in terms of reusable and fully composable functional blocks embedding collective computation and coordination. Based on the macroprogramming paradigm of aggregate computing, MacroSwarm builds on the idea of expressing each swarm behaviour block as a pure function, mapping sensing fields into actuation goal fields, e.g., including movement vectors. In order to demonstrate the expressiveness, compositionality, and practicality of MacroSwarm as a framework for swarm programming, we perform a variety of simulations covering common patterns of flocking, pattern formation, and collective decision-making. The implications of the inherent self-stabilisation properties of field-based computations in MacroSwarm are discussed, which formally guarantee some resilience properties and guided the design of the library.


    Volume: Volume 21, Issue 3
    Published on: August 5, 2025
    Accepted on: May 26, 2025
    Submitted on: January 23, 2024
    Keywords: Artificial Intelligence, Logic in Computer Science, Software Engineering

    Consultation statistics

    This page has been seen 1310 times.
    This article's PDF has been downloaded 409 times.