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, a torus or a triangular grid) 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).

Triangular grids, FSYNC, perpetual, chirality, \(\varphi = 2\)

draft
Robots: tightColours: unknown

With common chirality and \(\varphi = 2\), two robots with two colours explore a triangular grid perpetually under FSYNC.

Assumed (added on the last edge are outlined)

+Graph dynamicsstatic graph+Edge directionundirected+Networkrectangle-enclosed triangular grid+Exploration goalperpetual exploration (visit every node infinitely often)+Lights (memory and messages)full light (LUMI): visible to the robot and to the others+Schedulerfully synchronous (FSYNC)+Visibility range\(\varphi = 2\) (results hold for every \(\varphi \ge 2\))+Chiralitycommon chirality (same clockwise direction)+Faultsno faults

Not assumed

Identifiersanonymous: all agents are identical
Formal definitions of this setting
Graph dynamics: static graph
\(G_t=G\) for all \(t\): the edge set never changes.
Edge direction: undirected
\(G=(V,E)\) with \(E\subseteq\binom V2\); every edge can be traversed in both directions.
Network: triangular grid
The subgraph of the infinite triangular grid (every node of degree six, every face an equilateral triangle of unit side) induced by the nodes on or inside a rectangle, one pair of whose sides is parallel to a family of grid lines; the lines parallel to those sides are its columns. It is anonymous and its dimensions are unknown. Corner nodes have degree two or three and other border nodes degree three, four or five, so the border is seen from within range as on a square grid, but with more cases.
Exploration goal: perpetual
Every node is visited by at least one robot infinitely often; robots never stop.
Lights (memory and messages): luminous
LUMI (luminous robots): each robot has a light with \(c\) colours, set at the end of Compute, persistent across cycles, and visible to the robot itself and to every robot within distance \(\varphi\) Das et al. 2016. It is both memory and message. A Look returns, for every node within distance \(\varphi\), the multiset of colours of the robots on it.
Scheduler: FSYNC
FSYNC: in every round every robot executes one atomic Look–Compute–Move cycle.
Visibility range: \(\varphi=2\)
As for \(\varphi = 1\), but the robot sees every node at distance at most \(\varphi = 2\). An algorithm for \(\varphi = 2\) works for every larger \(\varphi\), since a robot can ignore what lies further away.
Chirality: chirality
All robots agree on the clockwise direction: a snapshot is known up to rotation only (no reflection), so a robot on an axis of symmetry of its view can still tell its two sides apart. Robots still share no North.
Faults: no faults
All agents follow the algorithm forever.
Identifiers: anonymous
All agents run the same deterministic algorithm on the same input; no agent has a label. Formally the label function is constant: \(\mathrm{id}(a)=\mathrm{id}(b)\) for all agents \(a,b\).

What is known

Robots · number of robots \(k\) needed
tight
Two.
lower bound
bottlenecksymmetry breaking
holds when
  • one robot, any number of colours and any finite \(\varphi\) (Theorem 3.1)
  • proof sketch only
introductory—
current best
\(2\)
initial configuration: two robots on one column or diagonal line within distance two, coloured \(L\) and \(F\)at least four columns of at least four nodesno two robots share a node
Colours · number of colours \(c\) of each light; \(c = 1\) means no usable light (oblivious robots)
unknown
The one-colour impossibility of Das et al. 2025c (Theorem 3.2) is argued for self-inconsistent robots without chirality.
lower boundnone known
introductory—
current best
\(2\)
initial configuration: two robots on one column or diagonal line within distance two, coloured \(L\) and \(F\)at least four columns of at least four nodesno two robots share a node

Results, in order of publication

Das et al. 2025c current best
Robots \(2\)Colours \(2\)
initial configuration: two robots on one column or diagonal line within distance two, coloured \(L\) and \(F\)at least four columns of at least four nodesno two robots share a node

Introductory and current best (algorithm \(A^{VRL}_{222}\), Section 5), built like \(A^{VRL}_{123}\) with a single leader colour.

Open questions

None recorded for this variant.

Notes

Proof sketches only (five-page short paper), so the setting stays a draft.

What carries over from neighbouring settings

Read off the order of assumptions, not checked case by case: results may carry extra assumptions (shown on their pages), and asynchronous time is measured in epochs.

Algorithms from weaker settings work here

Lower bounds from stronger settings hold here

No catalogued stronger setting.

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