Antoine Vendeville

Benjamin Guedj

Shi Zhou

Forecasting elections results via the voter model with stubborn nodes

We explore a method to influence or even control the diversity of opinions within a polarised social group. We leverage the voter model in which users hold binary opinions and repeatedly update their beliefs based on others they connect with. Stubborn agents who never change their minds ("zealots") are also disseminated through the network, which is modelled by a connected graph. Building on earlier results, we provide a closed-form expression for the average opinion of the group at equilibrium. This leads us to a strategy to inject zealots into a polarised network in order to shift the average opinion towards any target value. We account for the possible presence of a backfire 1 effect, which may lead the group to react negatively and reinforce its level of polarisation in response. Our results are supported by numerical experiments on synthetic data.

Introduction

For decades, modern democratic societies have been polling populations to try and track the popularity of elections candidates and members of governments. Those are often conducted by means of phone, online or even in person surveys, which can be very time-consuming and and usually suffer from limited sample sizes and bias -e.g. respondants with controversial views might be reluctant of sharing them. This is why different methods are being investigated nowadays. With the rapid growth of online social platforms such as Facebook or Twitter, any individual can now publicly express their views and opinions, adding to an evergrowing pool of directly accessible data. This has open the door for a new avenue of research, that seeks to use this precious resource to forecast polls and election results without having to survey the population.

As of today, most efforts have focused on applying machine learning methods such as sentiment analysis to evaluate public opinion through samples of Twitter data and try to predict the outcome of democratic processes around the globe [START_REF] Saleiro | Sentiment aggregate functions for political opinion polling using microblog streams[END_REF][START_REF] Garcia | The PredNews forecasting model[END_REF][START_REF] Grimaldi | Inferring the votes in a new political landscape: the case of the 2019 Spanish presidential elections[END_REF]. The quality of predictions spans a rather wide range and numerous voices have expressed concerns over these methods, arguing that there are multiple factors at play that may alter their reliability [START_REF] Gayo-Avello | No, you cannot predict elections with twitter[END_REF][START_REF] Jungherr | Digital trace data in the study of public opinion: An indicator of attention toward politics rather than political support[END_REF]. This is why in this work we propose a novel method that does not rely on data analysis but rather uses the authentic and official results of previous elections to perform estimation for future ones.

More precisely, we consider the well-known voter model for opinion dynamics. A population of connected nodes form a graph where some of them are in state 0 and some others in state 1. Nodes can then randomly change state over time following the distribution of others' states. Nodes are usually meant to represent users on a social network and states their opinions or views. This model then allows to describe in a simple and intuitive manner social dynamics where people are divided between two parties and form their opinion by observing that of others around them. A previous work of ours was dedicated to the theoretical study of this model in the specific case where everyone is influenced by everyone else and some users are stubborn and never change opinion [START_REF] Vendeville | Towards control of opinion diversity by introducing zealots into a polarised social group[END_REF]. Notably, we provided closed-form expressions for the distribution of opinions at any point in the process and convergence time to equilibrium.

This paper is a follow-up of that work, as we apply our previous findings to forecast results of both general elections in the United Kingdom and presidential elections in the United States. We consider the share of popular votes won by either the Conservative and Labour party -or Republican and Democratic party in the US -as a representation of node states in a fictional graph and perform time-evolving estimation of optimal parameters for the corresponding voter model. This allows us to obtain a theoretical distribution for the number of seats or votes, from which we draw the expected result of future elections. We compare with real-life outcomes to assess the viability of our approach.

Related Literature

A number of research projects have focused on applying machine learning algorithms to Twitter data in order to forecast opinion poll results or election outcomes. We discuss some of them here and refer the interested reader to Gayo-Avello (2013); [START_REF] Phillips | Using social media to predict the future: A systematic literature review[END_REF] for more in-depth reviews of the literature. A pioneer work in this area was that of [START_REF] Tumasjan | Election forecasts with twitter: How 140 characters reflect the political landscape[END_REF] whose model achieved a mean average error (MAE) of 1.65% when predicting results of the 2009 German federal election. Authors used Twitter mention counts as an direct indicator of a candidate's popularity, a method that has been considered by several other works as well, often in combination with a sentiment analysis of tweets content [START_REF] O'connor | From tweets to polls: Linking text sentiment to public opinion time series[END_REF][START_REF] Saleiro | Sentiment aggregate functions for political opinion polling using microblog streams[END_REF][START_REF] Garcia | The PredNews forecasting model[END_REF][START_REF] Grimaldi | Inferring the votes in a new political landscape: the case of the 2019 Spanish presidential elections[END_REF][START_REF] Fernley | Voter models on subcritical inhomogeneous random graphs[END_REF][START_REF] Huberty | Multi-cycle forecasting of congressional elections with social media[END_REF][START_REF] Caldarelli | A multi-level geographical study of italian political elections from twitter data[END_REF][START_REF] Thapen | Towards passive political opinion polling using twitter[END_REF]. In particular, [START_REF] Garcia | The PredNews forecasting model[END_REF] achieved 90% accuracy in predicting the top two candidates in various municipalities during Brazilian municipal elections, and [START_REF] Saleiro | Sentiment aggregate functions for political opinion polling using microblog streams[END_REF] achieved a MAE of 0.63% when trying to predict opinion poll results during the Portuguese bailout (2011)(2012)(2013)(2014).

