Mobility Matters
Home›Mobile agents on graphs›Exploration›Graph exploration by a single agent›Exploration by oblivious robots›Exploration by luminous robots

Exploration by luminous robots

Myopic Look–Compute–Move robots with a light of a few colours must visit every node of a ring, grid or torus, and stop or keep visiting; how many robots and colours are needed?

Problem statement and measuresexpand

\(k\) anonymous robots, each with a light that shows one of \(c\) colours, are placed on an anonymous graph \(G=(V,E)\) (a ring, a finite grid or a torus) in an initial configuration designated by the algorithm (positions and colours). Each robot repeats Look–Compute–Move cycles. Look: it sees every node within distance \(\varphi\), with the multiset of colours of the robots on each (so it sees towers, nodes with several robots), and its own colour. Compute: a deterministic function of this snapshot, the same for all robots, gives a new colour and a destination, its own node or a neighbour; the robot sees no identifiers, no ports, and (without chirality) no orientation. Move: it moves there. A fair adversarial scheduler (FSYNC, SSYNC or ASYNC) activates the robots. Terminating exploration: every node is visited by some robot and eventually no robot is enabled. Perpetual exploration: every node is visited infinitely often. With finite \(\varphi\) no algorithm works from every initial configuration, so each result names its initial configurations; some papers also require exclusive executions (no two robots on one node or one edge) or opaque robots, recorded under each result. Measures: the number of robots \(k\) and the number of colours \(c\).

Measures: Robots, number of robots \(k\) needed; Colours, number of colours \(c\) of each light; \(c = 1\) means no usable light (oblivious robots).

