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 collective intelligence, we perform a variety of simulations covering common patterns of flocking, morphogenesis, and collective decision-making.
翻译:群体行为工程是一个研究领域,旨在探索协调简单智能体群组中计算与行动的方法和技术,以实现复杂全局目标,如模式形成、集体移动、集群和分布式感知。尽管在群体(无人机、机器人、车辆)分析和工程方面近期取得进展,但仍需通用的设计和实现方法与工具,以原则化方式定义复杂群体行为。为促进这一探索,本文提出一种新的基于场协调方法,称为MacroSwarm,用于通过可复用且完全可组合的功能模块来设计和编程群体行为,这些模块内嵌集体计算与协调。基于聚合计算这一宏编程范式,MacroSwarm将每个群体行为模块表达为纯函数,将感知场映射为驱动目标场(例如包含移动向量)。为证明MacroSwarm作为集体智能框架的表达力、组合性和实用性,我们执行了多种模拟,涵盖常见的集群、形态发生和集体决策模式。