Distributed voting is a fundamental topic in distributed computing. In the standard model of pull voting, at each step every vertex chooses a neighbour uniformly at random and adopts its opinion. The voting is completed when all vertices hold the same opinion. In the simplest case, each vertex initially holds one of two different opinions. This partitions the vertices into arbitrary sets A and B. For many graphs, including regular graphs and irrespective of their expansion properties, if both A and B are sufficiently large sets, then pull voting requires Ω(n) expected steps, where n is the number of vertices of the graph. In this paper we consider a related class of voting processes based on sampling two opinions. In the simplest case, every vertex v chooses two random neighbours at each step. If both these neighbours have the same opinion, then v adopts this opinion. Otherwise, v keeps its own opinion. Let G be a connected graph with n vertices and m edges. Let P be the transition matrix of a simple random walk on G with second largest eigenvalue λ < 1/ √ 2. We show that if the initial imbalance in degree between the two opinions satisfies |d(A) − d(B)|/2m ≥ 2λ 2 , then with high probability voting completes in O(log n) steps, and the opinion with the larger initial degree wins. The condition that λ < 1/ √ 2 includes many classes of expanders, for example random d-regular graphs where d ≥ 10. If however 1/ √ 2 ≤ λ(P ) ≤ 1 − for a constant > 0, or only a bound on the conductance of the graph is known, the sampling process can be modified so that voting still provably completes in O(log n) steps with high probability. The modification uses two sampling based on probing to a fixed depth O(1/ ) from any vertex. In its most general form our voting process allows vertices to bias their sampling of opinions among their neighbours to achieve a desired outcome. This is done by allocating weights to edges.
For random d-regular graphs, REF proves that all nodes agree on the first color in O(log n) rounds, provided that the bias is Ω n · 1/d + d/n .