In this paper, we propose a collective decision-making method for swarms of robots. The method enables a robot swarm to select, from a set of possible actions, the one that has the fastest mean execution time. By means of positive feedback the method achieves consensus on the fastest action. The novelty of our method is that it allows robots to collectively find consensus on the fastest action without measuring explicitly the execution times of all available actions. We study two analytical models of the decision-making method in order to understand the dynamics of the consensus formation process. Moreover, we verify the applicability of the method in a real swarm robotics scenario. To this end, we conduct three sets of experiments that show that a robotic swarm can collectively select the shortest of two paths. Finally, we use a Monte Carlo simulation model to study and predict the influence of different parameters on the method.
Research in swarm robotics focuses mostly on how robots interact and cooperate to perform tasks, rather than on the details of task execution. As a consequence, researchers often consider abstract tasks in their experimental work. For example, foraging is often studied without physically handling objects: the retrieval of an object from a source to a destination is abstracted into a trip between the two locations—no object is physically transported. Despite being commonly used, so far task abstraction has only been implemented in an ad hoc fashion. In this paper, we propose a new approach to abstracting complex tasks in swarm robotics research. This approach is based on a physical device called the “task abstraction module” (TAM) that abstracts single-robot tasks to be performed by an e-puck robot. A complex multi-robot task can be abstracted using a group of TAMs by first modeling the task as the set of its constituent single-robot subtasks and then abstracting each subtask with a TAM. We present a collection of tools for modeling complex tasks, and a framework for controlling a group of TAMs such that the behavior of the group implements the model of the task. The TAM enables research on cooperative behaviors and complex tasks with simple, cost-effective robots such as the e-puck—research that would be difficult and costly to conduct using specialized robots or ad hoc task abstraction. We demonstrate how to abstract a complex task with multiple TAMs in an example scenario involving a swarm of e-puck robots.
We present two empirical studies on the design of control software for robot swarms. In Study A, Vanilla and EvoStick, two previously published automatic design methods, are compared with human designers. The comparison is performed on five swarm robotics tasks that are different from those on which Vanilla and EvoStick have been previously tested. The results show that, under the experimental conditions considered, Vanilla performs better than EvoStick, but it is not able to outperform human designers. The results indicate that Vanilla 's weak element is the optimization algorithm employed to search the space of candidate designs. To improve over Vanilla and with the final goal of obtaining an automatic design method that performs better than human designers, we introduce Chocolate, which differs from Vanilla only in the fact that it adopts a more powerful optimization algorithm. In Study B, we perform an assessment of Chocolate. The results show that, under the experimental conditions considered, Chocolate outperforms both Vanilla and the human designers. Chocolate is the first automatic design method for robot swarms that, at least under specific experimental conditions, is shown to outperform a human designer.
Spatially targeted communication (STC) allows a message sender to choose message recipients based on their location in space. Currently, STC in multirobot systems is limited to centralized systems. In this paper, we propose a novel communication protocol that enables STC in decentralized multirobot systems. The proposed protocol dispenses with the many aspects that underpin previous approaches, including external tracking infrastructure, a priori knowledge, global information, dedicated communication devices or unique robot IDs. We show how off-the-shelf hardware components such as cameras and LEDs can be used to establish ad-hoc STC links between robots. We present a Markov chain model for each of the two constituent parts of our proposed protocol and we show, using both model-based analysis and experimentation, that the proposed protocol is highly scalable. We also present the results of extensive experiments carried out on an autonomous, heterogeneous multirobot system composed of one aerial robot and numerous ground-based robots. Finally, two real world application scenarios are presented in which we show how spatial coordination can be achieved in a decentralized multirobot system through STC.
We introduce AutoMoDe: a novel approach to the automatic design of control software for robot swarms. The core idea in AutoMoDe recalls the approach commonly adopted in machine learning for dealing with the bias–variance tradedoff: to obtain suitably general solutions with low variance, an appropriate design bias is injected. AutoMoDe produces robot control software by selecting, instantiating, and combining preexisting parametric modules—the injected bias. The resulting control software is a probabilistic finite state machine in which the topology, the transition rules and the values of the parameters are obtained automatically via an optimization process that maximizes a task-specific objective function. As a proof of concept, we define AutoMoDe-Vanilla, which is a specialization of AutoMoDe for the e-puck robot. We use AutoMoDe-Vanilla to design the robot control software for two different tasks: aggregation and foraging. The results show that the control software produced by AutoMoDe-Vanilla (i) yields good results, (ii) appears to be robust to the so called reality gap, and (iii) is naturally human-readable.
We study task partitioning in the context of swarm robotics. Task partitioning is the decomposition of a task into subtasks that can be tackled by different workers. We focus on the case in which a task is partitioned into a sequence of subtasks that must be executed in a certain order. This implies that the subtasks must interface with each other, and that the output of a subtask is used as input for the subtask that follows. A distinction can be made between task partitioning with direct transfer and with indirect transfer. We focus our study on the first case: The output of a subtask is directly transferred from an individual working on that subtask to an individual working on the subtask that follows. As a test bed for our study, we use a swarm of robots performing foraging. The robots have to harvest objects from a source, situated in an unknown location, and transport them to a home location. When a robot finds the source, it memorizes its position and uses dead reckoning to return there. Dead reckoning is appealing in robotics, since it is a cheap localization method and it does not require any additional external infrastructure. However, dead reckoning leads to errors that grow in time if not corrected periodically. We compare a foraging strategy that does not make use of task partitioning with one that does. We show that cooperation through task partitioning can be used to limit the effect of dead reckoning errors. This results in improved capability of locating the object source and in increased performance of the swarm. We use the implemented system as a test bed to study benefits and costs of task partitioning with direct transfer. We implement the system with real robots, demonstrating the feasibility of our approach in a foraging scenario.
In this paper, we study a robot swarm that has to perform task allocation in an environment that features periodic properties. In this environment, tasks appear in different areas following periodic temporal patterns. The swarm has to reallocate its workforce periodically, performing a temporal task allocation that must be synchronized with the environment to be effective. We tackle temporal task allocation using methods and concepts that we borrow from the signal processing literature. In particular, we propose a distributed temporal task allocation algorithm that synchronizes robots of the swarm with the environment and with each other. In this algorithm, robots use only local information and a simple visual communication protocol based on light blinking. Our results show that a robot swarm that uses the proposed temporal task allocation algorithm performs considerably more tasks than a swarm that uses a greedy algorithm.
We present an experiment in automatic design of robot swarms. For the first time in the swarm robotics literature, we perform an objective comparison of multiple design methods: we compare swarms designed by two automatic methods—vanilla and EvoStick—with swarms manually designed by human experts. vanilla and EvoStick have been previously published and tested on two tasks. To evaluate their generality, in this paper we test them without any modification on five new tasks. Besides confirming that vanilla is effective, our results provide new insight into the design of robot swarms. In particular, our results indicate that, at least under the adopted experimental protocol, not only does automatic design suffer from the reality gap, but also manual design. The results also show that both manual and automatic methods benefit from bias injection. In this work, bias injection consists in restricting the design search space to the combinations of pre-existing modules. The results indicate that bias injection helps to overcome the reality gap, yielding better performing robot swarms.
In this article, we present property-driven design, a novel top-down design method for robot swarms based on prescriptive modeling and model checking. Traditionally, robot swarms have been developed using a code-and-fix approach: in a bottom-up iterative process, the developer tests and improves the individual behaviors of the robots until the desired collective behavior is obtained. The code-and-fix approach is unstructured, and the quality of the obtained swarm depends completely on the expertise and ingenuity of the developer who has little scientific or technical support in his activity. Property-driven design aims at providing such scientific and technical support, with many advantages compared to the traditional unstructured approach. Property-driven design is composed of four phases: first, the developer formally specifies the requirements of the robot swarm by stating its desired properties; second, the developer creates a prescriptive model of the swarm and uses model checking to verify that this prescriptive model satisfies the desired properties; third, using the prescriptive model as a blueprint, the developer implements a simulated version of the desired robot swarm and validates the prescriptive model developed in the previous step; fourth, the developer implements the desired robot swarm and validates the previous steps. We demonstrate property-driven design using two case studies: aggregation and foraging.
We present two empirical studies on the design of robot swarms. In Study A, Vanilla and EvoStick, two previously published automatic methods, are compared with human designers. The comparison is performed on five new swarm robotics tasks, different from those on which Vanilla and EvoStick have been previously tested. The results show that Vanilla performs better than EvoStick but it is not able to outperform human designers. The results indicate that Vanilla’s weak element is the optimization algorithm employed to search the space of candidate designs. To improve over Vanilla and with the goal of obtaining an automatic design method that performs better that the human designer, we introduce Chocolate, which differs from Vanilla only in the fact that it adopts a more powerful optimization algorithm. In Study B, we perform an assessment of Chocolate. The results show that Chocolate outperforms both Vanilla and the human designers: Chocolate is the first automatic design method for robot swarms that is shown to outperform a human designer.
Swarm robotics systems are characterized by decentralized control, limited communication between robots, use of local information, and emergence of global behavior. Such systems have shown their potential for flexibility and robustness [1]-[3]. However, existing swarm robotics systems are by and large still limited to displaying simple proof-of-concept behaviors under laboratory conditions. It is ...
Task partitioning consists in dividing a task into sub-tasks that can be tackled separately. Partitioning a task might have both positive and negative effects: On the one hand, partitioning might reduce physical interference between workers, enhance exploitation of specialization, and increase efficiency. On the other hand, partitioning may introduce overheads due to coordination requirements. As a result, whether partitioning is advantageous or not has to be evaluated on a case-by-case basis. In this paper we consider the case in which a swarm of robots must decide whether to complete a given task as an unpartitioned task, or utilize task partitioning and tackle it as a sequence of two sub-tasks. We show that the problem of selecting between the two options can be formulated as a multi-armed bandit problem and tackled with algorithms that have been proposed in the reinforcement learning literature. Additionally, we study the implications of using explicit communication between the robots to tackle the studied task partitioning problem. We consider a foraging scenario as a testbed and we perform simulation-based experiments to evaluate the behavior of the system. The results confirm that existing multi-armed bandit algorithms can be employed in the context of task partitioning. The use of communication can result in better performance, but in may also hinder the flexibility of the system.
We propose an approach for autonomous task partitioning in swarms of foraging robots. Task partitioning is the process of decomposing tasks into sub-tasks. Task partitioning impacts tasks execution and associated costs. Our approach is characterized by the use of a cost function, mapping the size of sub-tasks to the overall task cost. The robots model the cost function and use the model to select sub-tasks to perform, aiming to minimize costs. Our approach separates the task partitioning process from task-specific actions and it does not require a priori assumptions to be made about the best partitioning strategy to employ. We study a foraging scenario in which object transportation is performed by different robots, each moving objects for a limited distance. The robots autonomously decide the distance traveled on the basis of our approach. The robots use odometry for navigational purposes; we show that task partitioning reduces the impact of odometry errors and improves performance. We validate our approach using simulation-based experiments. We study how the swarm partitions transportation under a number of experimental conditions characterized by different levels of odometry accuracy, size of the environment and the swarm, and total transportation distance. Our approach leads to partitioning solutions that are appropriate for each condition.
We present a novel multi-robot simulator named ARGoS. ARGoS is designed to simulate complex experiments involving large swarms of robots of different types. ARGoS is the first multi-robot simulator that is at the same time both efficient (fast performance with many robots) and flexible (highly customizable for specific experiments). Novel design choices in ARGoS have enabled this breakthrough. First, in ARGoS, it is possible to partition the simulated space into multiple sub-spaces, managed by different physics engines running in parallel. Second, ARGoS' architecture is multi-threaded, thus designed to optimize the usage of modern multi-core CPUs. Finally, the architecture of ARGoS is highly modular, enabling easy addition of custom features and appropriate allocation of computational resources. We assess the efficiency of ARGoS and showcase its flexibility with targeted experiments. Experimental results demonstrate that simulation run-time increases linearly with the number of robots. A 2D-dynamics simulation of 10,000 e-puck robots can be performed in 60 % of the time taken by the corresponding real-world experiment. We show how ARGoS can be extended to suit the needs of an experiment in which custom functionality is necessary to achieve sufficient simulation accuracy. ARGoS is open source software licensed under GPL3 and is downloadable free of charge.
In swarm robotics, large groups of relatively simple robots cooperate so that they can perform tasks that go beyond their individual capabilities [1], [2]. The interactions among the robots are based on simple behavioral rules that exploit only local information. The robots in a swarm have neither global knowledge, nor a central controller. Therefore, decisions in the swarm have to be taken in a distributed manner based on local interactions. Because of these limitations, the design of collective decision-making methods in swarm robotic systems is a challenging problem. Moreover, the collective decision-making method must be efficient, robust with respect to robot failures, and scale well with the size of the swarm.
Alexander Scheidler合作论文数Faculty of Mathematics and Computer Science;University of Leipzig7
Stefano Nolfi合作论文数Institute of Cognitive Sciences and Technologies, National Research Council3