Population Protocols for Exact Plurality Consensus -- How a small chance of failure helps to eliminate insignificant opinions
Abstract
We consider the \emph{exact plurality consensus} problem for \emph{population protocols}. Here, $n$ anonymous agents start each with one of $k$ opinions. Their goal is to agree on the initially most frequent opinion (the \emph{plurality opinion}) via random, pairwise interactions. The case of $k = 2$ opinions is known as the \emph{majority problem}. Recent breakthroughs led to an always correct, exact majority population protocol that is both time- and space-optimal, needing $O(\log n)$ states per agent and, with high probability, $O(\log n)$ time~[Doty, Eftekhari, Gasieniec, Severson, Stachowiak, and Uznanski; 2021]. We know that any always correct protocol requires $\Omega(k^2)$ states, while the currently best protocol needs $O(k^{11})$ states~[Natale and Ramezani; 2019]. For ordered opinions, this can be improved to $O(k^6)$~[Gasieniec, Hamilton, Martin, Spirakis, and Stachowiak; 2016]. We design protocols for plurality consensus that beat the quadratic lower bound by allowing a negligible failure probability. While our protocols might fail, they identify the plurality opinion with high probability even if the bias is $1$. Our first protocol achieves this via $k-1$ tournaments in time $O(k \cdot \log n)$ using $O(k + \log n)$ states. While it assumes an ordering on the opinions, we remove this restriction in our second protocol, at the cost of a slightly increased time $O(k \cdot \log n + \log^2 n)$. By efficiently pruning insignificant opinions, our final protocol reduces the number of tournaments at the cost of a slightly increased state complexity $O(k \cdot \log\log n + \log n)$. This improves the time to $O(n / x_{\max} \cdot \log n + \log^2 n)$, where $x_{\max}$ is the initial size of the plurality. Note that $n/x_{\max}$ is at most $k$ and can be much smaller (e.g., in case of a large bias or if there are many small opinions).
- Publication:
-
arXiv e-prints
- Pub Date:
- February 2024
- DOI:
- 10.48550/arXiv.2402.06471
- arXiv:
- arXiv:2402.06471
- Bibcode:
- 2024arXiv240206471B
- Keywords:
-
- Computer Science - Distributed;
- Parallel;
- and Cluster Computing