Mobility Matters
Home›Model

Mobile agents on graphs

Memory-bounded agents move along the edges of a port-labelled graph, by default with anonymous nodes; what they can see, remember, say and rely on is fixed by its assumption axes.

What is optimised

Once a task is known to be solvable, the community has mostly asked for it to be fast: first the number of rounds (or epochs, or edge traversals), then the memory per agent in bits. Problems with hostile nodes or agents, such as black hole search, ask instead for the smallest number of agents that still succeeds.

The graph \(G=(V,E)\) has \(n\) nodes, \(m\) edges, maximum degree \(\Delta\) and diameter \(D\). Nodes are anonymous (no identifiers) and, unless assumed otherwise, have no memory (no whiteboards). Edges are port-labelled: the edges incident to a node \(v\) carry distinct labels \(1,\dots,\deg(v)\), and the two endpoints of an edge label it independently. An agent at \(v\) sees \(\deg(v)\) and, after arriving through an edge, the port through which it entered.

There are \(k\) agents. Each has a bounded amount of memory (persistent across rounds, measured in bits) and runs the same algorithm. In every step an agent (i) exchanges information with whatever agents its communication model allows, (ii) computes, and (iii) either stays or moves through one port. Agents moving in opposite directions along the same edge do not see each other.

Agents know nothing about \(n\), \(m\), \(k\), \(\Delta\) or \(D\) unless a result says so.

How the axes work. Every axis is a scale of assumptions. Level 0 is no assumption: the environment may be as hostile as the axis allows (a changing, directed graph; asynchronous, anonymous, Byzantine agents that cannot talk). Each higher level adds one assumption. A problem variant is a point on all axes at once, and the catalogue arranges variants as a tree whose root assumes nothing and whose edges each add assumptions. The standard setting of the literature (static undirected graph, \(k \le n\), synchronous rounds, local communication, unique identifiers, no faults) sits several steps below the root.

The two standard cost measures are the number of rounds until the problem is solved (time) and the number of bits of memory per agent (memory).

How the assumptions fit together

Agents that move through a network

The model asks what a team of computing entities can achieve when the only way to act on a network is to walk along its edges. Pelc names the two motivating systems: autonomous robots that start in different places of a terrain or a labyrinth, and software agents, "mobile pieces of software that navigate in a computer network in order to perform maintenance of its components or to collect data distributed in nodes of the network" Pelc 2019. Since an algorithm depends only on what the entities perceive, remember and how they move, the same model serves both, and there is no central monitor, so the questions belong to distributed computing Pelc 2019. Later problems kept this double reading: dispersion was motivated by self-driving electric cars looking for free charging stations with "car-to-car interactions" only Augustine & Moses Jr. 2018, and black hole search by host attacks on mobile code, a site that destroys incoming agents without a trace Di Luna et al. 2025. Each axis of the model fixes one thing that the agents may or may not rely on: the network (dynamics, direction, topology, node identifiers, node memory), the team (count, identifiers, randomness, faults, communication), time, and the start.

Every axis is a freedom of the adversary

Level 0 on each axis is what the adversary controls when nothing is assumed. In the deterministic scenario "the initial positions of the agents are chosen by an adversary which models the worst-case situation" Pelc 2019; under asynchrony the adversary also chooses when and how fast each move happens Pelc 2019; in a dynamic network it chooses the edges of every round after seeing the states of the nodes Kuhn et al. 2010; and with Byzantine agents it controls part of the team Dieudonné et al. 2014. The remaining axes govern symmetry. Two identical agents that run the same deterministic algorithm in an oriented ring and start at the same time keep their distance forever Pelc 2019: anonymous agents, anonymous nodes, no coins and an adversarial start leave the adversary free to keep the configuration symmetric. Each higher level removes one of these freedoms (labels, node names, coins, a common start, a stable or undirected graph, synchronous rounds, honest agents) and makes the problem easier. This is why results move along the scale: an algorithm proved against a stronger adversary holds against a weaker one, and an impossibility for a weaker adversary holds for a stronger one, as the inclusion hierarchy of time-varying graph classes already makes explicit for dynamics Casteigts et al. 2012.

How the axes interact