The relevance of such approaches has however been questioned by a number of authors [START_REF] Fernley | Voter models on subcritical inhomogeneous random graphs[END_REF][START_REF] Huberty | Multi-cycle forecasting of congressional elections with social media[END_REF][START_REF] Caldarelli | A multi-level geographical study of italian political elections from twitter data[END_REF][START_REF] Thapen | Towards passive political opinion polling using twitter[END_REF][START_REF] Jungherr | Why the pirate party won the german election of 2009 or the trouble with predictions: A response to tumasjan[END_REF][START_REF] Jungherr | Digital trace data in the study of public opinion: An indicator of attention toward politics rather than political support[END_REF][START_REF] Gayo-Avello | No, you cannot predict elections with twitter[END_REF]. [START_REF] Jungherr | Why the pirate party won the german election of 2009 or the trouble with predictions: A response to tumasjan[END_REF] showed that merely changing the timeframe of forecast in the work of [START_REF] Tumasjan | Election forecasts with twitter: How 140 characters reflect the political landscape[END_REF] would invalidate the results. [START_REF] Fernley | Voter models on subcritical inhomogeneous random graphs[END_REF] found that use of Twitter mentions mirrored actual popularity of only some of the candidates but not all of them. [START_REF] Jungherr | Digital trace data in the study of public opinion: An indicator of attention toward politics rather than political support[END_REF] argued that mentions count, used in most of the works cited above, show evidence of attention to politics rather that support to the actual candidates. This is why researchers often combine mentions count with sentiment analysis algorithms, but even these can have trouble detecting and correctly interpreting all subtelties of the human language. This particular concern, has been raised by several authors [START_REF] Huberty | Multi-cycle forecasting of congressional elections with social media[END_REF][START_REF] Caldarelli | A multi-level geographical study of italian political elections from twitter data[END_REF][START_REF] Gayo-Avello | No, you cannot predict elections with twitter[END_REF]). Self-selection, i.e. the fact that people choose whether to express their views online or not, may also bias results. Add to it the rife presence of bots on the Twitter platform and it is difficult to say for sure whether the online population is an accurate representation of the real one.

Some researchers have thus considered different avenues, drawing features from the Twitter user graph topology [START_REF] Dokoohaki | Predicting swedish elections with twitter: A case for stochastic link structure analysis[END_REF], hashtags co-occurences [START_REF] Bovet | Validation of Twitter opinion trends with national polling aggregates: Hillary Clinton vs Donald Trump[END_REF] or even discarding the social platform entirely and using fluctuations of the Pound to forecast the popularity of the Conservative party in the UK [START_REF] Usher | Brexit election: Forecasting a conservative party victory through the pound using arima and facebook's prophet[END_REF]. Integrating in this line of works, we build a model that does not rely on Twitter but rather uses official results of previous elections to guess the outcome of future ones. Our model is a variant of the celebrated voter model, where nodes on a graph are in one of two possible states and repeatedly update their beliefs to agree with other nodes chosen at random. It was introduced independently by [START_REF] Holley | Ergodic theorems for weakly interacting infinite systems and the voter model[END_REF] and [START_REF] Clifford | A model for spatial conflict[END_REF] in the context of particles interaction. They proved that consensus is reached, i.e. that every node is eventually in the same state, on the infinite Z d lattice. Several works have since looked at different network topologies: complete graphs [START_REF] Hassin | Distributed probabilistic polling and applications to proportionate agreement[END_REF][START_REF] Sood | Voter models on heterogeneous networks[END_REF][START_REF] Perron | Using three states for binary consensus on complete graphs[END_REF][START_REF] Yildiz | Voting models in random networks[END_REF], Erdös-Rényi random graphs [START_REF] Sood | Voter models on heterogeneous networks[END_REF][START_REF] Yildiz | Voting models in random networks[END_REF], scale-free random graphs [START_REF] Sood | Voter models on heterogeneous networks[END_REF][START_REF] Fernley | Voter models on subcritical inhomogeneous random graphs[END_REF], and other various structures [START_REF] Yildiz | Voting models in random networks[END_REF][START_REF] Sood | Voter models on heterogeneous networks[END_REF]. Variants where nodes deterministically update to the most common state amongst their neighbours have also been studied [START_REF] Chen | Majority rule dynamics in finite dimensions[END_REF][START_REF] Mossel | Majority dynamics and aggregation of information in social networks[END_REF].

In this paper we consider the specific case where stubborn nodes who never switch state are present in the graph. Such nodes may for example represent lobbyists, politicians or activists, i.e. entities looking to lead rather than follow and who will not easily change side. One of those placed within the network can singlehandedly change the outcome of the process [START_REF] Mobilia | Does a single zealot affect an infinite group of voters?[END_REF][START_REF] Sood | Voter models on heterogeneous networks[END_REF]. If several of them are present on both sides, consensus is usually not reachable and instead the distribution of states converge to an equilibrium in which it fluctuate indefinitely [START_REF] Mobilia | On the role of zealotry in the voter model[END_REF][START_REF] Yildiz | Binary opinion dynamics with stubborn agents[END_REF]. Recently, [START_REF] Mukhopadhyay | Voter and majority dynamics with biased and stubborn agents[END_REF] considered nodes with different degrees of stubbornness and show that time to reach consensus grows linearly with their number. [START_REF] Klamser | Zealotry effects on opinion dynamics in the adaptive voter model[END_REF] studied the effect of stubborn nodes on a dynamically evolving graph, and show that the two main factors shaping their influence are their degrees and the dynamical rewiring probabilities. Finally, in our previous work we developed closed-form formulas for the distribution of opinion at any step and convergence time to equilibrium in the case where stubborn nodes are present in a strongly connected network [START_REF] Vendeville | Towards control of opinion diversity by introducing zealots into a polarised social group[END_REF].

