Population protocols are a model of distributed computing where $n$ agents, each a simple finite-state machine, interact in pairs to solve a common task against a (adversarial) interaction scheduler. This model was intensively studied in recent years; in particular, the problem of relative majority received much attention: Each agent starts with an input opinion (or color) out of $k$ possibilities, and the goal is for each agent to eventually output the color with the largest support in the population. Before our work, the state complexity (the minimum number of states required per agent) was only known to be between $Ω(k^2)$ and $O(k^{7})$. Our main contribution is a population protocol that solves the relative majority problem with $k^3$ states. We achieve this result with a new protocol called CIRCLES. While prior approaches in the literature relied on duels of agents to find the majority color -- an approach that proved effective for the case with two colors -- CIRCLES partitions the agents into circular linked lists of decreasing sizes, with the property that no two agents with the same initial color lie in the same circle. We show that CIRCLES always correctly computes the desired structure against the most adversarial of schedulers (weakly fair). We then show that a trivial extension of CIRCLES solves the relative majority problem. We extend our protocol to handle various tie-breaking mechanisms or to support the case where the agents do not share a prior ordering of the colors. Finally, we show that a modification of CIRCLES solves the ranking problem with $2 \cdot k^4$ states, where each agent must output the rank of its initial color in the population.
翻译:种群协议是一种分布式计算模型,其中 $n$ 个智能体(每个智能体是一个简单的有限状态机)成对交互,以解决一个共同任务,且交互由(对抗性的)调度器控制。该模型近年来得到了深入研究的关注;特别地,相对多数问题受到了大量关注:每个智能体从 $k$ 种可能的颜色中选择一个初始输入意见(或颜色),目标是每个智能体最终输出在种群中支持度最高的颜色。在我们工作之前,状态复杂度(每个智能体所需的最小状态数)仅已知介于 $\Omega(k^2)$ 和 $O(k^{7})$ 之间。我们的主要贡献是一个使用 $k^3$ 个状态解决相对多数问题的种群协议。我们通过一种名为 CIRCLES 的新协议实现了这一结果。尽管文献中的先前方法依赖智能体之间的决斗来寻找多数颜色(这种方法在两种颜色的情况下被证明有效),但 CIRCLES 将智能体划分为大小递减的环形链表,其特点是具有相同初始颜色的任意两个智能体不在同一个环中。我们证明,CIRCLES 在最对抗性的调度器(弱公平调度器)下总能正确计算出所需结构。接着,我们展示了一个简单的 CIRCLES 扩展即可解决相对多数问题。我们还扩展了我们的协议,以处理各种平局打破机制或支持智能体不共享颜色先验顺序的情况。最后,我们证明,通过修改 CIRCLES,可以用 $2 \cdot k^4$ 个状态解决排名问题,其中每个智能体必须输出其初始颜色在种群中的排名。