In this paper we study population protocols governed by the {\em random scheduler}, which uniformly at random selects pairwise interactions between $n$ agents. The main result of this paper is the first time and space optimal {\em exact majority population protocol} which also works with high probability. The new protocol operates in the optimal {\em parallel time} $O(\log n),$ which is equivalent to $O(n\log n)$ sequential {\em pairwise interactions}, where each agent utilises the optimal number of $O(\log n)$ states.
The time optimality of the new majority protocol is possible thanks to the novel concept of fixed-resolution phase clocks introduced and analysed in this paper. The new phase clock allows to count approximately constant parallel time in population protocols.
In population protocols, the underlying distributed network consists of $n$ nodes (or agents), denoted by $V$, and a scheduler that continuously selects uniformly random pairs of nodes to interact. When two nodes interact, their states are updated by applying a state transition function that depends only on the states of the two nodes prior to the interaction. The efficiency of a population protocol is measured in terms of both time (which is the number of interactions until the nodes collectively have a valid output) and the number of possible states of nodes used by the protocol. By conventi…
We study population protocols, a model of distributed computing appropriate for modeling well-mixed chemical reaction networks and other physical systems where agents exchange information in pairwise interactions, but have no control over their schedule of interaction partners. The well-studied *majority* problem is that of determining in an initial population of $n$ agents, each with one of two opinions $A$ or $B$, whether there are more $A$, more $B$, or a tie. A *stable* protocol solves this problem with probability 1 by eventually entering a configuration in which all agents agree on a cor…
Population protocols are a model for distributed computing that is focused on simplicity and robustness. A system of $n$ identical agents (finite state machines) performs a global task like electing a unique leader or determining the majority opinion when each agent has one of two opinions. Agents communicate in pairwise interactions with randomly assigned communication partners. Quality is measured in two ways: the number of interactions to complete the task and the number of states per agent. We present protocols for the majority problem that allow for a trade-off between these two measures.…
We study the Consensus problem among $n$ agents, defined as follows. Initially, each agent holds one of two possible opinions. The goal is to reach a consensus configuration in which every agent shares the same opinion. To this end, agents randomly sample other agents and update their opinion according to a simple update function depending on the sampled opinions. We consider two communication models: the gossip model and a variant of the population model. In the gossip model, agents are activated in parallel, synchronous rounds. In the population model, one agent is activated after the other …
We study population protocols, a model of distributed computing appropriate for modeling well-mixed chemical reaction networks and other physical systems where agents exchange information in pairwise interactions, but have no control over their schedule of interaction partners. The well-studied *majority* problem is that of determining in an initial population of $n$ agents, each with one of two opinions $A$ or $B$, whether there are more $A$, more $B$, or a tie. A *stable* protocol solves this problem with probability 1 by eventually entering a configuration in which all agents agree on a cor…
Let $G$ be a graph on $n$ nodes. In the stochastic population protocol model, a collection of $n$ indistinguishable, resource-limited nodes collectively solve tasks via pairwise interactions. In each interaction, two randomly chosen neighbors first read each other's states, and then update their local states. A rich line of research has established tight upper and lower bounds on the complexity of fundamental tasks, such as majority and leader election, in this model, when $G$ is a clique. Specifically, in the clique, these tasks can be solved fast, i.e., in $n \operatorname{polylog} n$ pairwi…
The population protocol model describes a network of anonymous agents that interact asynchronously in pairs chosen at random. Each agent starts in the same initial state $s$. We introduce the *dynamic size counting* problem: approximately counting the number of agents in the presence of an adversary who at any time can remove any number of agents or add any number of new agents in state $s$. A valid solution requires that after each addition/removal event, resulting in population size $n$, with high probability each agent "quickly" computes the same constant-factor estimate of the value $\log_…
In this paper we consider a variant of population protocols in which agents are allowed to be connected by edges, known as the constructors model. During an interaction between two agents the relevant connecting edge can be formed, maintained or eliminated by the transition function. The contributions of this paper are manifold. -- We propose and analyse a novel type of phase clocks allowing to count parallel time $Θ(n\log n)$ in the constructors model. This new type of clocks can be also implemented in the standard population protocol model assuming a unique leader is available. -- The new cl…
We propose a self-stabilizing leader election protocol on directed rings in the model of population protocols. Given an upper bound $N$ on the population size $n$, the proposed protocol elects a unique leader within $O(nN)$ expected steps starting from any configuration and uses $O(N)$ states. This convergence time is optimal if a given upper bound $N$ is asymptotically tight, i.e., $N=O(n)$.
We present a loosely-stabilizing phase clock for population protocols. In the population model we are given a system of $n$ identical agents which interact in a sequence of randomly chosen pairs. Our phase clock is leaderless and it requires $O(\log n)$ states. It runs forever and is, at any point of time, in a synchronous state w.h.p. When started in an arbitrary configuration, it recovers rapidly and enters a synchronous configuration within $O(n\log n)$ interactions w.h.p. Once the clock is synchronized, it stays in a synchronous configuration for at least poly $n$ parallel time w.h.p. We u…
Population protocols are a model of distributed computation intended for the study of networks of independent computing agents with dynamic communication structure. Each agent has a finite number of states, and communication opportunities occur nondeterministically, allowing the agents involved to change their states based on each other's states. In the present paper we study unreliable models based on population protocols and their variations from the point of view of expressive power. We model the effects of message loss. We show that for a general definition of unreliable protocols with con…
In this paper, we focus on the uniform bipartition problem in the population protocol model. This problem aims to divide a population into two groups of equal size. In particular, we consider the problem in the context of \emph{arbitrary} communication graphs. As a result, we clarify the solvability of the uniform bipartition problem with arbitrary communication graphs when agents in the population have designated initial states, under various assumptions such as the existence of a base station, symmetry of the protocol, and fairness of the execution. When the problem is solvable, we present p…
Weighted voting is a conventional approach to improving the performance of replicated systems based on commonly-used majority quorum systems in heterogeneous environments. In long-lived systems, a weight reassignment protocol is required to reassign weights over time in order to accommodate performance variations accordingly. The weight reassignment protocol should be consensus-free in asynchronous failure-prone systems because of the impossibility of solving consensus in such systems. This paper presents an efficient consensus-free weight reassignment protocol for atomic storage systems in he…
We present a new version of Peregrine, the tool for the analysis and parameterized verification of population protocols introduced in [Blondin et al., CAV'2018]. Population protocols are a model of computation, intensely studied by the distributed computing community, in which mobile anonymous agents interact stochastically to perform a task. Peregrine 2.0 features a novel verification engine based on the construction of stage graphs. Stage graphs are proof certificates, introduced in [Blondin et al., CAV'2020], that are typically succinct and can be independently checked. Moreover, unlike the…
Population protocols are a model of computation in which an arbitrary number of indistinguishable finite-state agents interact in pairs. The goal of the agents is to decide by stable consensus whether their initial global configuration satisfies a given property, specified as a predicate on the set of configurations. The state complexity of a predicate is the number of states of a smallest protocol that computes it. Previous work by Blondin \textit{et al.} has shown that the counting predicates $x \geq η$ have state complexity $\mathcal{O}(\log η)$ for leaderless protocols and $\mathcal{O}(\lo…
The {\em parallel time} of a population protocol is defined as the average number of required interactions that an agent in the protocol participates, i.e., the quotient between the total number of interactions required by the protocol and the total number $n$ of agents, or just roughly the number of required rounds with $n$ interactions. This naming triggers an intuition that at least on the average a round of $n$ interactions can be implemented in $O(1)$ parallel steps. We show that when the transition function of a population protocol is treated as a black box then the expected maximum numb…
Efficient Stable Population Protocols for Parity and Beyond
School of Computer Science and Informatics, University of Liverpool(利物浦大学计算机科学与信息学院);Institute of Computer Science, University of Wrocław(弗罗茨瓦夫大学计算机科学研究所)
群体协议是分布式计算的一种流行模型,在该模型中,具有较小计算能力的随机交互代理合作以共同执行计算任务。受分子计算,特别是DNA计算的发展的启发,最近的算法工作集中在解决人口模型中简单而基本的任务的复杂性,如领导者选举(需要稳定到一个特殊的“领导者”状态的单个代理),和多数(其中代理必须稳定到两个可能的初始状态中的哪一个具有更高的初始计数)。已知的结果指向这样的算法的时间复杂度和空间复杂度(即,每个代理可用的存储器的大小)之间的固有权衡。在本文中,我们探讨了这种权衡,并提供了新的上限和下限的多数和领导人选举。首先,我们证明了一个统一的下界,它涉及到每个节点的可用空间与协议实现的时间复杂度:例如,我们的结果意味着,任何协议解决这些任务的$n$代理使用$O( \log \log n )$状态必须采取$Ω( n / \rm{polylog} n )$预期的时间。这是第一个结果来表征时间复杂度的协议,采用超常数的状态数,每个节点,并证明了快速,多对数运行时间要求协议有相对较大的空间成本。在积极的一面,我们给出的算法表明,快速,多对数稳定时间可以实现每个节点使用$O( \log^2 n )$空间,在这两个任务的情况下。总体而言,我们的研究结果突出了人口协议中多数选举和领导选举的$O(\log \log n)$和$Θ( \log^2 n )$状态空间大小之间的时间复杂度分离,并引入了新的技术,这…
Population protocols are a relatively novel computational model in which very resource-limited anonymous agents interact in pairs with the goal of computing predicates. We consider the probabilistic version of this model, which naturally allows to consider the setup in which a small probability of an incorrect output is tolerated. The main focus of this thesis is the question of confident leader election, which is an extension of the regular leader election problem with an extra requirement for the eventual leader to detect its uniqueness. Having a confident leader allows the population protoc…
We consider the standard population protocol model, where (a priori) indistinguishable and anonymous agents interact in pairs according to uniformly random scheduling. The self-stabilizing leader election problem requires the protocol to converge on a single leader agent from any possible initial configuration. We initiate the study of time complexity of population protocols solving this problem in its original setting: with probability 1, in a complete communication graph. The only previously known protocol by Cai, Izumi, and Wada [Theor. Comput. Syst. 50] runs in expected parallel time $Θ(n^…
The population protocol model describes a network of $n$ anonymous agents who cannot control with whom they interact. The agents collectively solve some computational problem through random pairwise interactions, each agent updating its own state in response to seeing the state of the other agent. They are equivalent to the model of chemical reaction networks, describing abstract chemical reactions such as $A+B \rightarrow C+D$, when the latter is subject to the restriction that all reactions have two reactants and two products, and all rate constants are 1. The counting problem is that of des…