Our contributions. In this paper we propose a new model for the forecast of elections outcome, based on official results of previous elections. Our method is based on the voter model with stubborn nodes and uses theoretical results developed in a previous work of ours [START_REF] Vendeville | Towards control of opinion diversity by introducing zealots into a polarised social group[END_REF]. We apply it to the United Kingdom general elections and in the United States presidential elections and achieve an MAE of 4.74%. To the best of our knowledge this is the first time such work is conducted. All code used is available online.

Theoretical background

Here we present the mathematical framework behind our forecasting method. In the traditional voter model, we consider a group of n nodes labelled 1, . . . , n who are each in state 0 or 1. These states are prone to change over time and we let x i ptq denote the state of node i at time t. Each node has access to the state of some of the others, called its neighbours. Nodes can then be seen as forming a graph of size n, with an edge from j from i if and only if i has access to the state of j. Here we consider this graph to be a clique with unweighted edges and no self-loops. Thus each node accounts for the state of every other, except their own, with no particular preference. The process then unfolds as follows. Starting with a given initial distribution of states, an independent exponential clock of parameter 1 is associated to each node. Whenever a clock rings, the concerned node changes its state to that of one of its neighbours selected uniformly at random -or equivalently, chooses its new state by sampling the distribution of its neighbours' states.

We let N 1 ptq denote the number of state-1 holders at time t; it will be our quantity of interest. Note that the number of state-0 nodes at time t is given by n ´N1 ptq. We assume N 1 p0q is fixed and let n 1 denote its value. We are interested in the particular situation where some of the nodes are stubborn, that is never change state, and we describe the evolution of N 1 ptq over time. We denote by s 0 and s 1 the numbers of stubborn state-0 and state-1 nodes respectively and require at least one of them to be strictly positive. To this end we define S n " tpa, bq P t0, . . . , nu 2 : 0 ă a `b ď nu

(1)

