ADRC - 11 - Majority Consensus II


1 Lecture Info

Data: [2018-11-26 lun] + [2018-11-29 gio]


In questa lezione abbiamo continuato l'analisi della dynamica h-majority iniziata la scorsa lezione. Questa volta abbiamo affrontato il caso \(h=3\).

2 Analisi 3-Majority

Ricordiamo brevemente che stiamo lavorando su un grafo completo con \(n\) nodi in cui ogni nodo si può trovare in due stati, lo stato \(0\) e lo stato \(1\). A ciascun stato può essere assegnato un colore, ad esempio allo stato \(0\) può essere assegnato il colore rosso e allo stato \(1\) può essere assegnato il colore blu. Il problema da risolvere è quello di partire da una configurazione di sbilanciamento rispetto agli stati dei vari nodi per arrivare ad una configurazione di agreement in cui tutti i nodi si trovano nello stesso stato.

La dinamica in questione funziona così: ad ogni round ogni nodo sceglie \(3\) altri nodi in modo uniforme ed indipendente. La scelta viene fatta con "reinserimento", e quindi un nodo può scegliere più volte un altro nodo nello stesso round. Una volta effettuata la scelta dei \(3\) nodi, il nodo che ha fatto la scelta cambia il proprio stato (o colore), a seconda della maggioranza presente tra i nodi scelti.


Per analizzare la dinamica avevamo introdotto le seguenti v.a.

  • \(X_t := \text{ numero di nodi nello stato } 0 \text{ al tempo } t\)

  • \(\forall i \in V: \,\,\, Y_i = \begin{cases} 1 \,\,\,&,\,\,\, \text{ se il nodo } i \text{ va nello stato } 0 \text{ al tempo } t+1 \\ 0 \,\,\,&,\,\,\, \text{ altrimenti}\end{cases}\)

Fissata la configurazione al tempo \(t\), \(X_t=a\), la probabilità che il nodo \(i\) al tempo \(t+1\) si colori di rosso (o passi nello stato \(0\)) è così calcolata

\[\begin{split} Pr[Y_i = 1 \,\,|\,\, X_t = a] &= \Big(\frac{a}{n}\Big)^3 + 3 \cdot \frac{a^2(n - a)}{n^3} \\ &= \frac{a^3}{n^3} + \frac{3a^2}{n^2} - \frac{3a^3}{n^3} \\ &= \frac{a^2}{n^3} \cdot \Big(a + 3n - 3a \Big) \\ &= \frac{a^2}{n^3} \cdot \Big(3n - 2a \Big) \\ \end{split}\]

quindi il numero atteso di nodi nello stato \(0\) al round \(t+1\) è dato da

\[\mathbb{E}[X_{t+1} \,\,|\,\, X_t = a] = \sum_i \mathbb{E}[Y_i \,\, | \,\, X_t = a] = \Big(\frac{a}{n}\Big)^2 \cdot (3n - 2a)\]

Arrivati a questo punto per continuare l'analisi assumiamo che il valore iniziale dello sbilanciamento (bias) è \(\Omega(\sqrt{n \cdot \log n})\), e, senza perdità di generlità, assumiamo che lo stato \(0\) sia quello di minoranza. Troviamo quindi

\[s = s(x) = \frac{b - a}{2} \geq c \cdot \sqrt{n \cdot \log n}\]

A questo punto l'analisi viene divisa in tre fasi, a seconda del numero di nodi nello stato minoritario. Le fasi sono così schematicamente rappresentate


2.1 Fase I - The Age of Fast Bias Growth

In questa fase iniziale abbiamo che \(X_t = a \in [n/4, n/2 - c \cdot \sqrt{n \log n}]\). Notiamo che

\[s = \frac{b - a}{2} = \frac{(n - a) - a}{2} = \frac{n}{2} - a\]

dunque possiamo esprimere \(a\) in funzione del bias \(s\) nel seguente modo

\[a = \frac{n}{2} - s \,\,\,\, , \,\,\,\, c \cdot \sqrt{n \log n} \leq s \leq \frac{n}{4}\]

