Mobility Matters
Home›Mobile agents on graphs›Exploration›Graph exploration by a single agent›Exploration of recolourable graphs

Exploration of recolourable graphs

A single agent with little or no memory must visit every node of an anonymous graph whose nodes carry colours it can read and rewrite; how many colours are needed, and how much does it help to recolour, to see neighbours or to have port numbers?

Problem statement and measuresexpand

A single deterministic agent starts at a node \(s\) of a connected, simple, undirected, anonymous graph \(G=(V,E)\) with \(n\) nodes, \(m\) edges, maximum degree \(\Delta\) and diameter \(D\). Every node \(v\) holds a colour \(\psi(v)\) from a palette of \(c\) colours that persists between visits. In each step the agent at \(v\) observes \(\psi(v)\) (and, depending on the setting, \(\deg(v)\), port numbers, the entry port, and the multiset of its neighbours' colours), sets \(\psi(v)\) to a new colour (recolours \(v\)) if the setting allows it, and then moves to a neighbour or stops. In the main model Böckenhauer et al. 2023 there are no port numbers: the agent names a colour and the adversary moves it to any neighbour of that colour; the agent is oblivious (it keeps no memory between steps); all nodes start with the initial colour \(c_0\); and the agent must visit every node, return to \(s\) and stop there, from every start and against every adversary. Other settings fix the colours in advance (label-guided exploration), give port numbers, or ask only for perpetual exploration. Measures: the number of colours \(c\), counting \(c_0\) (the main measure); time, the number of moves (traversals of one edge) until termination (or until every node is visited, for perpetual exploration); and the agent's memory. All known results are for one agent.

Measures: Colours, number \(c\) of node colours, counting the initial colour \(c_0\) (for the rotor-router: per node); Time, moves until the agent stops (perpetual: until every node is visited); Memory, bits of agent memory; 0 for an oblivious agent.

Recolourable nodes on cacti

verified
Colours: tightTime: tightMemory: tight

Four colours explore every cactus in \(O(n)\) moves, and four are necessary.

Assumed (added on the last edge are outlined)

+Graph dynamicsstatic graph+Edge directionundirected+Viewthe agent also sees the colours of its neighbours+Recolouringrecolourable: any colour, any number of times+Initial colouringuniform: every node has the initial colour \(c_0\)+Networkcactus (every edge on at most one cycle)

Not assumed

Port numbersno port numbers: the agent names a colour, the adversary picks the neighbourAgent memoryoblivious (no memory, one state)Knowledgenothing known about the graphTermination requirementexplore, then stop at the start node
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.
Port numbers: no ports
Edges carry no port numbers. To move, the agent at \(v\) names a colour \(x\); the adversary moves it to any neighbour \(u\) of \(v\) with \(\psi(u) = x\) (if the agent sees no neighbour colours, to any neighbour). The agent never learns by which edge it arrived.
View: neighbour colours
At node \(v\) the agent observes \(\psi(v)\) and the multiset \(\{\!\{\psi(u) : u \in N(v)\}\!\}\) of its neighbours' colours (hence also \(\deg(v)\)), without knowing which edge leads to which colour unless ports say so.
Agent memory: oblivious
The agent has no internal state: its action (new colour of \(v\), then a move, stay or stop) is a function of its current observation only. Called zero-memory, memoryless or a 1-state robot.
Recolouring: recolourable
At every step the agent at \(v\) may set \(\psi(v)\) to any colour of the palette, including back to \(c_0\), any number of times (the convention of Takahashi et al. 2026 and Hiraoka et al. 2026).
Initial colouring: uniform \(c_0\)
Initially \(\psi(v) = c_0\) for every node \(v\) (clean node memory). The colour \(c_0\) counts as one of the \(c\) colours.
Knowledge: nothing known
The algorithm is the same for all graphs: it knows neither \(n\) nor \(\Delta\) nor any other parameter (a uniform algorithm in Böckenhauer et al. 2023).
Termination requirement: return
The agent visits every node and then halts at its start node \(s\) (exploration with return).
Network: cactus
\(G\) is a cactus: every edge lies on at most one cycle (equivalently, every block is a cycle or a single edge).

What is known

Colours · number \(c\) of node colours, counting the initial colour \(c_0\) (for the rotor-router: per node)
tight
Exactly 4 (counting \(c_0\)); the lower bound is computer-assisted.
lower bound
bottleneckindistinguishable starts
holds when
  • subcubic pseudotrees, which are cacti (Theorem 13)
  • computer-assisted (SAT certificate checked with DRAT)
introductory—
current best
\(4\)
holds for every graph whose blocks are cycles or complete bipartite graphs
Time · moves until the agent stops (perpetual: until every node is visited)
tight
\(\Theta(n)\).
lower bound
\(\Omega(n)\) Bojko et al. 2022
bottleneckevery node visited
holds when
  • trivial: any agent must visit all \(n\) nodes (stated for trees in Bojko et al. 2022)
introductory—
current best
\(O(n)\)
holds for every graph whose blocks are cycles or complete bipartite graphs
Memory · bits of agent memory; 0 for an oblivious agent
tight
Zero bits.
lower boundnone known
introductory—
current best
\(0\)
holds for every graph whose blocks are cycles or complete bipartite graphs

Results, in order of publication

Colours \(5\)Memory \(0\)

Theorem 3: cacti are φ-free. Uses the three colours \(d_0, d_1, d_2\) to keep a directed acyclic graph that guides forward moves and backtracking. Time not analysed.

Hiraoka et al. 2026 current best
Colours \(4\)Time \(O(n)\)Memory \(0\)
holds for every graph whose blocks are cycles or complete bipartite graphs

Theorem 6. Introductory for four colours and current best.

Open questions

  1. Is four colours enough for φ-free graphs, or for graphs of maximum degree three? Both lie between 4 and 5 Hiraoka et al. 2026.

Notes

The four-colour algorithm treats each block on its own, either as a cycle or as a complete bipartite graph \(K_{p,q}\), and handles child blocks recursively Hiraoka et al. 2026. Checked against the full text of the preprint.

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

Recolourable nodes on trees
Colours \(3\)Time \(\Omega(n)\)

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