The axes are independent as assumptions but not in their effect. Identifiers and the start. Anonymity matters only when the rest of the instance is symmetric: on a line with an odd number of nodes two identical agents meet at the centre, and from asymmetric positions they can still break symmetry Pelc 2019; from a rooted start, where agents share their position, only labels or coins can decide which agent settles first, which is how Molla and Moses Jr. use randomness in dispersion Molla & Moses Jr. 2019. Faults and identifiers. The two Byzantine levels differ only in whether a faulty agent may forge its label; with known \(n\) this is the difference between one good agent sufficing and needing \(f+1\), but with unknown \(n\) both need \(f+2\) Dieudonné et al. 2014 Bouchard et al. 2016. Faults and timing. Under full asynchrony a waiting agent cannot tell a slow agent from a crashed one, so gathering with crash faults is impossible; Pelc restores it by fixing each agent's speed Pelc 2018. Dynamics and timing. In temporal graphs "the distributed computation is by definition synchronous" Di Luna et al. 2025, so dynamic settings in the atlas are synchronous. Communication and the graph. Global communication does not tell two agents on neighbouring nodes which edge joins them, so edges must still be traversed Kshemkalyani et al. 2020. Node memory and node identifiers. A whiteboard or a pebble lets an agent recognise a node it has seen, the service that node labels would give Bender et al. 2002 Fraigniaud & Ilcinkas 2004; without either, settled agents play that role in dispersion Kshemkalyani & Ali 2019. Direction and exploration. An undirected graph can be explored by depth-first search in fewer than \(2|V|\) steps, while some directed graphs need \(\Theta(|V|^2)\) Erlebach et al. 2021, because backtracking along an edge is no longer available Italiano et al. 2022.

Why the standard setting is where it is

The setting most papers start from is a static, undirected, connected graph with anonymous nodes and locally labelled ports, synchronous rounds, deterministic fault-free agents with distinct labels, communication between co-located agents only, and no node memory. Each choice has a stated reason. Undirected edges capture movement in both directions along a link, and connectivity is necessary for agents in different components to meet at all Pelc 2019. Anonymous nodes are assumed because labels may be withheld for privacy or security, may be unreadable by weak sensors, and because readable labels would reduce rendezvous to exploration; port numbers stay, because without them an agent may never reach all neighbours of a node of degree at least 3 Pelc 2019. Distinct agent labels are the cheapest deterministic way to break symmetry Pelc 2019 Dessmark et al. 2006; determinism is kept because probabilistic approaches "typically fail to provide absolute guarantees" Devismes et al. 2026. Local communication matches the physical picture of agents that meet Augustine & Moses Jr. 2018. Synchronous rounds let agents use waiting as a tool Pelc 2019. The research programme then removes these assumptions one at a time: asynchrony De Marco et al. 2006 Kshemkalyani & Ali 2019, dynamic graphs Di Luna et al. 2020 Agarwalla et al. 2018, directed graphs Italiano et al. 2022, Byzantine agents Dieudonné et al. 2014 Molla et al. 2021, silent agents Gorain et al. 2022, and repeated labels Devismes et al. 2026. The level-0 corner of the model, where none of the assumptions hold, is where most open questions sit.

Notation

Symbols of this model; the notation page has every model and the general conventions.