and require ps 0 , s 1 q P S n . We write rm ij s i,j to denote the matrix with entry m ij in the i-th row and j-th column and let e M denote the exponential of any matrix M . Because s 0 and s 1 nodes will always be in respective states 0 and 1 no matter what, N 1 ptq is comprised between s 1 and n ´s0 for all t. The idea behind our analysis is that it describes a birth-and-death process over the state-space ts 1 , . . . , n ´s0 u with transition rates, for all s 1 ď k ď n ´s0 , $ ' & ' % q k,k´1 " pk ´s1 qpn ´kq{pn ´1q q k,k`1 " kpn ´k ´s0 q{pn ´1q q k,k " ´qk,k´1 ´qk,k`1 .

(2) Indeed to move from state k to k ´1 we need a non stubborn state-1 node to adopt the state of an state-0 node. There are k´s 1 non stubborn state-1 nodes and for each of these, a proportion pn´kq{pn´1q of the others is in state 0, hence q k,k´1 " pk´s 1 qpn´kq{pn´1q. We obtain q k,k`1 via an analogous reasoning and define q k,k " ´qk,k`1 ´qk,k´1 . Since the process only evolves by unit increments or decrements, q k,j " 0 if j R tk ´1, k, k `1u. As expected we have q s 1 ,s 1 ´1 " 0 and q n´s 0 ,n´s 0 `1 " 0. Finally we let Q " rq ij s i,j denote the transition rate matrix. From there we are able to compute the distribution of N 1 ptq and its expected value at any point in time.

Theorem 1. Let Q be the matrix with entries described in (2) and let N 1 p0q " n 1 be given. Assuming ps 0 , s 1 q P S n is the repartition of stubborn nodes, the probability for

N 1 to equal k at time t is p n 1 ,k ptq :" re tQ s n 1 ,k . (3)
Hence,

EN 1 ptq " n´s 0 ÿ k"s 1 k p n 1 ,k ptq. ( 4
)
is the expected number of state-1 nodes at time t.

Because there are stubborn agents in both camps, consensus is never reached and instead the system indefinitely fluctuates within a state of equilibrium. We would like to know if the political system we consider can be considered to be within such state. To this end, the long term expectation of N 1 ptq is given by the following theorem.

Theorem 2. Assuming ps 0 , s 1 q P S n is the repartition of stubborn agents, the expected number of opinion-1 holders at equilibrium is given by

Eπ " n s 1 s 0 `s1 (5)
where π " pπ s 1 , . . . , π n´s 0 q denotes the steady-state distribution of N 1 ptq.

The theory is developed in another work of ours [START_REF] Vendeville | Towards control of opinion diversity by introducing zealots into a polarised social group[END_REF] to which we refer the interested reader for more details and proofs.

Setup

We use the official database of the United Kingdom general elections results, published by the House of Commons [START_REF] Audickas | UK Election Statistics: 1918-2019 -A Century of Elections[END_REF], as well as results for presidential elections in the United States manually collected from Wikipedia.1 Each time we are interested in the percentage of popular votes won by the two major parties -Conservative and Labour in the UK, Republicans and Democrats in the US. We assume these quantities correspond to pointwise observations of independent realisations of the voter model. The result of each election can then be forecast via Theorem 1, provided we have an estimate of the quantity of stubborn nodes ps 0 , s 1 q. Thus, our analysis is done in two steps: first we make for each elections an estimate of ps 0 , s 1 q based on previous results, then Equation 4 gives us the expected value for the coming election that we use as a predictor.

In the UK dataset, our quantity of interest is the percentage of popular votes won by the Conservative and Labour parties in each general elections from 1922 onwards. In the US dataset, it is the number of popular votes gathered by Republicans and Democrats in each presidential elections from 1912 onwards. For the sake of clarity we present our method in the UK case, but note that it directly translates to the US case by replacing Conservative and Labour with Republicans and Democrats.

Because our model cannot account for decimal values values we round the percentages to the nearest integer. Different parties are present, the two major ones being Conservative 2 and Labour, the rest including Liberal Democrats or Social Nationalists amongst others. Because our model applies to a two-sided situation only, we cannot consider all of them at once. Thus, we aggregate all non-Conservative parties under the label 0 while Conservatives are attributed label 1. We let x i denote the number of seats won by Conservatives on the i th elections and t i the elapsed time, in years, since the starting point 1922. There have been m " 27 elections total, with the last one taking place in 2019. Thus t 1 " 0 and t m " 2019 ´1922 " 97. We let x m denote the percentage of seats won by the conservatives in 2019. To concur with our theoretical framework we consider one seat won by the Conservatives (resp. non-Conservatives) as the observation of an node being in state 1 (resp. 0) amongst n " 100 of them. The x i 's then correspond to pointwise observations at times t i 's of a realisation of the process N 1 ptq described in Section 3. All the reasoning described here and in the following will also be applied independently in the cases Labour versus non-Labour, Republican versus non-Republican (US) and Democrat versus non-Democrat (US).

Methodology

To be able to use Theorem 1 to make predictions, we first need to estimate the proportion of potential stubborn nodes in the population, that is the percentage of votes which are guaranteed for or against Conservatives. Let s 0 denote the number of stubborn state-0 (non-Conservative) nodes and s 1 that of state-1 (Conservative) ones. We look for the values ps ‹ 0 , s ‹ 1 q that maximise the log-likelihood of the observed data. Let's say we want to predict results for the i th election. Because we need at least two datapoints to make an estimaation, we require 3 ď i ď m `1. Following the notations introduced in Section 3 we let p ps 0 ,s 1 q k,l ptq denote the theoretical probability for N 1 ptq to go from k to l in t units of time when there are respectively s 0 and s 1 state-0 and state-1 stubborn nodes. We seek to solve argmax s 0 ,s 1 i´2 ÿ j"1 log ´pps 0 ,s 1 q

x j ,x j`1 pt j`1 ´tj q ¯(6) Indeed, p ps 0 ,s 1 q

x j ,x j`1 pt j`1 ´tj q is by definition the probability for Conservatives to win x j`1 percent of the votes in the pj `1q th election knowing they won x j percent in the j th one. Thus we seek to simultaneously maximise the likelihood of all past elections results. Let Q ps 0 ,s 1 q be the matrix with entries calculated via (2). By Theorem 1, we have that ( 6) is equivalent to argmax s 0 ,s 1 i´2 ÿ j"1 log " e pt j`1 ´tj qQ ps 0 ,s 1 q ı

x j ,x j`1 (7)

The computation of matrix exponential is typically done in cubic time and quickly becomes intractable as the size of the matrix increases. Here however, because we have n " 100, the number of possible couples ps 0 , s 1 q is small enough here that ( 7) can be solved by directly computing the sum for each of these couples individually. The optimal value s ‹ 1 for s 1 then gives us an estimation of the percentage of votes "locked" by the Conservative party, proportion of the population that will always root for them. The optimal value s ‹ 0 for s 0 is an estimate of the quantity of such votes for all other parties aggregated.

To make a forecast for the i th election, we just have to apply Theorem 1 with Q " Q ps ‹ 0 ,s ‹ 1 q , n 1 " x i´1 and t " t i ´ti´1 . Equation 4 then gives us the expected percentage xi of votes gathered by Conservatives on that occasion. This can then be compared to the actual value x i to assess the efficacy of our approach.

Results for the UK

We show in Table 1 (left) the estimated values for ps ‹ 0 , s ‹ 1 q, updated with each new election. They seem to globally stabilise between 15 and 25 for both parties. Look at the last value in the Labour case for example, which is p24, 15q. According to our model, this means there is an estimated proportion of 15% of voters that will always vote Labour. On the other side, 24% of voters are found to be stubborn "anti-Labour" -by that we don't mean that they are fundamentally against the Labour party but rather that they will never vote for it. Note that these estimates fluctuate according to the variability of the data. For example in 1922 and 1923 there were twice in a row 38% votes for Conservative3 and as a result it was estimated that 38% of all voters are stubborn pro-Conservative and the 62% are stubborn against the party. This is indeed what maximises the likelihood, with this configuration yielding a probability of 1 for the observed values. On the other hand, with pro-Conservative votes jumping from 38% to 61% in 1935, estimated values of s 0 and s 1 dropped significantly to account for the wide range covered by the data.

In Figure 1 and Figure 2 we compare our predictions, that is the expectations xi , with the real outcomes x i . We plot both values for each election starting with the third one that took place in 1924, because the optimisation problem (7) requires i ě 3. For both parties, most values seem to fluctuate around the 40% mark. The global tendency of the real outcomes looks respected by the predictions, albeit with less variability. Also note that most predictions appear to be within a ˘5% vicinity of the real values.

To get a better insight we look at the absolute errors |x i ´xi | of our predictions. We plot running averages over the last 5 elections in Figure 5. After a few erratic first years they seem to stabilise between 2 and 8%. More precisely, if we discard the first few years up until 1960 where the model lacks sufficient amount of data to properly calibrate, we get MAEs of respectively 4.63% and 5.23% for Conservative and Labour. Minimal values of 0.06% for Conservatives in 1979 and 0.40% for Labour in 2001 are observed, showing that our method was able to make very accurate predictions in these cases. Surprisingly however, the errors do not seem to monotically decrease over time, but rather fluctuate. As a matter of facts, peak absolute errors were observed in 1983 (Labour, 13.0%) and 1997 (Conservative, 13.6%).

Results for the US

We apply the exact method described above to the case of presidential elections in the United States. As we did before we independently consider two cases, Republicans versus non-Republicans and Democrats versus non-Democrats. Presidential elections in the US take place every 4 years and we start with the year 1912, then 1920, 1924, and so on. Here again, keep in mind that due to how the American system work, the party with the most popular votes does not necessarily win the elections. The first estimation we are able to make is based on the first two elections and thus our first prediction is for 1924.

We observe similar results as in the UK case. Stubborn values (Table 1, right) estimated ps ‹ 0 , s ‹ 1 q are close, albeit a little bit lower -stabilising at (18,17) for Republicans and (16,14) for Democrats. Regarding the predictions (Figure 3, Figure 4) we again see a majority of them within a 5% margin from the actual outcomes, and a prediction curve that looks more stable than the slightly spiky ones with real values. Note that because of the two-party system in place in the United States, both Republicans and Democrats see their share of popular votes fluctuate around the 50% mark. In the previous case, it was rather around 40% because of the space occupied by smaller parties such as Liberal Democrats or Scottish National Party amongst others. The two-sided aspect of our model -always one party (0) versus another (1) -may thus be more adapted to the study of the US system.

As for the errors, running averages over the last 5 elections are shown in Figure 6. Here again after a few erratic first years values appear to be comprised between 2 and 8%. However, where errors in the UK case seemed to increase in the last few years, here they to are dropping down. In fact, our most accurate forecast regarding Democrat votes is for 2016, with only 0.04% error. For Republicans it is in 1940 with 0.10%. Peak errors were again around 13% for both parties, in 1972 (Republicans, 14.0%) and 1964 (Democrats, 12.3%). The MAE over all elections, starting in 1940 when forecasts start to stabilise, is 4.27% for Republicans and 4.83% for Democrats. This is slightly better than in the UK case (4.63% and 5.23%). The MAE error over both cases is then 4.74%.

Conclusion and future work

In this paper we proposed a new method for the forecast of elections results. A lot of published work have used Twitter data for this purpose, usually applying machine learning algorithm to extract sentiment from tweets and estimate a candidate's popularity this way. Such methods have been criticised in the past few years, with problem ranging from bot presence to text mining reliability that cast doubt over their reliability. As such, our model does not rely on Twitter data at all. Instead, we used official results of past elections in the United Kingdom and in the United States to try and predict outcomes of future ones.

Our method is based on findings from a previous work of ours, where we conducted a theoretical analysis of the voter model with stubborn on strongly-connected graphs. Here we applied those in the case to try and predict the percentage of popular votes won by Conservative and Labour parties in the United Kingdom, and the percentage of popular votes collected by the Republican and Democratic parties in the United States. To do so, we considered official results of past elections as observations of independent realisations of the voter model. From there we were able to perform time-evolving estimates of the model parameters and use them to forecast an outcome.

Our model yielded an MAE of 4.74%, reaching absolute errors as low as 0.04% and as high as 14%. In their review, Gayo-Avello ( 2013) suggest that any model used to predict the elections outcome should not have an MAE higher than 1 or 2%. This is because the result of an election is more often not the matter of just a few percents. According to this standard, our MAE is not low enough to reliably predict the outcome of an election. Some previous works reached error averages as low as 0.63 [START_REF] Saleiro | Sentiment aggregate functions for political opinion polling using microblog streams[END_REF] and 1.65% [START_REF] Tumasjan | Election forecasts with twitter: How 140 characters reflect the political landscape[END_REF]. Additionally, we tested our method against the baseline of systematically predict the exact result of the previous election. This simple method returned an overal 5.03% average error, which is not much worse than the 4.74% obtained via our method. Moreover, the first few elections results were discarded in both cases, as it was deemed that the model did not have enough data at this point to make predictions with a high enough confidence. The choice of a limit though is made on the basis of our observation of the model's behaviour and is purely subjective. Changing the limit would in turn make for different results that might be better or worse.

Although our method did not prove to yield significant enough results here, we believe it is an interesting step in a novel direction. Despite some impressive accomplishments, there is lot of controversy regarding Twitter-based forecasting which is deemed unreliable by a lot of authors. Thus our method that uses results of previous elections provides a new take on the matter, which only relies on official data. Also our model does not only forecast the elections results, it also gives us estimates of the quantity of stubborn voters that are firmly pro or against any given party. This provides meaningful insight on the political landscape of the considered areas.

Several extensions of the model could be considered to improve its accuracy. First of all, adding in-between election polls to the data would go a long way in improving the estimates. With a few years gap from one election to another, it is too wide a range of possibilites for the model to account for. Second, one could take a deeper look into the past of a country's results adn try to detect tendancies about landslide victories, incumbency reelection and so forth. We believe that having a deeper understanding of the specific country one is working with could substantially improve the model calibration process. The shaded area covers a ˘5% deviation away from the predictions. The shaded area covers a ˘5% deviation away from the predictions. The shaded area covers a ˘5% deviation away from the predictions. Table 1: Evolution of the estimates for the proportion of stubborn agents ps ‹ 0 , s ‹ 1 q over time. Left: United Kingdom. Right: United States.

Figures and Tables

Year Conservative Labour

  1920

Figure 1 :

 1 Figure 1: Percentage of popular votes for Conservatives in the UK, prediction and reality.The shaded area covers a ˘5% deviation away from the predictions.

Figure 2 :Figure 3 :

 23 Figure 2: Percentage of popular votes for Labour in the UK, prediction and reality. The shaded area covers a ˘5% deviation away from the predictions.

Figure 4 :

 4 Figure 4: Percentage of popular votes for Democrats in the US, prediction and reality.The shaded area covers a ˘5% deviation away from the predictions.

Figure 5 :Figure 6 :

 56 Figure 5: Absolute error between prediction and reality for the UK elections, running average over the last 5 elections.

https://en.wikipedia.org/wiki/United_States_presidential_election#Popular_vote_results

The dataset also includes in Conservative results: National, National Liberal and National Labour candidates for 1931-1935; National and National Liberal candidates for 1945; National Liberal candidates from 1945 to 1970.

Remember that those value are rounded to the nearest integer to fit the needs of our model -the actual results were 38.5% and 38%.

This project was funded by the UK EPSRC grant EP/S022503/1 that supports the Centre for Doctoral Training in Cybersecurity delivered by UCL's Departments of Computer Science, Security and Crime Science, and Science, Technology, Engineering and Public Policy.

Funding

Availability of data and materials

All code used is available online at https://github.com/AntoineVendeville/HowOpinionsCrystallise. Data for the United Kingdoms elections is available online [START_REF] Audickas | UK Election Statistics: 1918-2019 -A Century of Elections[END_REF]. Data for the United States elections has been crawled from Wikipedia (https://en. wikipedia.org/wiki/United_States_presidential_election#Popular_vote_results).

Abbreviations

MAE: Mean Absolute Error. UK: United Kingdom. US: United States.

Competing interests

The authors declare that they have no competing interests.

Authors' contributions

This is a joint work by the three authors, with A.V. being the leader of the project.

Authors' information


Elodie Bouzekri

Célia Martinie

&philippe Palanque
email: palanque@irit.fr

From Human-Human Computer Mediated Communication to Human-Automation Collaboration in the light of Large Civil Aircraft Workplace

Keywords: Human-centered computing → Human computer interaction (HCI), Interactive systems and tools, Automation, collaboration, task modelling, aircraft cockpits

This position paper proposes the use of human-human collaboration models to study human-automation collaboration. We first present some of most prominent models from psychology and HCI and project their content to identify design rules that could be used to design and evaluate human-automation collaborations. We apply these principles to the workplace of cockpits of large civil aircrafts.

INTRODUCTION

The evolution of computer use from one computer for several persons to many computers for one person could have been the end of multi-user computing. However, the widespread of internet and the rise of social computing has demonstrated that dealing with single user applications is nowadays part of history. Designing interactive systems thus requires, most of the time, to address the needs of groups of users involved in common tasks for which the communication, coordination and production is mediated by computers. Despite this undeniable situation, most of the research contributions in the area of interactive systems engineering still focus on single user applications. This is easily understandable as multi-users application are far more difficult to build than single user ones. This difficulty comes from different sources:

•

The difficulty to gather and understand the requirements as well as the need of the users;

• The difficulties to address the required communication infrastructures in order to allow both synchronous and asynchronous communication between the users;

• The difficulty to ensure usability of these applications that are used jointly by different users (with different characteristics and needs) and under different environmental conditions (time zones, seasons, light, sound, …); •

The difficulty to ensure the reliability of these computing systems involving underlying communication mechanisms, networks and the fact that their testing and validation is even more complex as they involve multiple, diverse software and hardware entities.

These problems are even more prominent when it comes to largely distributed worldwide teamwork such as international collision avoidance systems for satellites [START_REF] Martinie | Multi-models-based engineering of collaborative systems: application to collision avoidance operations for spacecraft[END_REF].

2

When it comes to automation, there is a very important difference to highlight, the fact that automation can be considered as co-located with the user thus removing the issue of latency, time zones and reliability of communication means. However, if the human-automation team is controlling a remote entity (e. g. the Automated Transfer Vehicles for refueling the International Space Station or satellite ground segments) some of the problems become valid again [START_REF] Feary | Multiple Views on Safety-Critical Automation: Aircrafts, Autonomous Vehicles, Air Traffic Management and Satellite Ground Segments Perspectives[END_REF]. This position paper aims a positioning human-human computer mediated communication knowledge and principles in the perspective of human-automation collaboration. On the other side, we will also revisit the work on human-automation teaming such as [START_REF] Battiste | Human-Automation Teaming: Lessons Learned and Future Directions[END_REF]. Beyond, as the workshop focuses on automation, experience and workplace we will concentrate on the special context of work of large civil aircrafts.

HUMAN-HUMAN COLLABORATION

Aircraft cockpits are workplaces were several persons, names crewmembers collaborate to achieve a common goal: to bring passengers of the aircraft from one location to another.

Collaboration in large civil aircraft cockpit workplace

To pilot the large civil aircraft, the crewmembers operates the avionics systems through human-machine interfaces called command and control systems and located in the cockpit. Avionics system includes all the physical systems (engines, sensors, flaps ...), electrical, electronic and computer systems (autopilot, digital flight controls digital flight controls ...), embedded in the aircraft. The cockpit embed screens that support the display of information coming from several avionics systems on the same screen. To control the avionics systems, the crewmembers use many physical buttons analog cockpits, physical buttons placed at the disposal beside the displays.

The main goals of the crewmembers, by order of importance, are to fly, navigate, communicate and manage platforms. Nowadays, flying crews are composed of two crewmembers, which can have one of the two following roles: Pilot Flying (PF) and Pilot Monitoring (PM). PF is in charge of flying the aircraft and of stabilizing its pitch, altitude, bank angle, vertical and horizontal flight plans. Pilot Monitoring is here to back up PF by monitoring and making call outs. In the early days of commercial aviation, a third crewmember (see example in Figure 1) was in charge of managing avionics system and of recalculating flight plan in case of adverse events, such as clearance from the air traffic controller [START_REF] Wiener | Human factors of advanced technology (glass cockpit) transport aircraft[END_REF].

Main principles of description of human-human collaboration

The description of human-human collaboration requires the explicit identification of the tasks that each human has to perform, in order to understand and allocate the work between them. It also requires the identification of specific aspects of the collaboration. Cooperative work may be dedicated to one or more of the following type of collaborative activities: production, coordination, communication. It is then possible to associate one or more properties amongst this set. For example, Figure 4 a) shows that one task is dedicated to coordination whereas Cooperative tasks may be performed within various space-time constraints (local/distant, synchronous/asynchronous) [START_REF] Ellis | Groupware: Some issues and experiences[END_REF]. Table 1 presents these different space-time constraints and illustrates the different possibilities with an example.

Table 1. Time Space Matrix from [4]

Same Time Different Times Same Place

Face to face interaction Ex: Collaboration between pilots in the cockpit

Asynchronous interaction Ex: Post-it Different Places

Synchronous distributed interaction Ex: Collaboration between pilot and air traffic controller Asynchronous distributed interaction Ex: Mail

Notation for the description of human-human collaboration

To apply these main principles of description, we use the notation HAMSTERS-XL [START_REF] Martinie | Multi-models-based engineering of collaborative systems: application to collision avoidance operations for spacecraft[END_REF] for describing collaborative tasks i.e. tasks having group of users trying to achieve common goals. HAMSTERS-XL provides elements to describe abstract group tasks as well as individual cooperative tasks. Several human persons are involved in collaborative work, each one having a role in the achievement of common goals. Collaborative work can be described at different abstraction levels: at the group level and at the individual level. A group task is a set of task that a group has to carry out in order to achieve a common goal [START_REF] Feary | Multiple Views on Safety-Critical Automation: Aircrafts, Autonomous Vehicles, Air Traffic Management and Satellite Ground Segments Perspectives[END_REF], whereas a cooperative task is an individual task performed by a person in order to contribute to the achievement of the common goal [START_REF] Roschelle | The construction of shared knowledge in collaborative problem solving[END_REF]. Table 2 presents the main types of tasks for describing individual and collaborative tasks in task models.

Table 2. Individual and human-human computer mediated collaboration task types in HAMSTERS-XL

To identify time-space constraints, dedicated notation elements are available for cooperative tasks, as illustrated in Table 3. The Table 4 presents associations of cooperative tasks of the pilot and flight engineer roles.

Cooperative task Linked to

"Ask for a new flight plan" (P1) "Listen to the request for a new flight plan" (FE1) "Communicate progression" (FE2) "Listen to flight engineer's report on his progression" (P2) "Communicate a new flight plan" (FE3) "Listen to flight engineer's recommendation" (P3) "Request for another route" (P4) "Hear and acknowledge other route request" (FE4) "Confirm the route" (P5) "Hear and acknowledge confirmation of the route" (FE5)

HUMAN AUTOMATION TEAMING

Aircraft cockpits are nowadays workplaces where crewmembers interact between each other and with automation.

Automation of the flight management

Several decades ago, the two pilots' forward facing cockpit was introduced, such as A300 1 , and reduced the crew to two members: Pilot Flying and Pilot Monitoring. The "Manage systems" tasks was partly automated with an alerting system and the Pilot Monitoring is now in charge of monitoring this alerting system to manage systems. The flight path calculation has also been automated using the Flight Management System (FMS) and an auto-piloting system has been introduced to reduce workload during critical phases of flight. Figure 4 depicts the three loops of automation that include: the direct interaction between Pilot Flying and flight commands (no automation), the interaction between Pilot Flying and auto-pilot (automation of task "fly"), and the interaction with the FMS (automation of the task "Navigate").

Main principles of description of human-automation collaboration

When dealing with human-automation collaboration, it becomes insufficient to describe only the program of the system. Indeed, human-automation teaming requires transparency (mutual understanding), bi-directional communication and operator directed execution (responsibility of the final decision to the human) [START_REF] Battiste | Human-Automation Teaming: Lessons Learned and Future Directions[END_REF]. Description of human-automation teaming requires to describe [START_REF] Schulte | A Design and Description Method for Human-Autonomy Teaming Systems[END_REF]: actors (both human and automation), role allocations of actors and their relationships. In addition, it is required to identify the cooperative tasks of the 'automation' actor that are actually implemented by one or several functions, as well as the type of collaborative tasks between the 'automation' actor and the human actor. Cummings and Bruni [START_REF] Cummings | Collaborative Human-Automation Decision Making[END_REF] defined a taxonomy of human-automation collaboration based on the tasks that the human and the automation perform: data acquisition tasks, analysis tasks, decision tasks and motor (action) tasks (see Figure 5). For example, the Decider is the actor(s) that makes the final decision.

Notation for the description of human-automation collaboration

To apply these main principles of description, we use the HAMSTERS-XL notation [START_REF] Martinie | Multi-models-based engineering of collaborative systems: application to collision avoidance operations for spacecraft[END_REF] that provide elements of notation for describing cooperative tasks of both human actors and 'automation' actors. The cooperative human tasks are the same as the ones presented in Table 2. The Figure 6 presents the system task types. The input and output tasks are cooperative tasks that receive or send information. A separate model describes the tasks performed by a role of an 'automation' actor. In order to describe the associations between automation cooperative tasks and human cooperative tasks and the flow of information between them, we define cooperation protocols. A cooperation protocol describes information sharing between several cooperative tasks, which contributes to transparency. Five attributes composed a cooperation protocol:

(main) type of collaborative activities (see Figure 2), the localization and time (see Table 3), cardinality (broadcast, unicast, groupcast or anycast) and the information shared. Despite the fact that the envisioned FMS aims to implement some of the tasks that the flight engineer used to perform, the collaboration will be of a different nature. For instance, the flight engineer might take time between receiving a request and processing it and might even forget it. The automation at the opposite will process information immediately (at least this will be perceived as such by the pilot). Indeed, the interaction with automation might look like a standard interaction on a button: the user presses the mouse button while the cursor is on it (this corresponds to sending a request) and the immediate graphical feedback showing the button pressed corresponds to the acknowledgement. This fine grained interaction will have to be design, standardized and implemented for any kind of cooperation or the interaction with automation will not be transparent [START_REF] Bernhaupt | Transparent Automation for Assessing and Designing better Interactions between Operators and Partly-Autonomous Interactive Systems[END_REF]. This might be even more complex due to the multiple objectives of automation [START_REF] Palanque | Engineering Automations: From a Human Factor Perspective to Design, Implementation and Validation Challenges[END_REF]. Even though some design rules have been proposed we are far from having standards defining interaction [START_REF] Palanque | Ten Objectives and Ten Rules for Designing Automations in Interaction Techniques, User Interfaces and Interactive Systems[END_REF].

CONCLUSION AND TAKE AWAY MESSAGE

Integration of automation in the workplace started several decades ago. This paper highlights how automation has been integrated in commercial aircraft cockpits to automate part of the flight management tasks. Nowadays, there is a raising interest in AI technologies to automate additional human tasks. This questions the way the humans will interact with this new kind of automation. Should this interaction be limited as it can be interpreted by exploring a Google car (see Figure 9 a))? Or should this interaction be very complete in order to provide humans information about what the system is collecting, doing, proposing and to provide humans ways to control this intelligence, as in command and control rooms (see Figure 9 b))? The design and development of workplaces that exploit automation and AI will still require notations, techniques and tools to describe precisely the human automation collaboration. Furthermore, in workplaces using critical systems, such descriptions will be mandatory to support the certification process of these systems.