tight near-optimal polynomial gap unknown impossible· rows follow the assumption tree; each cell: best upper bound vs lower bound, and what forces the lower bound
Setting
Robots
Colours
Network + static graph, + undirected
—
—
—
—
Scheduler + terminating, + luminous
—
—
—
—
Chirality + \(\varphi=2\)
—
—
Grids, FSYNC, terminating, chirality, \(\varphi = 2\) + chirality, + no faults
0 open · 2 results
tight \(2\) vs \(2\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Grids, FSYNC, terminating, no chirality, \(\varphi = 2\) no chirality, + no faults
0 open · 2 results
tight \(3\) vs \(2\) symmetry breaking
unknown \(2\) vs —
Grids, FSYNC, terminating, chirality, \(\varphi = 1\) \(\varphi=1\), + chirality, + no faults
0 open · 2 results
tight \(2\) vs \(2\) symmetry breaking
tight \(3\) vs \(3\) symmetry breaking
Grids, FSYNC, terminating, no chirality, \(\varphi = 1\) \(\varphi=1\), no chirality, + no faults
1 open · 2 results
tight \(4\) vs \(2\) symmetry breaking
unknown \(3\) vs —
Chirality ASYNC, + \(\varphi=2\)
—
—
Grids, ASYNC, terminating, chirality, \(\varphi = 2\) + chirality, + no faults
0 open · 2 results
tight \(2\) vs \(2\) symmetry breaking
tight \(3\) vs \(2\) symmetry breaking
Grids, ASYNC, terminating, no chirality, \(\varphi = 2\) no chirality, + no faults
0 open · 2 results
tight \(3\) vs \(2\) symmetry breaking
unknown \(3\) vs —
Grids, ASYNC, terminating, chirality, \(\varphi = 1\) ASYNC, \(\varphi=1\), + chirality, + no faults
0 open · 1 results
tight \(3\) vs \(3\) adversarial activation
unknown \(3\) vs —
Grids, ASYNC, terminating, no chirality, \(\varphi = 1\) ASYNC, \(\varphi=1\), no chirality, + no faults
1 open · 1 results
tight \(6\) vs \(3\) adversarial activation
unknown \(3\) vs —
Scheduler + perpetual, + luminous
—
—
—
—
Grids, FSYNC, perpetual, chirality, \(\varphi = 1\) \(\varphi=1\), + chirality, + no faults
0 open · 1 results
tight \(2\) vs \(2\) symmetry breaking
tight \(3\) vs \(3\) symmetry breaking
Grids, FSYNC, perpetual, chirality, \(\varphi = 2\) + \(\varphi=2\), + chirality, + no faults
0 open · 2 results
tight \(2\) vs \(2\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Grids, FSYNC, perpetual, no chirality, \(\varphi = 1\) \(\varphi=1\), no chirality, + no faults
0 open · 1 results
tight \(3\) vs \(3\) symmetry breaking
unknown \(3\) vs —
Chirality ASYNC, + \(\varphi=2\)
—
—
Grids, ASYNC, perpetual, chirality, \(\varphi = 2\) + chirality, + no faults
1 open · 2 results
tight \(3\) vs \(2\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Grids, ASYNC, perpetual, no chirality, \(\varphi = 2\) no chirality, + no faults
1 open · 1 results
tight \(3\) vs \(3\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Grids, ASYNC, perpetual, chirality, \(\varphi = 1\) (exclusive) ASYNC, \(\varphi=1\), + chirality, + no faults
1 open · 0 results
impossible — vs \(\text{impossible}\) locality
impossible — vs —
Grids, ASYNC, perpetual, no chirality, \(\varphi = 3\) ASYNC, + \(\varphi=3\), + no faults
0 open · 1 results
tight \(3\) vs \(3\) symmetry breaking
tight \(1\) vs —
—
—
Scheduler + perpetual, + luminous
—
—
Faults + FSYNC
—
—
Rings, FSYNC, perpetual, \(\varphi = 1\) + no faults
0 open · 1 results
tight \(2\) vs \(2\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Rings, FSYNC, perpetual, up to \(f\) crashes + at most crash faults
1 open · 4 results
tight \(f+2\) vs \(f+2\) trivial
unknown \(3f+2\) vs —
Faults ASYNC, + \(\varphi=2\)
—
—
Rings, ASYNC, perpetual, \(\varphi \ge 2\) + no faults
0 open · 1 results
tight \(2\) vs \(2\) symmetry breaking
unknown \(2\) vs —
Rings, ASYNC, perpetual, up to \(f\) crashes, \(\varphi \ge 2\) + at most crash faults
0 open · 1 results
tight \(2f+2\) vs \(2f+2\) indistinguishable crashes
unknown \(2f+2\) vs —
Rings, ASYNC, perpetual, \(\varphi = 1\) ASYNC, \(\varphi=1\), + no faults
1 open · 1 results
tight \(3\) vs \(3\) adversarial activation
unknown \(2\) vs —
Rings, ASYNC, perpetual, up to \(f\) crashes, \(\varphi = 1\) ASYNC, \(\varphi=1\), + at most crash faults
0 open · 1 results
tight \(3f+3\) vs \(3f+3\) indistinguishable crashes
unknown \(2f+2\) vs —
—
—
Scheduler + luminous
—
—
Rings, FSYNC, terminating, \(\varphi = 1\) + FSYNC, + no faults
1 open · 1 results
tight \(3\) vs \(3\) locality
tight \(2\) vs \(2\) symmetry breaking
Rings, ASYNC, terminating, \(\varphi = 1\) ASYNC, + no faults
1 open · 1 results
tight \(4\) vs \(4\) locality
tight \(2\) vs —
Rings, oblivious, FSYNC, terminating, \(\varphi = 1\) oblivious, + FSYNC, + no faults
0 open · 1 results
tight \(5\) vs \(5\) symmetry breaking
tight \(1\) vs —
Rings, oblivious, ASYNC, terminating, \(\varphi = 1\) oblivious, ASYNC, + no faults
0 open · 0 results
impossible — vs \(\text{impossible}\) symmetry breaking
impossible — vs —
Visibility range + torus, + perpetual, + luminous, + FSYNC
—
—
Chirality + \(\varphi=2\)
—
—
Tori, FSYNC, perpetual, chirality, \(\varphi = 2\) + chirality, + no faults
0 open · 2 results
tight \(3\) vs \(3\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Tori, FSYNC, perpetual, no chirality, \(\varphi = 2\) no chirality, + no faults
1 open · 2 results
tight \(3\) vs \(3\) symmetry breaking
tight \(3\) vs —
Tori, FSYNC, perpetual, chirality, \(\varphi = 1\) \(\varphi=1\), + chirality, + no faults
0 open · 1 results
tight \(3\) vs \(3\) symmetry breaking
tight \(2\) vs \(2\) symmetry breaking
Tori, FSYNC, perpetual, no chirality, \(\varphi = 1\) \(\varphi=1\), no chirality, + no faults
1 open · 1 results
tight \(3\) vs \(3\) symmetry breaking
tight \(3\) vs \(2\) symmetry breaking

Know a better result, or found a mistake? Suggest a result · Report an error. Accepted contributions are acknowledged.