Automatic design of stigmergy-based behaviours for robot swarms

Stigmergy is a form of indirect communication and coordination in which individuals influence their peers by modifying the environment in various ways, including rearranging objects in space and releasing chemicals. For example, some ant species lay pheromone trails to efficiently navigate between food sources and nests. Besides being used by social animals, stigmergy has also inspired the development of algorithms for combinatorial optimisation and multi-robot systems. In swarm robotics, collective behaviours based on stigmergy have always been designed manually, which is time consuming, costly, hardly repeatable, and depends on the expertise of the designer. Here, we show that stigmergy-based behaviours can be produced via automatic design: an optimisation process based on simulations generates collective behaviours for a group of robots that can lay and sense artificial pheromones. The results of our experiments indicate that the collective behaviours designed automatically are as good as—and in some cases better than—those produced manually. By taking advantage of pheromone-based stigmergy, the automatic design process generated collective behaviours that exhibit spatial organisation, memory, and communication.

Chapter 1. Supplementary Note 1: Scalability of automatically generated stigmergy-based behaviours for a swarm of robots  Chapter 1. Supplementary Note 1: Scalability of automatically generated stigmergy-based behaviours for a swarm of robots Small-size arena: S a = 1.7 m² Medium-size arena: S a = 4.5 m² Large-size arena: S a = 12.0 m²

RENDEZVOUS POINT c
The higher, the better

DECISION MAKING b
The higher, the better  The lower, the better The lower, the better The lower, the better The lower, the better

Software Architecture
The control software has the form of a probabilistic finite-state machine.In this architecture, states (Nodes) represent low-level behaviors that the robots execute, and transition conditions (Edges) represent events that trigger the change from one behavior to another.Each low-level behavior and transition condition is a parametric software module.We have designed seven behaviors (nodes) and six transitions (edges) for this study.You will obtain the control software of the robots by assembling and configuring these software modules into a finite-state machines.

Software modules
Following table shows the description of the low level behaviors:

Collective Missions
You will design manual controllers for a robot swarm for four collective missions.In each mission, eight robots collaborate to accomplish a task.The maximum duration of a mission is 180 seconds and each second has 10 control steps.

Aggregation
At the beginning, the robots are randomly placed in the arena.The robots must get close to one another and remain in that formation till the end of the mission.At each control step, the average distance between the robots will be added to the score.We want to minimize the score.

Decision Making
At the beginning, the robots are randomly placed in the arena.At every control step, if a robot is in the Green region, the score will increase by +1 and if a robot is in a Blue region, the score will increase by +2.Both Green and Blue light signals will disappear randomly between 70 to 90 seconds.The robots must gather maximum score at the end of the mission.The scores will be given in negative values, however, the absolute value of the score will correspond to the time the robots spend either in the Green or Blue region.

Rendezvous Point
At the beginning, the robots are randomly placed at the left side of the arena.The robots must reach at green region and stay there till the end of the mission.Both Green and Blue light signals will disappear randomly between 70 to 90 seconds.At the end of the mission, the objected function will be computed as (the number of robots inside green region) -(The number of robots outside the green region).We want to maximize the number of robots inside the green region at the end of the mission.The scores will be given in negative values, however, the absolute value of the score will correspond to the number of robots in the region.E.g., -6 is a better score than -3.

Stop
At the beginning, the robots are randomly placed in the arena.A Blue light signal will appear randomly between 70 to 90 seconds on a random block.All the robots must stop as soon as the signal appears.The score increases if robots stop before Blue signal and Score also increases if robots do not stop after the signal.We want to minimize the score in this mission.

Protocol
 You can choose maximum four Behaviors (Nodes) to design an FSM.
 For each mission, you can only take maximum four hours to design a suitable FSM.
 There is no limit of minimum time.You can finish when you are satisfied with your design.

Instructions
We have setup six computers that are installed with a visualization tool.The visualization tool will allow you to easily drag and drop nodes and edges to create an FSM and execute the FSM to see the simulation of the robot swarm executing your FSM.You can modify/fine-tune your designed as much as possible.

Computer Access
With the following link to an online spreadsheet, you can choose any free time-slot on any free computer.
Online-Spread-sheet (this spread sheet is provided in instructions-for-designers directory) arena: S a = 1.7 m² Medium-size arena: S a = 4.5 m² Large-size arena: S a = 12.

Figure S1. 1 :b
Figure S1.1:Layout of the arenas for scalability experiments.(a) Small-size arena.This arena is the one used in the real-robot experiments.(b) Medium-size arena.(c) Large-size arena.