SymbolMeaningPapers writeUsed in
\(G=(V,E)\)the graph; for a directed graph \(E\) is a set of arcs, written \(G=(V,A)\) where both appearwhole model
\(n\)number of nodes, \(n = |V|\)whole model
\(m\)number of edges (arcs)whole model
\(\Delta\)maximum degreewhole model
\(\Delta_{out}\)maximum out-degree of a directed graph\(d\) in some exploration paperswhole model
\(\deg(v),\ \deg_{out}(v)\)degree and out-degree of node \(v\)\(\delta(v)\), \(\delta_{out}(v)\)whole model
\(D\)diameter of the graph (for a tree explored from a root: its height)whole model
\(u, v, w\)nodes (local names)whole model
\(s\)the starting node of a single agent, the root of a rooted team, or the home base of black hole search and decontamination\(h\) (home base), \(r\) (root)whole model
\(k\)number of agentswhole model
\(\ell\)number of initially occupied nodes; \(\ell=1\) is a rooted start, \(\ell=k\) a dispersed startDispersion
\(f\)maximum number of faulty agents (crashed or Byzantine)whole model
\(N\)a known upper bound on \(n\)\(\hat n\)whole model
\(\mathcal L\)the set of agent labels in use; \(|\mathcal L|\) distinct labels, \(|\mathcal L|=1\) anonymous, \(|\mathcal L|=k\) distinct identifiers\(\ell\) (homonyms)whole model
\(L\)the largest possible label: labels are integers in \(\{1,\dots,L\}\)\(\lambda\) (largest identifier), \(\mu\) (largest label)whole model
\(\lambda\)the smallest label among the agents (for two agents: the smaller label)\(l\) Pelc 2019whole model
\(\tau\)delay between the starting times of two agentswhole model
\(d\)distance from the starting node to the target (the treasure), or between the starting nodes of two agents in rendezvous\(D\) for the distance between starting positions Pelc 2019whole model
\(v^*\)the node of the treasure\(t\)whole model
\(e(d)\)number of edges with an endpoint at distance less than \(d\) from the startTreasure hunt
\(w(\cdot),\ W\)weight of the cheapest path type to the treasure (treasure hunt); \(W\) its maximum over the two directions (rendezvous)Treasure hunt, Rendezvous
\(h\)communication range in hops (\(h\)-hop communication)\(\ell\) Saxena et al. 2025whole model
\(T\)window length in \(T\)-interval and \(T\)-path connectivity of dynamic graphswhole model
\(\mu\)maximum number of edges missing in a round (\(\mu\)-bounded 1-interval connected graphs)\(\ell\)-bounded Saxena et al. 2025whole model
\(\eta\)number of transient edges of a temporally connected graphExploration of dynamic graphs by teams
\(\delta\)longest time an edge of a dynamic ring may be absentGraph exploration by a single agent
\(p\)number of pebbleswhole model
\(b\)number of bits of an agent's memory, when it is a parameterwhole model
\(\beta\)number of bits of a label written at a node in advanceGraph exploration by a single agent
\(\phi\)deficiency of a directed graph: the number of arcs whose addition makes it Eulerian\(d\) Italiano et al. 2022Dispersion, Graph exploration by a single agent
\(\nu\)number of leaves of a tree\(\lambda\)Rendezvous
\(\mathrm{CR}(k)\)competitive ratio of a collaborative exploration algorithm with \(k\) agentsCollaborative exploration
\(X(n)\)time to explore any \(n\)-node graphDispersion
\(\mathrm{port}_v\)port numbering at node \(v\)\(\lambda_v\)Graph exploration by a single agent
\(R\)running time, in rounds, of a message-passing algorithm simulated by agentsLeader election by agents, Maximal independent set by agents, Minimal dominating set by agents, Minimum spanning tree by agents, BFS tree by agents, Triangle and butterfly counting by agents
\(K\)number of states of a finite-automaton agentGraph exploration by a single agent, Exploration of recolourable graphs
\(\gamma\)exponent of the team size in large-team collaborative exploration, \(k = Dn^{\gamma}\)Collaborative exploration
\(\theta\)the exponent of Reingold's universal exploration sequencesTreasure hunt
\((q,\rho)\)type of a path: its largest port \(q\) and its length \(\rho\)Treasure hunt
\(z\)number of nodes of non-zero capacityDispersion
\(r\)radius of a ball of the gridDispersion
\(c\)number of colours (of a robot's light, or of the colours a node can hold)\(\kappa\), \(\ell\)Exploration by luminous robots, Exploration of recolourable graphs
\(\varphi\)visibility range of a myopic robot, in hopsExploration by luminous robots
\(a\times b\)size of a grid or torus with \(a\) rows and \(b\) columnsExploration by luminous robots
\(\psi(v)\)current colour of node \(v\)\(c(v)\)Exploration of recolourable graphs
\(c_0\)initial colour of the nodesExploration of recolourable graphs
\(\pi_v\)rotor pointer at node \(v\): the port the next departing agent takesExploration of recolourable graphs
\(N(v)\)the neighbours of node \(v\)Exploration of recolourable graphs
\(\mathrm{circ}(G)\)circumference of \(G\): the length of its longest cycle\(k\)Exploration of recolourable graphs
\(g\)a known upper bound on the circumferenceExploration of recolourable graphs

Assumption axes

Each axis below says where the assumption comes from and why the community studies it. Every axis is a scale. Level 0 assumes nothing; each higher level is a stronger assumption, which makes a problem easier. Values on the same level are alternatives that do not imply each other. An algorithm designed for weaker assumptions works under stronger ones; a lower bound proved under stronger assumptions holds under weaker ones.

Graph dynamics

0time-varying graph, only temporally connected1dynamic graph, connected in every round (1-interval connected)2static graph

Graphs that change all the time entered distributed computing as models of mobile, wireless and peer-to-peer networks. Kuhn, Lynch and Oshman introduced \(T\)-interval connectivity in a worst-case model where an adversary picks the edges of each round; "for \(T = 1\) this means that the graph is connected in every round, but changes arbitrarily between rounds" Kuhn et al. 2010. Casteigts, Flocchini, Quattrociocchi and Santoro unified the many models of time-varying graphs into a hierarchy of classes: the always-connected class, used earlier by O'Dell and Wattenhofer (as reported there), and recurrent connectivity, in which journeys exist from every time onward, which is level 0 here Casteigts et al. 2012. They put the reason for the scale in one sentence: in these systems "changes are not anomalies but rather integral part of the nature of the system" Casteigts et al. 2012. Kuhn et al. show the adversary's strength with a token that must keep moving: in a 1-interval connected graph the adversary can keep it between two nodes forever Kuhn et al. 2010, which is in effect a single agent that cannot explore. Mobile agents entered the setting with live exploration of 1-interval connected rings Di Luna et al. 2020 and dispersion in dynamic rings Agarwalla et al. 2018; offline exploration of temporal graphs is the centralised counterpart Erlebach et al. 2021.

Formal definitions
0any dynamics
A temporal graph is a sequence \(\mathcal G=(G_t)_{t\ge 0}\) with \(G_t=(V,E_t)\) on a fixed node set. It is temporally connected if for all \(u,v\in V\) and every time \(t\) there is a journey (a path whose edges appear at non-decreasing times \(\ge t\)) from \(u\) to \(v\). No \(G_t\) need be connected.
1connected every round
\(\mathcal G=(G_t)_{t\ge0}\) is 1-interval connected if every snapshot \(G_t=(V,E_t)\) is connected. More generally it is \(T\)-interval connected if for every \(t\) the graph \(\bigl(V,\bigcap_{i=t}^{t+T-1}E_i\bigr)\) is connected.
2static graph
\(G_t=G\) for all \(t\): the edge set never changes.

Edge direction

0directed (strongly connected)1undirected

Most of the mobile-agent literature uses undirected graphs because this "captures the ability of the agents to move in both directions along each link" Pelc 2019. Directed graphs come from the exploration literature. The earliest paper in the atlas on exploring an unknown directed graph is Deng and Papadimitriou's Deng & Papadimitriou 1999, continued by Albers and Henzinger Albers & Henzinger 2000. Bender, Fernández, Ron, Sahai and Vadhan asked what a robot needs to map an unlabelled strongly connected digraph, and showed that one pebble suffices when a bound on \(n\) is known Bender et al. 2002; Fraigniaud and Ilcinkas studied how little memory digraph exploration needs Fraigniaud & Ilcinkas 2004. Direction removes backtracking: a static undirected graph is explored by depth-first search in fewer than \(2|V|\) steps, while some static directed graphs need \(\Theta(|V|^2)\) steps Erlebach et al. 2021. Italiano, Pattanayak and Sharma posed dispersion on directed anonymous graphs because "the existing approaches for undirected graphs rely substantially on visiting a graph edge in both directions", and showed that without strong connectivity dispersion may be unsolvable Italiano et al. 2022.

Formal definitions
0directed
\(G=(V,A)\) with \(A\subseteq V\times V\); an agent at \(u\) may move along \((u,v)\in A\) only, never back along it unless \((v,u)\in A\). \(G\) is strongly connected.
1undirected
\(G=(V,E)\) with \(E\subseteq\binom V2\); every edge can be traversed in both directions.

Number of agents

0any number of agents, possibly \(k > n\)1\(k \le n\)

Most tasks in this model are posed for a team of any size: gathering an unknown team of anonymous agents Dieudonné & Pelc 2016, black hole search, where the size of the team is the main measure Dobrev et al. 2006, and collective exploration by \(k\) agents Fraigniaud et al. 2006. The cap \(k \le n\) comes from dispersion, where every agent needs a node of its own. Augustine and Moses Jr. posed dispersion with \(k = n\), motivated by electric cars that should not queue at one charging station Augustine & Moses Jr. 2018, and Kshemkalyani and Ali relaxed it to \(k \le n\) Kshemkalyani & Ali 2019. Molla and Moses Jr. extended dispersion to any \(k\), asking for at most \(\lceil k/n \rceil\) agents per node Molla & Moses Jr. 2019. The extension is not free: with \(k > n\) Byzantine dispersion is impossible deterministically whenever \(\lceil k/n \rceil > \lceil (k-f)/n \rceil\) Molla et al. 2021. The axis thus separates tasks where the team must fit into the graph from tasks where the team size is unconstrained.

Formal definitions
0any \(k\)
The number of agents \(k\ge1\) is arbitrary; \(k>n\) is allowed.
1\(k \le n\)
The number of agents satisfies \(1\le k\le n\).

Identifiers

0anonymous: all agents are identical1homonymous: agents carry labels, but several may share a label2distinct identifiers (eponymous): agents have pairwise distinct identifiers

Pelc's survey names anonymous versus labelled agents as one of the two main pairs of assumptions in rendezvous, and gives the reason: two identical agents running the same deterministic algorithm in an oriented ring, starting together, keep the same distance forever Pelc 2019. Distinct labels break this symmetry: in the work of Dessmark, Fraigniaud, Kowalski and Pelc each agent knows only its own label and uses it as a parameter of the common algorithm, and rendezvous becomes feasible in every graph at cost polynomial in \(n\), the delay and \(\log\lambda\), \(\lambda\) the smaller label; without labels it fails already on two nodes joined by an edge, since both agents always stay or always move together Dessmark et al. 2006. Without labels the only asymmetry comes from the graph and the starting positions; Dieudonné and Pelc characterised the configurations of anonymous agents that can be gathered Dieudonné & Pelc 2016. Homonyms, several agents sharing a label, come from Byzantine agreement with homonyms Delporte-Gallet et al. 2013 and were taken to robots in the plane Bouzid & Lamani 2011. In graphs, Devismes, Dieudonné and Labourel motivate them by the cost of "generating and maintaining globally unique labels" and by privacy, and ask how many distinct labels gathering really needs Devismes et al. 2026.

Formal definitions
0anonymous
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\).
1homonymous
Each agent \(a\) has a label \(\mathrm{id}(a)\in\mathcal L\) known to itself (and revealed on meeting), but the labelling need not be injective: \(1\le|\{\mathrm{id}(a)\}|\le k\). With \(|\mathcal L|\) distinct labels, \(|\mathcal L|=1\) is the anonymous case and \(|\mathcal L|=k\) the eponymous one Delporte-Gallet et al. 2013.
2distinct IDs (eponymous)
Distinct identifiers (eponymous agents): the label function \(\mathrm{id}:\{1,\dots,k\}\to\{1,\dots,L\}\) is injective; usually \(L=k^{O(1)}\), so a label takes \(O(\log k)\) bits.