In questa fase dimostriamo le seguenti due cose:

  1. Fintantoché \(a \geq n/4\), allora con alta probabilità abbiamo un incremento esponenziale del bias ad ogni round. In particolare vale

    \[X_{t+1} \leq \frac{n}{2} - \frac{9}{8} \cdot s\]

  2. Dal precedente risultato poi segue che con alta probabilità in \(T = O(\log n)\) passi il numero di nodi rossi diventa \(< n/4\) e quindi la prima fase termina.


2.1.1 Incremento Esponenziale del Bias

Notiamo che la funzione \(f(a) = a^2 \cdot (3n - 2a)\) è una funzione crescente per ogni \(0 < a < n\). Da questo segue che, per \(a \leq n/2 - s\) otteniamo

\[\begin{split} \mathbb{E}[X_{t+1} \,\,|\,\, X_t = a] &= \Big(\frac{a}{n}\Big)^2 \cdot (3n - 2a) \\ &\leq a^2 \cdot (3n - 2a) \\ &\leq \Big(\frac{n}{2} - s\Big)^2 \cdot \Big(3n - 2 \cdot \Big(\frac{n}{2} - s\Big)\Big) \\ &= \Big(\frac{n^2}{4} - ns + s^2\Big) \cdot (2n + 2s) \\ &= \frac{n^3}{2} - \frac32 n^2 s + 2 s^3 \\ &= \frac{n}{2} - \frac32 s + s \cdot \Big( 2 \cdot \frac{s^2}{n^2}\Big) \\ &\leq \frac{n}{2} - \frac{5}{4} s \\ \end{split}\]

dove l'ultimo passaggio segue dal fatto che dire \(s \leq n/4\) è equivalente a dire \(2 \cdot s^2/n^2 \leq 1/8\), e dato che \(11/8 > 5/4\) otteniamo

\[\begin{split} \frac{n}{2} - \frac32 s + s \cdot \Big(2 \cdot \frac{s^2}{n^2} \Big) &\leq \frac{n}{2} - \frac32 s + \frac18 s \\ &\leq \frac{n}{2} - \frac{11}{8} s \\ &\leq \frac{n}{2} - \frac{5}{4} s \\ \end{split}\]

Ora, per ottenere un risultato di concentrazione l'idea è quella di utilizzare il seguente chernoff bound.


Chernoff Bound: Siano \(X_1, ..., X_n\) v.a. indipendenti e a valori in \(\{0, 1\}\). Consideriamo \(X := \sum_{i = 1}^n X_i\) e \(\mu = \mathbb{E}[X]\). Allora, per ogni \(0 \leq \lambda \leq \mu\), vale

\[Pr[X \geq u + \lambda] \leq e^{\displaystyle{\frac{-2 \lambda^2}{n}}}\]


Nel nostro caso particolare possiamo applicare il bound con \(\mu = \mathbb{E}[X_{t+1}] = n/2 - 5/4 s\) e \(\lambda = 1/8 s\) per ottenere

\[\begin{split} Pr[X_{t+1} \geq \Big( \frac{n}{2} - \frac54 s \Big) + \frac18 s \,\,|\,\, X_t = a] &= Pr[X_{t+1} \geq \frac{n}{2} - \frac98 s \,\,|\,\, X_t = a] \\ &\leq e^{-\frac{2 s^2}{64n}} \\ &= e^{-\frac{s^2}{32n}} \\ \end{split}\]

Dato che abbiamo assunto che \(s \geq c \cdot \sqrt{n \log n}\) per qualche costante \(c \in \mathbb{N}\), ne segue che

\[Pr[X_{t+1} \geq \frac{n}{2} - \frac98 s \,\,|\,\, X_t = a] \leq \frac{1}{n^{\theta(1)}}\]

e quindi otteniamo \(X_{t+1} \leq n/2 - 9/8 s\) con alta probabilità.

\[\tag*{$\checkmark$}\]


Facendo il punto della situazione, abbiamo appena dimostrato che finchè il bias è conteunto nell'intervallo \(c \cdot \sqrt{n \log n} \leq s \leq n/4\), il bias incrementa in modo esponenziale con alta probabilità. Infatti, se \(a_{t+1} \leq n/2 - 9/8 s_t\), allora