Figure 1 .

 1 Figure 1. Cockpit of an airbus A300 with pilot flying, pilot monitoring and flight engineer

Figure 4 bFigure 2 .

 42 Figure 2. Example of cooperative task properties from a "functional clover" [2]

2. 4

 4 Figure 3 presents an example of the usage of this notation through tasks models. These tasks models describe a group task: "Modify flight plan". This group task describes the recalculation of the flight plan by the flight engineer on pilot's request due to weather adverse events. In this section, we focus on two roles of the crew: pilot flying and flight engineer. After the detection of weather adverse, the pilot flying asks for a new flight plan to the flight engineer. "Ask for a new flight plan" (P1) is a cooperative motor task with "Listen to the request for a new flight plan" (FE1) cooperative perception task of the flight engineer. This cooperation is local (in the cockpit) and synchronous (oral communication). These tasks describe a coordination between the pilot flying and the flight engineer. The pilot allocates a new next task (calculate a new flight plan) to the flight engineer. Then, the pilot flying and the flight engineer discuss and choose a new flight plan until one of the options is confirmed. The flight engineer communicates his progression (P2 and FE2) while calculating a new flight plan. Afterwards, the flight engineer proposes a new flight plan (P3 and FE3). After a validation (PE5 and FE5 user cooperative task) or a rejection (P4 and FE4 user cooperative task) of this new flight plan, the flight engineer calculates another flight plan or applies the new flight plan. All these cooperative tasks are local to the cockpit and synchronous.

