Simulating abrupt political change

A person’s political opinion is influenced by opinions of those in their network of associates. Networks overlap, and therefore a person’s politics is also influenced indirectly by opinions of those far beyond their immediate network. It is known from statistical physics that collective effects and phase transitions are commonplace in systems with large numbers of discrete interacting elements. For this reason, it is possible that abrupt changes in political opinion might arise in response to small external changes.

q-state Potts models are a simple type of interacting spin (discrete state) model. Each site i on a graph or lattice has state s_i in 0,1 \cdots ,q-1. The site ‘energy’ is determined by the number of neighbours j which agree with s_i. The total energy of a configuration \{ s_i \} is,

(1)   \begin{equation*}H=-\beta \sum_{\langle i,j \rangle } \delta_{s_i s_j}\end{equation*}

where \delta_{s_i s_j} =1 if s_i=s_j and 0 otherwise. The sum is over “neighbours” \langle i j \rangle. According to the simple rules of statistical physics, the probability of a particular configuration \{ s_i \} follows Boltzmann’s law,

(2)   \begin{equation*}P\big(\{ s_i \}\big) \propto e^{-H(\{ s_i \}) } \end{equation*}

Instead of spins, the states can be re-interpreted as representing q flavours of political opinion. The coupling \beta determines how strongly associates influence each others’ opinions. If \beta is close to zero, then opinions are independent and randomly distributed. When \beta >> 1 groupthink dominates. In a population of economists or social misfits who like to disagree with one another, \beta <0. However \beta \sim 1 is probably the most relevant and certainly most interesting case.

Much is known about Potts models and equations (1) & (2) are easy to simulate using Gibbs sampling (results below were obtained in C++ linked to R using Rcpp). For simplicity, I took the case of a square lattice with nearest-neighbour coupling. This means that each opinion-holder has four associates, and each person’s network overlaps with four other networks. Results for the average agreement (i.e. the average number of associates with whom each person agrees, a number between 0 and 4) on 50\times50 and 100\times100 lattices are shown below. The coupling \beta was slowly increased from -2 to +2 with up to 60,000 thermalisation sweeps at each step. At \beta = 1.342\ldots there is a sharp jump in the level of agreement (from about 2 to 3).


The transition can also be seen in opinion percentages. Below, opinion favourable to the blue candidate jumps from 12.5% to over 50% at the transition. All other candidates follow the pink line.


There is no model bias favouring the blue candidate. Their selection is a case of “spontaneous symmetry breaking”. The jump is already very sharp at N=10000 and becomes a true mathematical discontinuity when N\to\infty.

In this model an opinion poll carried out at \beta =1.33 has nothing to say about which candidate would emerge if \beta increased to 1.36 by election day. Is this one reason why opinion polls often turn out mysteriously wrong?



Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.