\[s_{t+1} = \frac{n}{2} - a_{t+1} \geq \frac{n}{2} - \frac{n}{2} + \frac98 s_t = \frac98 s_t\]

e quindi

\[s_{t+1} \geq \Big(\frac{9}{8}\Big)^{t+1} \cdot s_0 = \Big(\frac{9}{8}\Big)^{t+1} \cdot c \sqrt{n \log n}\]

Andiamo adesso a dimostrare che questo implica che in \(O(\log n)\) passi la prima fase termina.


2.1.2 Terminazione in \(O(\log n)\)

Iniziamo definendo il seguente evento

\[\xi_t := X_t \leq \max \Big\{\frac{n}{4} \,\,,\,\, \frac{n}{2} - \Big(\frac{9}{8}\Big)^t \Big\}\]

notiamo che

\[Pr[\xi_{t+1} \,\,|\,\, \bigcap_{i = 1}^t \xi_i] = 1 - n^{-\alpha}\]

per qualche costante \(\alpha\). Infatti, assumendo che \(n/2 - (9/8)^2 \geq n/4\), se vale \(\xi_t\) allora otteniamo con alta probabilità

\[\begin{split} X_{t+1} &\leq \frac{n}{2} - \frac98 s \\ &= \frac{n}{2} - \frac98 \cdot \Big(\frac{n}{2} - X_t \Big) \\ &\leq \frac{n}{2} - \frac98 \cdot \frac{n}{2} + \frac98 X_t \\ &\leq \frac{n}{2} - \frac98 \cdot \frac{n}{2} + \frac98 \cdot \Big(\frac{n}{2} - \Big(\frac{9}{8}\Big)^t \Big) \\ &= \frac{n}{2} - \Big(\frac{9}{8} \Big)^{t+1} \end{split}\]

che è proprio l'evento \(\xi_{t+1}\).

Continuando, siamo adesso in grado di calcolare la probabilità che in \(T = \frac{\log(n/4)}{\log(9/8)}\) passi si ha \(X_t \leq n/4\) in modo da passare alla fase successiva. Tale probabilità è così maggiorata

\[\begin{split} Pr[ \exists t \in [0, T]: \,\, X_t \leq n/4] &\geq Pr\Big[\bigcap_{i = 1}^T \xi_i\Big] \\ &= \prod_{i = 1}^T Pr\Big[\xi_i \,\,|\,\, \bigcap_{j = 1}^{i-1} \xi_j\Big] \\ &\geq (1 - n^{-\alpha})^T \\ &\geq 1 - 2Tn^{-\alpha} \\ &\geq 1 - n^{-\alpha/2} \\ \end{split}\]

quindi con alta probabilità in \(O(\log n)\) passi si supera la prima fase.

\[\tag*{$\checkmark$}\]


2.2 Fase II - The Age of Fast Decrease of the Reds

In questa fase abbiamo che \(X_t \in [O(\log n), n/4]\), e quindi $X_t n/4. In questa fase dimostriamo le seguenti due cose:

  1. Fintantoché \(a = \Omega(\log n)\), allora con alta probabilità abbiamo una decrescita esponenziale del numero di nodi rossi ad ogni round. In particolare vale

    \[a_{t+1} \leq \frac{4}{5} a_t\]

  2. Dal precedente risultato poi segue che con alta probabilità in \(T = O(\log n)\) passi il numero di nodi rossi diventa \(O(\log n)\), e quindi la prima fase termina.


2.2.1 Decrescità Esponenziale dei Rossi

Dal comportamento in media della dinamica otteniamo quindi

\[\mathbb{E}[X_{t+1} \,\,|\,\, X_t = a] = \Big(\frac{a}{n}\Big)^2 \cdot (3n - 2a) \leq a \cdot \frac{\frac{n}{4}}{n^2} \cdot 3n \leq \frac34 a\]

per ottenere un risultato di concentrazione, applichiamo il seguente chernoff bound.