Randomness

0deterministic1randomized (agents have private coins)

Pelc counts determinism versus randomisation among the two assumptions that most shape the methods for rendezvous: a deterministic algorithm faces adversarial starting positions and is judged by its worst-case cost, while randomised algorithms often use random walks and are judged by expected cost Pelc 2019. The random-walk view of graph traversal goes back to Aleliunas et al., who connected random walks with universal traversal sequences Aleliunas et al. 1979. In this model randomness serves mainly to break symmetry: Molla and Moses Jr. let co-located anonymous agents elect a local leader by coin flips, so that dispersion needs \(O(\log\Delta)\) bits per agent instead of the \(\Omega(\log n)\) bits of deterministic algorithms Molla & Moses Jr. 2019. Deterministic algorithms are level 0 because they promise a bound for every execution; Devismes, Dieudonné and Labourel note that probabilistic approaches "typically fail to provide absolute guarantees in terms of complexity and/or accuracy" Devismes et al. 2026. Hence a deterministic algorithm also counts in the randomized setting, and a lower bound against randomized algorithms holds for deterministic ones.

Formal definitions
0deterministic
The next state and move of an agent are a function of its current state and what it observes.
1private coins
Each agent additionally has access to independent fair coin flips; guarantees hold with probability 1, in expectation, or with high probability, as stated per result.