Figure 3 .

 3 Figure 3. Recalculation of the flight plan by the flight engineer on pilot flying's request due to weather adverse events

Figure 4 .

 4 Figure 4. Three levels of automation of the flight management task

Figure 5 .

 5 Figure5. High-level view of the three collaborative decision-making process roles: moderator, generator, and decider from[START_REF] Cummings | Collaborative Human-Automation Decision Making[END_REF]

Figure 6 .

 6 Figure 6. System task types

3. 4

 4 Figure 7 presents an example of the usage of this notation. These tasks models describe the same group task as before. However, the flight engineer role is automated. We consider an envisioned FMS. This envisioned FMS can recommend flight plans to the pilots. This FMS performs similar tasks as the flight engineer but automated: receive the request (CP1), calculate a possible new flight plan and display progression (CP2), then decide a flight plan to propose to the pilots (CP3) and iterates (if rejection by pilots (CP4)) until the proposed flight plan is confirmed (CP5). Finally, the FMS displays the new flight plan to pilots (CP6).

Figure 7 .

 7 Figure 7. Recalculation of the flight plan due to weather adverse events with the envisioned FMS Figure 8 presents the cooperation protocols between the pilot and FMS roles. For example, the CP4 and CP5 are cooperation protocols describing the communication of the decision made by pilots on the proposed flight plan (reject or confirm). The pilots are the deciders of the flight plan selection. These cooperative tasks are synchronous, local to the cockpit and unicast (from the pilot to the FMS).

Figure 8 .

 8 Figure 8. Cooperation protocols properties

Table 3 .

 3 Time and space properties for cooperative tasks

	Local	Distant
	Synchronous
	Asynchronous

Table 4 .

 4 Cooperative tasks table.

https://www.airbus.com/company/history/aircraft-history/1970-1972/a300.html

ACKNOWLEDGMENTS

This work is partly funded by IKKY research project grant from Airbus.