Chernoff Bound: Siano \(X_1, ..., X_n\) v.a. indipendenti a valori in \(0, 1\) e consideriamo \(X := \sum_i X_i\), e \(\mathbb{E}[X] \leq \mu\). Allora, per ogni \(0 < \delta < 1\), valgono

  • \(Pr[X \geq (1 + \delta) \mu] \leq Exp(-\frac{\mu \delta^2}{3})\)

  • \(Pr[X \leq (1 - \delta) \mu] \leq Exp(-\frac{\mu \delta^2}{2})\)


Nel nostro caso, ponendo \(u = 3/4 a\) e \(\delta = 1/20\), troviamo

\[Pr[X_{t+1} \geq \frac{4}{5} a] \leq Pr[X_{t+1} \geq \Big(1 + \frac{1}{20} \Big) \cdot \frac34 a] \leq Exp\Big(\frac{-\frac34 a (\frac{1}{20})^2}{3}\Big) = Exp(-\alpha \cdot a)\]

Quindi, finché \(a = \Omega(\log n)\) abbiamo che \(X_{t+1} \leq 4/5 a\) con alta probabilità, e quindi che il numero dei rossi decresce in modo esponenziale.

\[\tag*{$\checkmark$}\]



2.2.2 Terminazione in \(O(\log n)\)

Dimostriamo adesso che anche questa seconda fase ha una durata di tempo logaritmica.

Iniziamo notando che se fino al round \(t\) della seconda fase c'è stata una decrescità esponenziale, allora questa decrescita continua con alta probabilità anche al round \(t+1\) in quanto

\[X_{t+1} \leq \frac{4}{5} \cdot X_t \leq \frac{4}{5} \cdot \Big(\frac45 \Big)^t \cdot \frac{n}{4} = \Big(\frac45\Big)^{t+1} \cdot \frac{n}{4}\]

Ma allora la probabilità di terminare la seconda fase è maggiorata dalla probabilità di avere \(T\) round continui di decrescità esponenziale, con \(T\) tale che

\[X_t \leq \Big(\frac{3}{4}\Big)^T \frac{n}{4} \leq c \cdot \log n \implies T = \frac{\log\Big({\frac{4 c \log n}{n}}\Big)}{\log{\frac34}}\]

Dato che questo avviene con alta probabilità, possiamo concludere che con alta probabilità in \(O(\log n)\) passi la seconda fase termina.

\[\tag*{$\checkmark$}\]



2.3 Fase III - The Death of the Reds

In questa terza e ultima fase il valore di \(a\) decrementa da \(O(\log n)\) fino a \(0\), permettendo quindi al sistema di raggiungere la maggioranza desiderata.

Dato che \(a = O(\log n)\), dal comportamento in media della dinamica otteniamo

\[\mathbb{E}[X_{t+1} \,\,|\,\, X_t = a] = \Big(\frac{a}{n}\Big)^2 \cdot (3n - 2a) \leq \frac{\log^2{n}}{n^2} \cdot 3n = O\Big(\frac{\log^2{n}}{n}\Big)\]

Per ottenere un risultato di concentrazione invece questa volta ci basta utilizzare la markov inequality con \(t=1\) e \(u = \frac{\log^2 n}{n}\) per ottenere

\[Pr[X_{t+1} \geq 1 \,\,|\,\, X_t = a] \leq O\Big(\frac{\log^2{n}}{n}\Big)\]

Infine, dato che \(X_{t+1}\) assume valori interi, abbiamo che in un round l'evento \(X_{t+1} = 0\) succede con alta probabilità. Con alta probabilità quindi la terza fase termina in un singolo round e il sistema raggiungere l'agreement cercato.

3 Esercizio: 2-Majority Inerziale

Dimostrare che se si utilizza la dinamica \(\text{2-MAJ}\) andando a gestire le eventuali ties in modo inerziale, ovvero mantenendo il proprio colore, allora, partendo da una configurazione di sbilanciamento di \(\theta(\sqrt{n \cdot \log n})\), con alta probabilità dopo \(O(\log n)\) passi tutti i nodi hanno lo stesso colore.