Faults

0up to \(f\) strong Byzantine agents (arbitrary behaviour, can fake identifiers)1up to \(f\) weak Byzantine agents (arbitrary behaviour, cannot fake identifiers)2up to \(f\) agents may crash (stop forever)3no faults

The first faults studied for mobile agents sat in the network: Dobrev, Flocchini, Prencipe and Santoro introduced the black hole, a node that destroys every agent that enters it, in rings and then in arbitrary networks Dobrev et al. 2007 Dobrev et al. 2006; it models a host that trashes incoming code or crashes without notice Di Luna et al. 2025. Faults in the agents, which this axis records, came later. Dieudonné, Pelc and Peleg started the study of gathering with Byzantine agents and defined the two levels used here: a strongly Byzantine agent "can choose an arbitrary port when it moves and it can convey arbitrary information to other agents, while a weakly Byzantine agent can do the same, except changing its label" Dieudonné et al. 2014. The distinction is about identity and it changes the answer: with known \(n\) a single good agent gathers despite \(f\) weakly Byzantine agents, but \(f+1\) good agents are needed against strongly Byzantine ones, even in a ring of known size, while with unknown \(n\) both cases need \(f+2\) Dieudonné et al. 2014; Dieudonné, Pelc and Peleg left the strongly Byzantine upper bounds at \(2f+1\) (known \(n\)) and \(4f+2\) (unknown \(n\)), and Bouchard, Dieudonné and Ducourthial closed them Bouchard et al. 2016 Pelc 2019. Crash faults are the mildest level; Pelc showed that with fully asynchronous agents gathering with crashes is impossible, since a waiting agent cannot tell a slow agent from a crashed one, and solved it when each agent has a fixed speed Pelc 2018. Dispersion adopted both Byzantine levels Molla et al. 2021 and crash faults Chand et al. 2023.

