This repository contains the code used in Queiroz & MacRae (2024) to perform our experiments utilising a swarm of miniature occlusion-based robots to transport objects in complex environments. An extension of Chen (2015), we augment the purely vision-based finite state machine to enable the robots to form "sub-goals" that allows observing robots to trace a path around obstacles; allowing the robots to successfully complete the object transportation task, while maintaining the decentralised, communication-free and vision-based implementation of the original Chen (2015) strategy.
The simulation was implemented with Atta, and it is necessary to install its dependencies to execute it. These are the dependencies for Ubuntu, if you are using another Linux distribution, or another operating system, follow the steps in the Atta README.
sudo apt-get install cmake xorg-dev curl
After that, it is necessary to install Atta, we are using the version object-transportation-project-fixes
.
git clone [email protected]:brenocq/atta.git
cd atta
git checkout object-transportation-project-fixes
./build.sh ---install
Finally, we can execute the simulation
git clone [email protected]:brenocq/object-transportation.git
cd object-transportation/simulation
atta object-transportation.atta
Swarm robotics utilises decentralised self-organising systems to form complex collective behaviours built from the bottom-up using individuals that have limited capabilities. Previous work has shown that simple occlusion-based strategies can be effective in using swarm robotics for the task of transporting objects to a goal position. However, this strategy requires a clear line-of-sight between the object and the goal. In this paper, we extend this strategy by allowing robots to form sub-goals; enabling any member of the swarm to establish a wider range of visibility of the goal, ultimately forming a chain of sub-goals between the object and the goal position. We do so while preserving the fully decentralised and communication-free nature of the original strategy, while maintaining performance in object-free scenarios. In five sets of simulated experiments, we demonstrate the generalisability of our proposed strategy. Our finite-state machine allows a sufficiently large swarm to transport objects around obstacles that block the goal. The method is robust to varying starting positions and can handle both concave and convex shapes.
The states S1: Search For Object
, S2: Approach Object
, S3: Push Object
, and S4: Move Around Object
are similar to the states proposed by Chen (2015). We show that, with the addition of the S5: Be a Goal
, and by allowing the robots to change color, it is possible to extend the swarms capabilities to transpost objects in environments with obstacles. When a robots enter the state S5
, its color changes to green, which will lead other robots will detect it as a goal, and push the object torwards it.
The proposed stated state machine was tested on the four maps presented below.
Reference | Middle | Corner | 2-Corners |
---|---|---|---|
Because the approach proposed by Chen (2015) can only transport the object to the goal when there is no occlusion between the object and the goal, it can only sucessfully complete the reference
map. The proposed state machine, however, can complete all four maps. The Figure below presents the task completion time for each map with varying number of robots, and it is possible to see that incrising the number of robots reduces the completion time. Additionally, the path efficiency presents the ratio between the object trajectory length and the optimal possible trajectory length (1.0 meaning they are the same, and 0.5 meaning the trajectory is twice longer than the optimal).
Please refer to the paper for more in-depth evaluation of the proposed state machine.
- Cunha Queiroz, B., MacRae, D. (2024). Occlusion-based object transportation around obstacles with a swarm of miniature robots. Swarm Intelligence Journal, https://doi.org/10.1007/s11721-024-00246-7
- Chen, J., Gauci, M., Li, W., Kolling, A., Groß, R. (2015). Occlusion-based cooperative transport with a swarm of miniature mobile robots. IEEE Transactions on Robotics, 31 , 307-321, https://doi.org/10.1109/TRO.2015.2400731