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

Rendezvous

Two agents start at different nodes of an unknown graph and must meet; how long does it take, and how much memory or symmetry breaking does it need?

Problem statement and measuresexpand

Two mobile agents start at different nodes of an unknown connected port-labelled graph. In the synchronous model they must be at the same node in the same round; in the asynchronous model an adversary controls their speeds and they may also meet inside an edge. Agents are either labelled (distinct labels from \(\{1,\dots,L\}\); \(\lambda\) is the smaller label) or anonymous. They may start at different times; \(\tau\) is the delay. Time is the number of rounds from the start of the later agent (synchronous) or the total number of moves, that is edge traversals (asynchronous cost). Memory is bits per agent.

Measures: Time, rounds after the later agent starts (synchronous); edge traversals (asynchronous); Memory, bits per agent.

Labelled agents in rings, simultaneous start

verified
Time: tightMemory: unknown

With simultaneous start on a ring, rendezvous takes \(\Theta(d\log \lambda)\) for initial distance \(d\).

Assumed (added on the last edge are outlined)

+Graph dynamicsstatic graph+Edge directionundirected+Graph sizefinite+Identifiersdistinct identifiers (eponymous): agents have pairwise distinct identifiers+Timingsynchronous rounds+Startsimultaneous start+Topologyring or path

Not assumed

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.
Graph size: finite graph
\(G\) has finitely many nodes.
Identifiers: distinct 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.
Timing: synchronous
Time proceeds in rounds \(t=1,2,\dots\); in every round every agent communicates, computes and moves (at most one edge) simultaneously.
Start: simultaneous start
Both agents start in the same round (\(\tau=0\)).
Topology: ring
\(G\) is a cycle \(C_n\) (every node of degree 2), or a path when stated.

What is known

Time · rounds after the later agent starts (synchronous); edge traversals (asynchronous)
tight
\(\Theta(d\log \lambda)\).
lower bound
\(\Omega(d\log \lambda)\) Dessmark et al. 2006
bottlenecksymmetry breaking
holds when
  • rings, for every initial distance \(d\) (Theorem 3.1)
  • agents know that the graph is a ring
introductory—
current best
\(O(d\log \lambda)\)
agents know that the graph is a ring, but not its size
Memory · bits per agent
unknown
Memory is unbounded.
lower boundnone known
introductory—
current best—

Results, in order of publication

Time \(O(d\log \lambda)\)
agents know that the graph is a ring, but not its size

Introductory and current best (Lemmas 3.1, 3.2 and Theorem 3.1).

Open questions

None recorded for this variant.

Notes

Checked against the full text of Dessmark et al. 2006. With arbitrary delay on an \(n\)-node ring, \(\Omega(n+d\log\lambda)\) rounds are necessary even when \(n\) is known (Proposition 3.1); \(O(n\log\lambda)\) suffices for known \(n\) (Theorem 3.2) and \(O(\lambda\tau+\lambda n^2)\) for unknown \(n\) (Theorem 3.3) Dessmark et al. 2006. The paper announces that a forthcoming paper reaches \(O(n\log\lambda)\) with arbitrary delay; as stated in Pelc 2019, this is Kowalski & Malinowski 2008, for unknown \(n\).

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

Labelled agents, arbitrary finite graphs
Time \(\tilde O(n^5\log \lambda)\)

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.