Formal definitions
0any faults
Up to \(f\) agents behave arbitrarily (adversarially) and may forge identifiers, i.e. report any label in \(\mathcal L\).
1at most weak Byzantine faults
Up to \(f\) agents behave arbitrarily but always report their own true identifier.
2at most crash faults
Up to \(f\) agents may stop forever at an adversarially chosen time; a crashed agent stays at its node (or vanishes, as stated per result) and never acts again.
3no faults
All agents follow the algorithm forever.

Communication

0none (silent agents; only see how many agents are co-located)1local (co-located agents communicate)2\(h\)-hop (agents within \(h\) hops communicate)3global (any agent can read any other agent's state)

Communication between co-located agents is the classical assumption of rendezvous and gathering, where agents that meet "can exchange all information they currently have" Pelc 2019. Augustine and Moses Jr. kept it for dispersion, assuming robots "can only communicate with other robots present on their own node", in line with their picture of cars that interact only car to car Augustine & Moses Jr. 2018. Di Luna, Dobrev, Flocchini and Santoro list the forms used in exploration: face-to-face, wireless (agents on different nodes), and whiteboards Di Luna et al. 2020. Kshemkalyani, Molla and Sharma introduced global communication to dispersion to measure "how much global communication helps", and observed that it does not tell two agents on neighbouring nodes which edge joins them, so the graph must still be walked Kshemkalyani et al. 2020. For collective tree exploration Fraigniaud, Gąsieniec, Kowalski and Pelc showed that without communication \(k\) agents gain nothing over one Fraigniaud et al. 2006. Between the two, Italiano, Pattanayak and Sharma studied a 1-hop model, in which "a robot may also communicate with robots positioned on its 1-hop neighbors", and used it to disperse on directed graphs in \(O(kD)\) rounds by broadcasting and gathering information along the graph Italiano et al. 2022. Saxena, Kaur and Mondal generalised it to ℓ-hop communication (\(h\)-hop here), "a spectrum between f-2-f (\(l = 0\)) and global communication (\(l = D\))", and showed that for balanced dispersion on 1-bounded 1-interval connected graphs agents need 1-hop visibility and 1-hop communication Saxena et al. 2025; the axis writes \(h\) for their \(\ell\), which the atlas uses for occupied nodes. At level 0, Gorain, Mandal, Mondal and Pandit asked whether talking is needed at all, and dispersed agents that only learn whether they are alone and whether the number of agents at their node changed Gorain et al. 2022.

Formal definitions
0no communication
Agents exchange no messages; an agent at \(v\) observes only the number of agents at \(v\) (and, where stated, whether that number changed).
1local communication
Agents at the same node at the same time can read each other's entire memory (face-to-face communication). Agents crossing on an edge do not meet.
2\(h\)-hop communication
For a fixed \(h \ge 1\), stated with each result: at every round an agent at \(v\) can read the memory of every agent at a node \(u\) with \(\mathrm{dist}(v,u) \le h\) (in the current snapshot \(G_t\) for a dynamic graph), in addition to the co-located agents. \(h = 1\) is 1-hop communication (agents at neighbouring nodes communicate); local communication is the case \(h = 0\), and global communication the case \(h \ge D\). Reading another agent's memory does not tell an agent which port leads to it.
3global communication
At every round every agent can read the memory of every other agent, wherever it is.

Timing

0asynchronous1synchronous rounds

Pelc names synchronous versus asynchronous movement as the second main pair of assumptions for rendezvous: synchronous agents can alternate measured periods of activity and waiting, "a powerful tool", while asynchronous agents move at speeds the adversary varies, so algorithms must force trajectories to overlap Pelc 2019. The asynchronous model for agents in graphs was introduced by De Marco, Gargano, Kranakis, Krizanc, Pelc and Vaccaro for rendezvous; since a meeting at a node cannot be guaranteed even in the two-node graph, agents may also meet inside an edge De Marco et al. 2006 (as described in Pelc 2019). Black hole search was posed for asynchronous agents with whiteboards Dobrev et al. 2006, while dispersion started synchronous and Kshemkalyani and Ali gave its first asynchronous algorithms Kshemkalyani & Ali 2019. Intermediate schedulers exist: Di Luna et al. brought the semi-synchronous model, "common in the context of mobile agents in continuous spaces", to agents in graphs Di Luna et al. 2020. Asynchrony interacts with other axes: it makes gathering with crash faults impossible Pelc 2018, and dynamic graphs are synchronous by definition Di Luna et al. 2025.

Formal definitions
0asynchronous
Each agent's Communicate–Compute–Move steps take finite but unbounded, adversarially chosen time. Time is measured in epochs. An epoch is an interval of time in which every agent completes at least one full Communicate–Compute–Move step; it need not be the shortest such interval. Time is counted by dividing the execution into consecutive epochs, and a bound of \(X\) epochs holds for every such division.
1synchronous
Time proceeds in rounds \(t=1,2,\dots\); in every round every agent communicates, computes and moves (at most one edge) simultaneously.

Node memory

0no whiteboards1whiteboards at nodes

Whiteboards are the shared memory of the mobile-agent model: each node keeps a little storage that visiting agents read and write in mutual exclusion, "where the agents communicate by writing on and reading from whiteboards present in each node" Di Luna et al. 2020. They are the standard tool in black hole search, posed for asynchronous agents with whiteboards Dobrev et al. 2006, and in map construction, where identical agents with whiteboards build a map exactly when symmetry can be broken Das et al. 2007. Their purpose is marking: an agent that can leave information at a node can recognise it later, which is what node labels would otherwise provide Bender et al. 2002. The cheaper markers are pebbles or tokens, and black hole search showed that whiteboards can be replaced by them Dobrev et al. 2013 Flocchini et al. 2012; for digraphs, whiteboards of \(O(\log\Delta_{out})\) bits let an agent with constant memory explore Fraigniaud & Ilcinkas 2004. Pelc counts the ability to see marks among the assumptions that most change methods, since it "significantly facilitates" rendezvous Pelc 2019. Level 0 has no node memory, as in dispersion, where settled agents serve as markers instead Kshemkalyani & Ali 2019.

Formal definitions
0no whiteboards
Nodes have no storage: no information can be left at a node except by an agent staying there.
1whiteboards
Each node \(v\) has a whiteboard of bounded size that agents at \(v\) can read and write, with mutual exclusion.

Node identifiers

0anonymous nodes1labelled nodes (an agent can recognise a node it has visited)

Anonymous nodes with locally labelled ports are the standard network of this model, and Pelc gives the reasons. Practically, nodes may withhold their labels "for privacy or security reasons", or the agents' sensors may be too weak to read them; methodologically, readable labels would let agents meet at the smallest label, reducing rendezvous to exploration Pelc 2019. Port numbers are kept because without them an agent may be unable to visit all neighbours of a node of degree at least 3, and because reading a port needs far less than reading a name Pelc 2019. The same convention underlies memory-bounded exploration, where a finite automaton explores a graph "whose nodes are unlabeled and whose edge ports are locally labeled" Fraigniaud et al. 2005. Labelled nodes belong to the online-exploration tradition, in which the agent recognises nodes and builds a map Deng & Papadimitriou 1999 Albers & Henzinger 2000, and to collective exploration, where nodes are typically labelled Augustine & Moses Jr. 2018 Fraigniaud et al. 2006. With labelled nodes many symmetry questions disappear, which is why the axis separates navigation from symmetry breaking.

Formal definitions
0anonymous nodes
Nodes have no identifiers; an agent at \(v\) sees only \(\deg(v)\) and the port numbers \(1,\dots,\deg(v)\), which are assigned locally and independently at each endpoint of an edge.
1labelled nodes
Each node \(v\) carries a distinct identifier that agents at \(v\) can read; hence an agent can recognise a node it has visited.

Topology

0arbitrary connected graph1ring or path1tree1grid1complete graph1hypercube1bipartite

Special topologies enter for two reasons: they are the simplest graphs with a given feature, and they are networks that are used. Trees can be explored with termination by a single agent and have a central node or edge that acts as a focal point, so rendezvous was first solved there; rings are "the simplest class" of graphs with cycles Pelc 2019 Dessmark et al. 2006. The oriented ring is also the most symmetric instance, where identical agents cannot meet Pelc 2019. The ring, oriented or not, was the first topology for black hole search Dobrev et al. 2007, and the oriented ring was the first for live exploration of dynamic graphs Di Luna et al. 2020 and, as reported by Molla et al. 2021, for Byzantine dispersion. Grids model discretised space: the infinite grid is a tool for rendezvous in the plane Pelc 2019, and dispersion on grids is studied for its own sake Kshemkalyani et al. 2020. Hypercubes are interconnection networks on which decontamination was solved before unknown graphs Flocchini et al. 2008; the complete graph \(K_3\) is the witness in Pelc's crash impossibility Pelc 2018; bipartite graphs appear with butterfly counting by agents Chand et al. 2025. Level 0 is an arbitrary connected graph, unknown to the agents.

Formal definitions
0any topology
\(G\) is any connected graph in the class allowed by the other axes.
1ring
\(G\) is a cycle \(C_n\) (every node of degree 2), or a path when stated.
1tree
\(G\) is connected and acyclic: \(|E|=n-1\).
1grid
\(G\) is a \(\sqrt n\times\sqrt n\) grid graph; whether ports are globally consistent (oriented) is stated per result.
1complete graph
\(G=K_n\): every pair of nodes is adjacent.
1hypercube
\(G=Q_j\): nodes are the \(n=2^j\) binary strings of length \(j\), adjacent when they differ in one bit.
1bipartite
\(V = V_1 \cup V_2\) with \(V_1 \cap V_2 = \emptyset\) and every edge joining \(V_1\) to \(V_2\); trees are a special case.

Initial configuration

0arbitrary (agents on any \(\ell \le k\) nodes)1rooted (all agents on one node)1dispersed or scattered (one agent per occupied node)

The starting configuration is the adversary's last choice. Rooted starts come from exploration, where the team leaves a common home: collective tree exploration places all \(k\) agents at the root Fraigniaud et al. 2006, black hole search starts from a safe home base Dobrev et al. 2006, and Molla and Moses Jr. call this a rooted graph Molla & Moses Jr. 2019. Dispersed starts come from rendezvous and gathering, where agents start at distinct nodes Pelc 2019 Dieudonné & Pelc 2016, and from black hole search with scattered agents Di Luna et al. 2025. A dispersed configuration is also the output of dispersion, so tasks computed by agents after dispersing, such as leader election, start from it Kshemkalyani et al. 2026 Sudo et al. 2024. Dispersion itself was posed from arbitrary configurations, robots "placed in an n node graph arbitrarily" Augustine & Moses Jr. 2018, and rooted dispersion became a separate variant Molla & Moses Jr. 2019. The two special starts expose different symmetries: co-located agents are indistinguishable by position, so labels or coins must decide who moves Molla & Moses Jr. 2019; scattered agents have distinct positions that may still look alike in a symmetric graph Pelc 2019.

Formal definitions
0any start
Agents start at arbitrary nodes; \(\ell\le k\) nodes are initially occupied, possibly with several agents each.
1rooted start
All \(k\) agents start at the same node (\(\ell=1\)). Also called co-located (black hole search: all agents at the home base) or a rooted graph Molla & Moses Jr. 2019.
1dispersed start
Every initially occupied node holds exactly one agent (\(\ell=k\)). Also called a scattered start, notably in black hole search.

Problems in this model

Problem familyExploration

Visit every node of an unknown graph: one agent with as little memory or as few markers as possible, or a team as fast as possible. Treasure hunt and rendezvous are subproblems of exploration; dispersion is derived from collaborative exploration.

Graph exploration by a single agent

One agent starts at a node of an unknown anonymous graph and must visit every node; how much memory does it need, which pebbles or knowledge make it possible, and how fast can it be?
17 variants · 12 open questions

Problem familyComputing with agents

Agents solve graph problems on the anonymous graph they move in: leader election, independent sets, dominating sets, spanning trees, subgraph counts. Most algorithms first disperse the agents, so that every node has an agent to compute for it.

this family is related to Dispersion: Most algorithms first bring the \(n\) agents into a dispersed configuration, one agent per node, so that every node has an agent to compute for it Kshemkalyani et al. 2026 Chand & Molla 2026.