Fast and Exact Majority in Population Protocols

Population protocols, roughly defined as systems consisting of large numbers of simple identical agents, interacting at random and updating their state following simple rules, are an important research topic at the intersection of distributed computing and biology. One of the fundamental tasks that a population protocol may solve is majority: each node starts in one of two states; the goal is for all nodes to reach a correct consensus on which of the two states was initially the majority. Despite considerable research effort, known protocols for this problem are either exact but slow (taking linear parallel time to converge), or fast but approximate (with non-zero probability of error). In this paper, we show that this trade-off between precision and speed is not inherent. We present a new protocol called Average and Conquer (AVC) that solves majority exactly in expected parallel convergence time O(log n/(sε) + log n log s), where n is the number of nodes, ε n is the initial node advantage of the majority state, and s = Ω(log n log log n) is the number of states the protocol employs. This shows that the majority problem can be solved exactly in time poly-logarithmic in n, provided that the memory per node is s = Ω(1/ε + log n log{1/ε). On the negative side, we establish a lower bound of Ω(1/ε) on the expected parallel convergence time for the case of four memory states per node, and a lower bound of Ω(log n) parallel time for protocols using any number of memory states per node.

[1]  Stephen A. Cook,et al.  Upper and Lower Time Bounds for Parallel Random Access Machines without Simultaneous Writes , 1986, SIAM J. Comput..

[2]  Prasad Jayanti,et al.  A time complexity lower bound for randomized implementations of some shared objects , 1998, PODC '98.

[3]  David Peleg,et al.  Distributed Probabilistic Polling and Applications to Proportionate Agreement , 1999, ICALP.

[4]  Johannes Gehrke,et al.  Gossip-based computation of aggregate information , 2003, 44th Annual IEEE Symposium on Foundations of Computer Science, 2003. Proceedings..

[5]  Michael J. Fischer,et al.  Computation in networks of passively mobile finite-state sensors , 2004, PODC '04.

[6]  David Eisenstat,et al.  The computational power of population protocols , 2006, Distributed Computing.

[7]  K. Sneppen,et al.  Theoretical Analysis of Epigenetic Cell Memory by Nucleosome Modification , 2007, Cell.

[8]  David Eisenstat,et al.  A simple population protocol for fast robust approximate majority , 2007, Distributed Computing.

[9]  Milan Vojnovic,et al.  Using Three States for Binary Consensus on Complete Graphs , 2009, IEEE INFOCOM 2009.

[10]  Stefan Grosskinsky Warwick,et al.  Interacting Particle Systems , 2016 .

[11]  Moez Draief,et al.  Convergence Speed of Binary Interval Consensus , 2010, 2010 Proceedings IEEE INFOCOM.

[12]  Thomas Sauerwald,et al.  Tight Bounds for Randomized Load Balancing on Arbitrary Network Topologies , 2012, 2012 IEEE 53rd Annual Symposium on Foundations of Computer Science.

[13]  Luca Cardelli,et al.  The Cell Cycle Switch Computes Approximate Majority , 2012, Scientific Reports.

[14]  Luca Cardelli,et al.  Programmable chemical controllers made from DNA. , 2013, Nature nanotechnology.

[15]  Breathe before speaking: efficient information dissemination despite noisy, limited and anonymous communication , 2013, PODC '14.

[16]  Dan Alistarh,et al.  Polylogarithmic-Time Leader Election in Population Protocols , 2015, ICALP.

[17]  David Soloveichik,et al.  Stable leader election in population protocols requires linear time , 2015, Distributed Computing.

[18]  Paul G. Spirakis,et al.  Determining majority in networks with local interactions and very small local memory , 2014, Distributed Computing.