Decentralised gathering of stochastic, oblivious agents on a grid: A case study with 3D M-Blocks
Anıl Özdemir, John W Romanishin, Roderich Groß and Daniela Rus
Abstract
We propose stochastic control policies for gathering a group of embodied agents in a two-dimensional square tile environment. The policies are fully decentralised and can be executed on anonymous, oblivious agents with chirality, but no sense of orientation. The agents require only four ternary digits of information.
We prove that a group of agents, irrespective of initial positions, will almost surely reach a Pareto optimal configuration in finite time.
For one of the control policies, computer simulations show that groups of up to 20 agents consistently reach Pareto optimal configurations, whereas groups of 1000 agents, given the same amount of time, improve the compactness of their configurations on average by 89.2%. The policy also copes well with sensory noise up to a level of 50%.
We also present an experimental validation using six physical 3D M-Block modules, demonstrating the feasibility of the stochastic control approach in practice.
Highlight video
Optimised stochastic control policy parameters
a0 | a1 | a2 | a3 | a4 | |
---|---|---|---|---|---|
A | 0.993 | 0.002 | 0.002 | 0.002 | 0.002 |
B | 0.941 | 0.000 | 0.045 | 0.014 | 0.000 |
C | 0.665 | 0.002 | 0.333 | 0.001 | 0.000 |
D1 | 0.009 | 0.000 | 0.496 | 0.000 | 0.496 |
D2 | 0.996 | 0.000 | 0.003 | 0.000 | 0.000 |
E1 | 0.044 | 0.000 | 0.466 | 0.000 | 0.490 |
E2 | 0.165 | 0.499 | 0.335 | 0.000 | 0.000 |
E3 | 0.496 | 0.004 | 0.499 | 0.000 | 0.000 |
F1 | 0.004 | 0.000 | 0.498 | 0.000 | 0.498 |
F2 | 0.003 | 0.500 | 0.498 | 0.000 | 0.000 |
G | 0.999 | 0.001 | 0.000 | 0.000 | 0.000 |
H1 | 0.556 | 0.444 | 0.000 | 0.000 | 0.000 |
H2 | 0.009 | 0.991 | 0.000 | 0.000 | 0.000 |
H3 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 |
I1 | 0.000 | 1.000 | 0.000 | 0.000 | 0.000 |
I2 | 0.374 | 0.626 | 0.000 | 0.000 | 0.000 |
I3 | 0.985 | 0.015 | 0.000 | 0.000 | 0.000 |
J | 0.005 | 0.995 | 0.000 | 0.000 | 0.000 |
K | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 |