Figure S1. 3 :
Figure S1.3:Performance achieved by robot swarms in different scalability scenarios.The results are presented using boxplots on a per-mission basis: (a) Aggregation, (b) Decision Making, (c) Rendezvous Point, and (d) Stop.The Aggregation performance is scaled by the square root of the size of the arena.The performance achieved in Decision Making, Rendezvous Point, and Stop are scaled by the number of robots in a swarm N .

Figure S2. 1 :
Figure S2.1:Performance drop.We present the performance drop using error bars on a per-mission basis: (a) Aggregation, (b) Decision Making, (c) Rendezvous Point, and (d) Stop.Vertical segments represent the 95% confidence interval in the median, computed using the Wilcoxon's Signed Ranks statistics.
Behaviors (Nodes) Parameters Description Exploration phe Robot moves by random walk.Stop phe Robot stops at its place Go-to-Color c, phe, fov Robot steadily moves toward objects displaying a specific color Go-Away-Color c, phe, fov Robot steadily moves away from objects displaying a specific color.Go-to-Pheromone phe, fov Robot steadily moves toward pheromone (Magenta color on the floor) Avoid-Pheromone phe, fov Robot steadily moves away from pheromone (Magenta color on the floor).Waggle phe Robot rotates in place for a random period of time. All low-level behaviors are capable of releasing pheromone phe ∈ {0, 1, 2}.The width of a pheromone trail (magenta color) can be controlled by phe.For No-pheromone, thin trail, or thick trail you can respectively select 0, 1, and 2 as values for phe. The parameter fov ∈ {0, 1} determines the field of view of the camera.fov = 0 means the camera can only see in front of it (directional view) and fov = 1 means camera has an omni vision. The parameter c ∈ {R, G, B, Y, C}, determines the color to be Go-toward or move away o c = 1 -> Red o c = 2 -> Green o c = 3 -> Blue o c = 4 -> Yellow o c = 5 -> Cyan Following table shows the description of the condition transitions: Transitions (Edges) Parameters Description  Transition with a fixed probability The parameter β ∈ [0, 1] determines the probability of transitioning.A typical FSM for a robot swarm to perform Coverage (explore maximum area of an arena) is shown as Figure 1.The initial state (Exploration) is represented by a dark circle.The robots start Exploration with a thin Pheromone trail (phe = 1).With a probability β = 0.1, the robots switch their behavior from Exploration to Avoid-color.During Avoid-color, the robots perceive their surrounding with a field-of-view of 360degree (fov = 1) and avoid Red color (c = 1) objects while dropping pheromone (phe = 1).The robots again switch back to Exploration behavior with a probability of β = 0.1.The robots keep executing this FSM till the end of the mission time.

Figure 1 :
Figure 1: An example of a typical FSM you want to reserve a time-slot or you are facing any issue with the connectivity or other technical issue, please immediately contact Anonymized Whattsapp: Anonymized Phone: Anonymized Email: Anonymized Launching Visualization Tool Once you are connected to a PC, open the terminal.Launch a mission by one of the following steps (You can only launch one mission at a time).1.To launch Visualization Tool for Aggregation mission, enter ./start_e1_aggregation.sh 2. To launch Visualization Tool for Decision Making mission, enter ./start_e2_decision.sh 3. To launch Visualization Tool for Rendezvous Point mission, enter ./start_e3_rendezvous.sh 4. To launch Visualization Tool for Stop mission, enter ./start_e4_stop.shOnce you enter a command; the visualization tool will appear in Firefox browser.You can place maximum four nodes.Once you have placed your desired nodes, you will click on "Add Edge".To connect an Edge between two nodes, you will first click on the node from where the Edge is starting, and you will do the second click on the node where the Edge is terminating.For instance, as shown below, to place a Black-floor transition (Edge) between Exploration (Exp) and Stop, you will first click on the Exp and then on the Stop.Once you are ready to test your design, click on "Exec" to execute the simulation.A simulation window will appear.Initially the robots might appear outside of the arena.It is a visualization glitch and does not affect anything.You can observe the behavior of the robots and the score in the simulation.Next, you will close this simulation window and go back to the visualization tool.If you want to modify your design, you can do it as many times as you want.When you are satisfied with the results.Save the design by clicking "Save".A file will download.You have to rename it and save it at an appropriate location.You will generate one such file for each mission and send us those files.
Please Use Product Name and Product Code When Ordering