in this paper , we propose a linear threshold agent - based model ( abm ) for the spread of political revolutions on social networks in dictatorial regimes . in our abm , nodes of the network can be in two states : active , i.e. , participating in the revolution , or inactive .
transitions from the inactive to the active state are governed by a growth process that uses a traditional linear threshold mechanism : an individual @xmath1 may change from the inactive to the active state if the fraction of neighbours in the active state exceeds the linear threshold @xmath2 .
linear threshold models have been studied before in the context of influence maximization @xcite , enforcement of unpopular norms @xcite , and general `` complex contagion '' processes @xcite .
the development and analysis of linear threshold processes has been highly influenced by more established epidemiology @xcite and rumour spreading @xcite models , with one key difference : whereas a contact with a single `` infected '' individual is enough to spread a contagion in most epidemiology or rumour spreading applications , i.e. in `` simple contagion '' processes , multiple contacts with infected individuals are generally necessary to spread a contagion in a linear threshold process .
indeed , epidemiological and rumour spreading models can be considered to be a special case of linear threshold models where the threshold parameter is chosen sufficiently small such that one infected neighbour enables propagation .
most of the linear threshold models that have been studied in the context of social spreading or contagion processes @xcite consider evolution in discrete time .
in contrast , our abm is chosen to evolve in continuous time since that facilitates the comparison of the abm with simplified population - level models , which is a major goal of this paper .
the main justification for our linear threshold modelling approach in the context of political revolutions is that the decision to join a political revolution can be assumed to be a collective action problem @xcite : if individuals act unilaterally they are subject to retaliation by the regime , whereas if they act collectively then the regime loses the ability to punish due to a lack of resources .
the linear threshold modelling approach is consistent with the collective action principle , since an individual transitions from an inactive to an active state only after the number of neighbours in the active state has been observed to reach the critical fraction @xmath2 , and the individual deems the revolution of sufficient size to consider participation . in order to incorporate communication network structure explicitly
, we represent interactions between individuals @xmath1 by edges @xmath3 in an undirected graph @xmath4 .
this contrasts with previous attempts to model political revolutions using linear threshold models that assume homogeneous mixing @xcite , i.e. that assume that @xmath4 is the complete graph .
the goals and contributions of this paper are as follows .
we start by presenting the linear threshold abm for the spread of political revolutions on social networks , and then derive a hierarchy of simplified ordinary differential - equation ( ode ) models of varying degree of sophistication that characterize the solutions of the linear threshold abm , see table  [ tab : hierarchy ] .
although the linear threshold abm allows us to explicitly model the effects of the communication network on the dynamics of the political revolution it models , the inherent complexity of modelling the state of all individuals simultaneously makes this approach difficult to analyze and expensive to simulate . for these reasons there is significant interest in simplified aggregate or population - level dynamical models , which can provide more cost - effective dynamical simulations , and can give insight in the qualitative dynamics of the abm and its parameter regimes , through dynamical analysis of the simplified model .
it is a significant challenge to incorporate actual network structure in the ode models , and this is often important since details of the network structure may determine the qualitative behaviour of abm solutions as the abm parameters are changed . in this paper , we present two new effective ways to incorporate network structure into the one - compartmental ode that approximates the dynamical evolution of the expected fraction of the population that participates in the revolution in the linear threshold abm model .
these approaches make use of the degree distribution of the graph or samplings of the network , and we call the resulting population - level ode models the _ binomial visibility function _ ( bvf ) and the _ empirical visibility function _ ( evf ) models . the evf model is significantly less expensive than the bvf , but we demonstrate its equivalence with the bvf in the limit of large network and sample size .
extensive numerical tests show that these ode models perform remarkably well to predict qualitative behaviour of the abm ; in fact , they often perform as well as or better than a previously specified higher - order model that has many compartments and is much more expensive computationally @xcite , and that we refer to as the _ degree approximation _ ( da ) model .
.summary of hierarchy of models from highest ( network - level ) to lowest ( population - level ) complexity . [ cols="<,<,<,<,^",options="header " , ]     [ tab : sum_stats ]
it is interesting to consider how the physical contact and facebook networks differ on some common network measures , see table [ tab : sum_stats ] . comparing the physical contact and facebook
social networks along these admittedly limited measures nevertheless highlights substantial structural differences between these networks .
the physical contact network appears more homogeneous than the facebook social network , in the sense that the facebook social network can be visually grouped into distinct communities , whereas the physical contact network can not ( fig .
[ fig : vis ] ) .
the network measures presented in figs .
[ fig : deg_distn]-[fig : clust_coeff ] and table  [ tab : sum_stats ] are generally supportive of this observation . for example , the cumulative degree distributions displayed in fig .
[ fig : deg_distn ] show that the physical contact network has an approximately normal distribution with a relatively small standard deviation , and hence , a thin tail .
in contrast , the facebook social network has a much broader distribution ( possibly scale - free or exponential , although this can not be determined conclusively with such a small network size ) with a relatively large standard deviation , and hence , a fat tail .
similarly , it is known that online social networks often have larger clustering coefficients than offline social networks . in section [ sec : interp ] we use the facebook and physical contact networks as representatives of online and offline social networks , respectively , to investigate differences in propagation properties that may arise between online and offline social networks within the linear threshold propagation model .
consider a population of individuals who are represented by nodes @xmath5 , and whose interactions are represented by edges @xmath6 , of the graph @xmath4 with degree distribution @xmath7 .
an individual @xmath8 at time @xmath9 can be in one of two states , i.e. @xmath10 ( _ inactive _ in the revolution ) or @xmath11 ( _ active _ in the revolution ) .
we assume that the network @xmath12 is static so that the dynamics of the abm can be fully specified by providing rules for the transition of individuals from an inactive state to an active state and vice versa , together with parameter values and an initial condition . for the moment , we set aside the issue of the choice of parameters and initial conditions and restrict the remainder of this section to the specification and justification of the transition rules .      to specify the growth process of the abm , we use the standard linear threshold model that has been used before in the context of social spreading or contagion processes such as opinion formation , technology adoption , marketing , rioting , and political movements @xcite . as mentioned in section [
sec : intro ] , the choice of individuals to join a revolution is a collective action problem @xcite : individuals are averse to unilateral action against the regime for fear of severe retaliation , but are willing to take action collectively in the belief that the regime will lack sufficient resources to punish the entire collective .
thus , an individual @xmath8 will decide to join the revolution if he or she believes that it has grown sufficiently large to reduce the risk of retaliation from the regime to an acceptable level .
it is reasonable , therefore , to assume that individuals will decide to join the revolution only after a large enough fraction of their neighbours in the social network have done so .
this behaviour is captured by the following transition rule : if individual @xmath8 has @xmath15 neighbours @xmath16 , if @xmath10 , and if @xmath17 i.e. , if @xmath1 is inactive at time @xmath9 and has at least a fraction @xmath18 of its neighbours that are active , then node @xmath1 transitions from state 0 to state 1 at time @xmath19 , where @xmath20 is the first arrival time of a poisson process with rate @xmath21 .
we say that nodes that satisfy equation   can `` see '' the revolution , i.e. the revolution is visible to them .
alternatively , we say that these nodes are `` considering joining the revolution '' .
parameter @xmath21 determines the timescale of the growth process .
while most of the linear threshold models that have been studied in the context of social spreading or contagion processes @xcite consider evolution in discrete time by choosing @xmath22 constant , we have specified @xmath22 so that equation   evolves in continuous time .
specifying @xmath22 in this way is often considered in biology and epidemiology @xcite , since it ( a ) facilitates the comparison of the abm with population - level models ( as the svf model described in section [ sec : consist_abm_svf ] ) , and ( b ) eliminates the problem of choosing a suitable time - step for iterating the discrete - time process .
furthermore , we note that by choosing @xmath22 to be the first arrival time of a poisson process , we are assuming that the decision making process is a markov , or memoryless , process .
specifically , conditioned on the state of the system at time @xmath9 , we assume that the likelihood of an individual joining the revolution in the time interval @xmath23 $ ] is independent of the state of the system at any time @xmath24 . in words , the future is independent of the past , given the present .
we assume that once an individual @xmath8 has become active the regime will attempt to arrest or disperse him or her , thus returning @xmath1 to an inactive state . as in the previous section
, we assume that this is a memoryless process .
we further assume that the regime can only arrest or disperse protesters so long as the total fraction of active protesters remains less than the regime s finite police capacity @xmath25 .
the transition rule can then be characterized by the following : if @xmath26 and @xmath27 i.e. , if @xmath1 is active at time @xmath9 and the fraction of active individuals is less than the regime s police capacity @xmath28 , then the node @xmath1 transitions from state 1 to state 0 at time @xmath29 , where @xmath30 is the first arrival time of a poisson process with rate @xmath31 , which determines the timescale of the decay process .
this fully specifies the evolution of the abm , which we simulate using gillespie s algorithm , see appendix [ sec : gillespie ] .
0.48 , @xmath28 , @xmath21 , and @xmath31.,title="fig : " ]    0.48 , @xmath28 , @xmath21 , and @xmath31.,title="fig : " ]    before deriving a population - level ode for the linear threshold abm and establishing the consistency of the svf model from @xcite with the abm in the following section , it is useful to first review some basic properties of the svf model .
for example , we will show later that the parameter regimes of the svf are predictive of the parameter regime transitions in the abm .
the svf model is given by the equation @xmath32 with parameters @xmath33 and @xmath34 .
the growth and decay of the fraction of protesters @xmath35 are modelled by the _ growth _ and _ decay _ functions @xmath36\rightarrow\mathbb{r}^+$ ] , respectively .
given their roles in determining the rate of growth and decay , the parameters @xmath21 and @xmath31 are called the _ protesters enthusiasm _ and _ police efficiency _ parameters in @xcite . the growth and decay in the number of protesters are modulated by the _ visibility _ and _ policing _ terms that are taken to be step functions @xmath37 and @xmath38 , where the indicator function is defined as @xmath39 these functions are parametrized by _ visibility _ and _ police capacity _
parameters @xmath40 and @xmath28 , respectively . in words ,
the fraction of protesters can grow only when the protest movement is sufficiently large to be `` visible '' to the general population , i.e. when protests are large enough that their existence can not be masked by the regime through censorship .
conversely , the fraction of protesters can decay only so long as the fraction of protesters is less than the regime s finite capacity to disperse or arrest protesters .
this is consistent with the idea that individuals who consider joining the revolution are faced with a collective action problem @xcite : if they choose to act unilaterally then they face severe retaliation from the regime , so they wait to act until the revolution becomes visible and if they act collectively then the regime loses the ability to punish due to a lack of resources .
depending on the values of the parameters @xmath40 , @xmath28 , @xmath21 , and @xmath31 , the dynamics of the svf fall into one of four main regimes , see fig .
[ fig : svf_summary ] . the equilibrium of _ total state control _ @xmath41 and the equilibrium of the _ realized revolution _
@xmath42 are present in all parameter regimes and are always locally asymptotically stable .
different parameter regimes are distinguished by the behaviour of equation   when @xmath43 lies between @xmath44 and @xmath28 .
region ii ( @xmath45 ) is characterized by an interval of stable equilibria @xmath46 bounded by two unstable equilibria @xmath47 . since parameters in region
ii are characterized by a relatively weak regime ( low @xmath28 ) and relatively small visibility ( low @xmath40 ) , region ii is interpreted in @xcite as the _ failed state _ parameter region .
in contrast , regions iii0 , iiie , and iii1 ( @xmath48 ) are characterized by a relatively strong regime ( large @xmath28 ) and relatively large visibility ( large @xmath40 ) and differ in the value of the quantity @xmath49 , i.e. in the ratio of protester s enthusiam to the sum of protester s enthusiasm and police efficiency . in region iii0 ,
i.e. when @xmath50 , the interval @xmath51 lies in the basin of attraction of the equilibrium of total state control @xmath41 .
analogously , in region iii1 ,
i.e. when @xmath52 , the interval @xmath51 lies in the basin of attraction of the equilibrium of the realized revolution @xmath42 .
finally , in region iiie , i.e. when @xmath53 , the interval @xmath54 becomes the basin of attraction of a new equilibrium @xmath55 , which is called the _ equilibrium of civil unrest _ in @xcite .
because of the contribution of the interval @xmath51 to the stability of the equilibrium of total state control , of the realized revolution , or of civil unrest , regions iii0 , iii1 , and iiie are called the _ stable police state _ , _ unstable police state _ , and _ meta - stable police state _ , respectively . for a full description , interpretation , and analysis of the svf model
we refer the reader to @xcite .        to show consistency of the abm proposed in section [ sec : spec_abm ] with the svf model of @xcite we begin by defining @xmath56 to be the fraction of nodes ( in the abm model ) that are expected to be in state 1 , i.e. the expected fraction of active nodes at time @xmath9 conditioned on information at time @xmath57 : @xmath58.\ ] ] the fraction of nodes that are expected to be in state 0 ( inactive ) at time @xmath9 , conditioned on information at time @xmath57 , is then @xmath59 .
we now write the change in @xmath60 from time @xmath57 to time @xmath9 as @xmath61 where @xmath62 , and the expected growth and decay of the fraction of active nodes are modelled by the non - negative growth and decay functions @xmath63 , and @xmath64 , respectively . in order to obtain the one - compartment model we will need to approximate the quantities @xmath65 and @xmath66 in terms of @xmath67 , @xmath68 , and @xmath28 .    for notational convenience
we begin by considering the case where @xmath69 .
the pool of individuals that can go from active to inactive at time @xmath57 is @xmath67 .
active nodes become inactive at the first arrival time of a poisson process with rate @xmath31 , provided that the fraction of active nodes does not exceed the regime s police capacity , i.e. @xmath70 .
thus , @xmath71 { \mbox { } } p(r_a;\beta ) = c_2 { \mbox { } } r_a(t_0 ) { \mbox { } } p(r_a(t_0 ) ; \beta ) { \mbox { } } \delta t+ o(\delta t),\ ] ] where we take @xmath38 , as in equation  .
next , let @xmath72,\ ] ] where @xmath73 denotes the neighbours of individual @xmath8 . in words , we let @xmath74 be the fraction of the total population at time @xmath57 that can see the revolution .
we call @xmath74 the visibility function of the linear threshold abm . in the chosen notation for @xmath75
it is emphasized that @xmath75 depends on @xmath67 , i.e. on the fraction of nodes that are active at time @xmath57 . at time @xmath76 , the pool of individuals that can go from inactive to active , i.e. that are considering joining the revolution , is therefore approximately @xmath77 . since inactive nodes that can see the revolution become active at the first arrival time of a poisson process with rate @xmath21 , we have @xmath78    combining equations - and dividing by @xmath79 gives @xmath80 taking the limit as @xmath81 yields @xmath82 this establishes a general population - level ode model that approximates the linear threshold abm , with visibility function @xmath83 .
to close the model , the visibility function has to be specified , guided by equation ( [ eq : nu ] ) . observe that if we substitute @xmath83 by the step function @xmath84 , then this exactly recovers the svf model of @xcite , see equation  .
so , provided that the step function @xmath85 is a suitable choice for @xmath86 , which we argued in the appendix of @xcite based on considering a simplified averaged threshold process that ignores correlations , this confirms the consistency of the abm and the svf . the crux of the argument used in @xcite , which we discuss further in sec .
[ sec : bvf ] , is that , for real networks @xmath86 can be expected to be a steep sigmoidal function of @xmath43 , which can be approximated by a step function . in this paper , we test these assumptions explicitly on the empirical physical contact and facebook social networks discussed above using abm simulations , and we derive new improved ode models that form a more accurate representation of @xmath86 than a step function , taking into account the actual network structure of the empirical networks .
the step function assumption was chosen in @xcite because it is useful when little information is known about the underlying network structure .
for example , without having to specify an underlying communication network , the svf model provides a potential mechanism by which networks with increased visibility @xmath40 are more susceptible to political revolution .
the following section explores the relationship between the abm and the svf model numerically for empirical networks by using a fitting procedure to attempt to estimate the network - dependent @xmath87 for which @xmath85 best approximates @xmath86 .
given this estimate for @xmath88 , we compare abm simulations to solutions of equation   in order to verify the consistency of the abm and the svf numerically and to investigate the abm behaviour in the parameter regimes of the svf model as described in fig .
[ fig : svf_summary ] .
section [ sec : avf ] then expands on this by proposing and analyzing a more sophisticated approximation for the visibility function @xmath86 .
we conclude this section by noting that the above derivation can easily be modified for the case where the @xmath18 are not uniform . in this case
the growth and decay functions @xmath89 and @xmath90 , respectively , can be computed by averaging over the distribution of the @xmath18 s .
( grey ) and solution to equation   ( black ) .
( right ) @xmath91 error between abm realizations and the solution to equation   versus @xmath40 .
the optimal @xmath92 is found by fitting equation   ( the svf model ) to @xmath93 abm simulations with parameters @xmath94 , @xmath95 , @xmath96 , @xmath97 , and @xmath98 ( region iii0 , @xmath99 ) .
, title="fig : " ]    ( grey ) and solution to equation   ( black ) .
( right ) @xmath91 error between abm realizations and the solution to equation   versus @xmath40 .
the optimal @xmath92 is found by fitting equation   ( the svf model ) to @xmath93 abm simulations with parameters @xmath94 , @xmath95 , @xmath96 , @xmath97 , and @xmath98 ( region iii0 , @xmath99 ) .
, title="fig : " ]     +     ( grey ) and solution to equation   ( black ) .
( right ) @xmath91 error between abm realizations and the solution to equation   versus @xmath40 .
the optimal @xmath92 is found by fitting equation   ( the svf model ) to @xmath93 abm simulations with parameters @xmath94 , @xmath95 , @xmath96 , @xmath97 , and @xmath98 ( region iii0 , @xmath99 ) .
, title="fig : " ]   ( grey ) and solution to equation   ( black ) .
( right ) @xmath91 error between abm realizations and the solution to equation   versus @xmath40 .
the optimal @xmath92 is found by fitting equation   ( the svf model ) to @xmath93 abm simulations with parameters @xmath94 , @xmath95 , @xmath96 , @xmath97 , and @xmath98 ( region iii0 , @xmath99 ) .
, title="fig : " ]     as a function of @xmath2 by fitting equation   ( the svf ) to @xmath93 abm simulations with parameters @xmath95 , @xmath96 , @xmath97 , and @xmath98 ( region iii0 , @xmath100 ) .
( blue circles ) facebook social network .
( red diamonds ) physical contact network .
line of best fit for networks given by solid ( @xmath101 , @xmath102 ) and dashed ( @xmath103 , @xmath104 ) lines , respectively . ]    , @xmath105 ) .
( right ) parameter region iii1 ( @xmath106 , @xmath107 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and bvf model ( dashed black ) with parameters @xmath108 , @xmath95 , @xmath96 , and @xmath109.,title="fig : " ] , @xmath105 ) .
( right ) parameter region iii1 ( @xmath106 , @xmath107 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and bvf model ( dashed black ) with parameters @xmath108 , @xmath95 , @xmath96 , and @xmath109.,title="fig : " ]     +    , @xmath105 ) .
( right ) parameter region iii1 ( @xmath106 , @xmath107 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and bvf model ( dashed black ) with parameters @xmath108 , @xmath95 , @xmath96 , and @xmath109.,title="fig : " ] , @xmath105 ) .
( right ) parameter region iii1 ( @xmath106 , @xmath107 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and bvf model ( dashed black ) with parameters @xmath108 , @xmath95 , @xmath96 , and @xmath109.,title="fig : " ]      in this section we simulate the abm on the physical contact and facebook networks for a fixed set of model parameters and find the optimal @xmath40 for equation   that minimizes the difference between the abm realizations and the output of equation  .
the closeness of the output of equation   and the abm realizations for broad ranges of parameter values demonstrates that the svf model does indeed approximate the abm , at least for non - pathological parameter choices .
we begin by fixing the initial condition @xmath110 is implemented by choosing @xmath111 nodes uniformly at random to be active . ] and the parameters @xmath112 , @xmath28 , @xmath21 , and @xmath31 . to compare realizations of the abm with the solution to equation   we use gillespie s algorithm ( summarized in appendix [ sec : gillespie ] ) to simulate @xmath93 realizations of the abm , recording @xmath60 at each @xmath113 , and then find the @xmath40 that minimizes the difference ( in @xmath114 norm ) between the abm realizations and the solution to equation   ( see appendix [ sec : solnsvf ] ) .
the results of this procedure for abm simulations performed on the physical contact and facebook social networks with parameters @xmath98 , @xmath94 , @xmath95 , @xmath96 , and @xmath97 are given in fig .
[ fig : fit_alpha_ode ] . for these parameters
we find the optimal @xmath40 is given by @xmath115 and @xmath116 for the facebook and physical contact networks , respectively .
equivalently , the fitted value for the visibility threshold @xmath44 is given by @xmath117 and @xmath118 , respectively .
holding the initial condition @xmath98 and parameters @xmath95 , @xmath96 and @xmath97 constant , we are able to repeat the fitting procedure to find fitted values of @xmath40 for @xmath119 .
these results are displayed in fig .
[ fig : fit_multi_theta_alpha ] and illustrate that for a large range of individual thresholds @xmath2 the facebook social network has a slightly lower fitted visibility threshold @xmath120 than does the physical contact network . observe that , for the parameters employed in figs .
[ fig : fit_alpha_ode]-[fig : fit_multi_theta_alpha ] ( @xmath94 , @xmath95 , @xmath96 , and @xmath97 ) , the svf model lies in the stable police state dynamical regime ( region iii0 , @xmath121 ) .
we note that this is critical to the fitting procedure , since the parameter @xmath40 appears in the solution to equation   only when the parameters @xmath40 , @xmath28 , @xmath21 , and @xmath31 lie in region iii0 , see appendix [ sec : solnsvf ] .
we then also attempt to approximate the abm by the svf model in regions iiie and iii1 by using the fitted @xmath92 displayed in fig .
[ fig : fit_multi_theta_alpha ] . figures [ fig : fit_alpha_iiie1]-[fig : fit_fail_regions_alpha_iiie1 ] show some representative results . as illustrated in fig .
[ fig : fit_alpha_iiie1 ] , for many combinations of parameters the svf model is able to approximate the behaviour of the abm in parameter region iiie ( left panels of fig .
[ fig : fit_alpha_iiie1 ] ) and parameter region iii1 ( right panels of fig .
[ fig : fit_alpha_iiie1 ] ) .
however , we observe that under certain circumstances stochastic effects and details of the network structure become important and the svf ode model fails to approximate , even in a qualitative sense , the behaviour of the abm .
specifically , the svf model fails to capture the behaviour of the abm when the initial condition is small ( @xmath122 ) , when the initial condition is near the boundary between the basins of attraction of @xmath41 and @xmath42 , and when parameters @xmath21 , @xmath31 , @xmath40 , and @xmath28 are close to the boundary between parameter regions iii0 , iiie , or iii1 in fig .
[ fig : svf_regimes ] , see figs .
[ fig : fit_fail_r0_alpha_iiie1 ] , [ fig : fit_fail_r0_regions_alpha_iiie1 ] , and [ fig : fit_fail_regions_alpha_iiie1 ] , respectively .
these are well - known limitations of population - level ode models that attempt to approximate complex dynamics @xcite .
note that these plots also provide comparisons with the binomial visibility function ( bvf ) model , which we introduce in section [ sec : avf ] .    in the previous section we observed that setting @xmath123 in equation   exactly recovers the svf model .
therefore , a natural strategy for improving on the ability of the svf model to approximate the aggregate behaviour of the abm is to specify an alternative visibility function that better captures the structure of the underlying network .
section [ sec : avf ] proposes two such visibility functions and compares their ability to approximate the abm to the ability of the svf model to approximate the abm .    ) , or
( right ) the initial condition is near the boundary between the basins of attraction of @xmath41 and @xmath42 ( @xmath124 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( black dashed ) with parameters @xmath108 , @xmath95 and @xmath125 ( region iii1 , @xmath126 ) . in the right panels , the bvf model performs much better than the svf model.,title="fig : " ] ) , or ( right ) the initial condition is near the boundary between the basins of attraction of @xmath41 and @xmath42 ( @xmath124 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( black dashed ) with parameters @xmath108 , @xmath95 and @xmath125 ( region iii1 , @xmath126 ) . in the right panels
, the bvf model performs much better than the svf model.,title="fig : " ]     +    ) , or ( right ) the initial condition is near the boundary between the basins of attraction of @xmath41 and @xmath42 ( @xmath124 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( black dashed ) with parameters @xmath108 , @xmath95 and @xmath125 ( region iii1 , @xmath126 ) . in the right panels , the bvf model performs much better than the svf model.,title="fig : " ] ) , or ( right ) the initial condition is near the boundary between the basins of attraction of @xmath41 and @xmath42 ( @xmath124 ) .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( black dashed ) with parameters @xmath108 , @xmath95 and @xmath125 ( region iii1 , @xmath126 ) . in the right panels ,
the bvf model performs much better than the svf model.,title="fig : " ]     and @xmath42 , i.e. when @xmath127 .
( left ) facebook social network @xmath128 ( @xmath129 ) and ( right ) physical contact network @xmath130 ( @xmath131 ) : equation   has solution in region iiie , while abm has solution in region iii0 .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( dashed black ) with parameters @xmath132 , @xmath95 , @xmath96 , and @xmath133 , and initial condition @xmath109 ( region iiie , @xmath134 ) .
the bvf model performs much better than the svf model . ]
( @xmath135 ) with parameters in region iii1 ( @xmath136 , @xmath137 ) :
equation   has solution in region iii1 , while abm has solution in region iiie .
( right ) physical contact network @xmath130 ( @xmath117 ) with parameters in region iiie ( @xmath138 , @xmath139 ) : the svf has solution in region iiie , while abm has solution in region iii1 .
time traces of @xmath93 abm simulations ( grey ) , solution to the svf model ( solid black ) , and solution to the bvf model ( dashed black ) with parameters @xmath94 , @xmath95 , and @xmath96 and with intial condition @xmath109 .
the bvf model performs much better than the svf model . ]
due to the difficulty of analyzing and computational cost of simulating the abm , as well as the limitations of the svf in approximating the abm , we propose two alternative choices for visibility functions ( different from the step - visibility function @xmath140 ) that can lend insight into how the abm process behaves on different networks .
specifically , sections [ sec : bvf]-[sec : evf ] introduce the binomial and empirical visibility functions , respectively ( bvf and evf ) .
these two visibility functions can be seen to be equivalent in the limit of large network and sample size , as shown in appendix [ sec : comp_bvf_evf ] .
section [ sec : comp_abm_bvf_evf ] demonstrates numerically that the use of the bvf / evf in equation   represents an improvement over the use of the step visibility function @xmath140 ( svf ) when approximating the abm for real networks .
consider the following derivation .
suppose that @xmath8 is a node in the network @xmath4 with degree @xmath15 , and that the fraction of nodes active in the revolution is @xmath43 .
also , assume that the states of @xmath1 s neighbours are active with probability @xmath43 independently so that the probability of @xmath1 having @xmath141 neighbours active in the revolution is @xmath142 the probability that the fraction of @xmath1 s neighbours exceeds the linear threhsold @xmath2 is , therefore , @xmath143 where @xmath144 is the cumulative distribution function for the binomial distribution with @xmath145 trials and probability of success @xmath146 evaluated at @xmath147 .
this quantity can be used to approximate the function @xmath148 ( the expected fraction of the population that can see the revolution ) . in @xcite
we considered @xmath15 in equation   to be the average degree over all nodes and argued that equation   is a sigmoidal function that can be approximated by step - visibility function @xmath140 for some appropriate visibility parameter @xmath40 ( see appendix [ sec : justsvf ] for a brief summary of this argument ) .
one possible improvement on adopting @xmath149 in equation   ( resulting in the svf ) is to actually adopt @xmath150 instead , where @xmath15 is the average degree of the network .
however , we can improve on this even further in terms of using more relevant information about the real graph by choosing @xmath86 to be equal to @xmath151 we call the function @xmath152 in equation   the _ binomial visibility function _ ( bvf ) , see fig .
[ fig : bvf ] .
note the steep sigmoidal shape of @xmath153 for the two empirical networks of fig .
[ fig : bvf ] , further justifying the choice of a step visibility function as an appropriate approximation in @xcite .
we note that computing the binomial visibility function on some grid of @xmath154 discrete @xmath43-values @xmath155 requires calculating a double sum for every @xmath156 . in practice
, this can be very expensive , especially for degree distributions @xmath7 with fat tails .
for this reason , the following section introduces a complementary but less expensive approximation to the visibility function that is equivalent to the binomial visibility function of equation   in the limit of large network and sample size .
0.48   ( curves from left to right ) .
the binomial and empirical visibility functions are computed on the grid @xmath157,title="fig : " ]    0.48   ( curves from left to right ) .
the binomial and empirical visibility functions are computed on the grid @xmath157,title="fig : " ]      we now propose to reconstruct the binomial visibility function @xmath153 empirically by sampling the underlying network directly .
specifically , for fixed @xmath2 we approximate @xmath158 by a discrete function @xmath159 where @xmath160 . since @xmath161 and @xmath162 , we set @xmath163 and @xmath164 .
we calculate @xmath165 for @xmath166 as follows .    1 .
seed the network with @xmath167 active nodes in expectation .
( generate @xmath168 random numbers drawn from the uniform distribution on @xmath169 $ ] : @xmath170 for @xmath171 .
if @xmath172 then node @xmath173 is active , otherwise node @xmath173 is inactive . ) 2 .
determine the fraction of nodes that can see the revolution .
3 .   repeat 1 - 2 a total of @xmath174 times and set @xmath165 to be the average over the realizations .
( we choose @xmath93 in our numerical experiments . )
we denote the linear interpolation between the @xmath165 by the function @xmath175 @xmath176 \mbox { for some } j=1,\ldots,\mu\end{array}\right.\ ] ] which we call the _ empirical visibility function _ , see fig .
[ fig : bvf ] .
we now make several brief remarks about the procedure for calculating the empirical visibility function , outlined above .
firstly , we remark that this procedure is easily extended to the case where @xmath18 are specified for each individual node .
however , to keep our analysis as simple as possible we continue to restrict ourselves to the case where @xmath112 . in appendix
[ sec : comp_bvf_evf ] we show that the empirical and binomial visibility functions are equivalent in the limit of large network and sample size .
figure [ fig : bvf ] shows that they can also be expected to give similar results for finite network and sample size . finally , we remark that compared to the binomial visibility function , the procedure for calculating the empirical visibility function is in practice significantly less costly to implement , especially for networks with fat - tailed degree distributions .      in this section
we compare the ability of the bvf model to approximate the abm with that of the svf model .
we note that since the bvf and evf are equivalent in the limit of large network and sample size and are very close in practice ( see fig .
[ fig : bvf ] ) , the observations we make about the behaviour of the bvf model also apply to the behaviour of the evf model .
we further note that the behaviour of the bvf / evf model has parameters regimes that induce behaviour analogous to those observed in the svf model .
since the bvf / evf have sigmoidal shape , this follows directly from the analysis presented in appendix b of @xcite for visibility and policing functions of general sigmoidal shape ( the results from this analysis are summarized in appendix [ sec : ext ] ) .
we observe four types of outcomes when comparing the ability of the bvf model to approximate the abm to the ability of the svf model to approximate the abm :    1 .
the bvf model may succeed better in approximating the dynamics of the abm than the svf model , even if the improvement is only qualitative in nature , see figs .
[ fig : fit_fail_r0_alpha_iiie1]a and b ( right panel ) , [ fig : fit_fail_r0_regions_alpha_iiie1 ] , and [ fig : fit_fail_regions_alpha_iiie1 ] ( left panel ) , 2 .
the bvf model may complement the dynamics predicted by the svf model , see fig .
[ fig : complement ] , 3 .
the bvf model may produce qualitatively similar predictions to the svf model , see figs .
[ fig : fit_alpha_iiie1 ] , [ fig : fit_fail_r0_alpha_iiie1]b ( left panel ) and [ fig : fit_fail_regions_alpha_iiie1 ] ( right panel ) , or 4 .   both the bvf and
the svf models fail to approximate the dynamics of the abm either qualitatively or quantitatively , see figs .
[ fig : fit_fail_r0_alpha_iiie1]b ( left panel ) and [ fig : fail ] .
for each of these outcomes , the approximation of the abm by the bvf model is no worse than the approximation by the svf model , and , in many cases the approximation of the abm by the bvf model is much better than the approximation by the svf model .
therefore , we conclude that the bvf model , and hence the evf model , represents an improvement over the svf model with respect to their ability to approximate the behaviour of the abm .
this is no surprise , since the bvf / evf model takes important information of the real network into account .
0.48   abm simulations ( grey ) , solution to the svf model ( black ) , and solution to the bvf model ( dashed black ) , with parameters @xmath94 , @xmath95 , and @xmath96 and with intial condition @xmath177 .
, title="fig : " ]    0.48   abm simulations ( grey ) , solution to the svf model ( black ) , and solution to the bvf model ( dashed black ) , with parameters @xmath94 , @xmath95 , and @xmath96 and with intial condition @xmath177 .
, title="fig : " ]
in the previous section we introduced an extension to the svf model . in particular , we showed that the bvf / evf model is better able to approximate the abm than the svf model .
however , both the bvf / evf and svf models are one - dimensional ordinary differential equation .
this section now compares the performance of the bvf / evf models as approximations to the abm to the performance of a higher order ( i.e. , higher dimensional ) compartmental model which we modify from @xcite .
we call this model the _ degree approximation _ ( da ) because it compartmentalizes individuals based on their state as well as their degree .
we demonstrate numerically that the bvf model , and hence the evf model , is no worse at approximating the aggregate behaviour of the abm than the da .
this highlights the usefulness of the bvf / evf model , especially since the da is in practice much more computationally expensive to solve and much harder to analyze than the bvf / evf model .
before we detail the approach which we modify from @xcite , it is useful to introduce some notation .
we define @xmath178 to be the set of nodes with degree @xmath15 and @xmath179 to be the set of nodes that have at least one neighbour of degree @xmath15 , @xmath180 respectively , where we denote the degree distribution of @xmath179 by @xmath181 , i.e. @xmath182 as mentioned above , the degree approximation aggregates individuals according to their state and degree . thus , conditioning on the state of the system at time @xmath57 , we define @xmath183\ ] ] to be the fraction of nodes with degree @xmath15 that are expected to be in state 1 at time @xmath9 . since nodes and edges are neither created nor destroyed , the fraction of nodes with degree @xmath15 that are expected to be in state 0 at time @xmath9 is given by @xmath184 .
analogously , we define @xmath185 to be the fraction of nodes expected to be in state 1 at time @xmath9 .    applying the notation introduced above with the rules characterizing the dynamics of the process we find an equation analogous to equation     @xmath186    where the expected growth and decay of the fraction of active nodes is modelled by the nonnegative growth and decay functions @xmath187 and @xmath188 , respectively . in order to close the degree approximation
we need to approximate the quantities @xmath189 and @xmath190 in terms of @xmath191 , @xmath192 , and @xmath28 .    for notational convenience
we first suppress the time argument , and consider the case where @xmath112 . in order to approximate @xmath189 or @xmath190 in terms of @xmath193 , @xmath2 , and @xmath28 ,
we are now required to make an assumption about how the states of nodes sharing a common neighbour are correlated .
specifically , as for the bvf and evf models , for any fixed @xmath194 we assume that the states of any two neighbours of @xmath1 are independent .
this assumption implies that the probability of @xmath1 having exactly @xmath141 active neighbours is @xmath195 , where @xmath196 is the fraction of nodes in @xmath197 with state 1 .
so , the probability of @xmath1 having at least @xmath198 active neighbours is @xmath199 it follows that @xmath200 as in equation  , we choose @xmath201 combining equations - and dividing by @xmath79 gives @xmath202 now , taking the limit as @xmath81 yields @xmath203     abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]   abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]   abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]     +     abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]   abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]   abm simulations ( grey ) , solution to bvf model ( dashed black ) and da ( solid black).,title="fig : " ]      in section [ sec : comp_abm_bvf_evf ] we showed that the approximation of the abm by the bvf / evf model is no worse , and usually much better , than the approximation of the abm by the svf model . in this section
we show that the approximation of the abm by the bvf / evf model is no worse than the approximation of the abm by the da given in equation  . specifically , we observe that the bvf and da model produce similar qualitative predictions for most choices of parameters @xmath2 , @xmath28 , @xmath21 , and @xmath31 , see for example fig .  [
fig : evf_da ] . also ,
although this is an atypical result , we present one set of parameters where the bvf model outperforms the da on the facebook social network @xmath128 , and where the bvf model complements the da on the physical contact network @xmath130 , see fig .  [ fig : evf_da_2 ] .
we observe that , for the specific parameters and networks used in the simulations of figs .  [
fig : evf_da]-[fig : evf_da_2 ] , the da does not significantly outperform the bvf model .
it was confirmed in extensive additional simulations that this occurs generically for large parts of the parameter space of the models .
this is worth emphasizing once more , since the bvf model is much easier to analyze and much less costly to solve than the da .
this supports our proposition that the bvf ( or evf ) model is a powerful tool for approximating and analyzing the abm and a general technique for formulating tractable models for spreading processes on social networks that take real network characteristics into account .
0.48   abm simulations ( grey ) , solution to the bvf model ( dashed black ) and the da ( solid black).,title="fig : " ]    0.48   abm simulations ( grey ) , solution to the bvf model ( dashed black ) and the da ( solid black).,title="fig : " ]
in epidemiological models the _ basic reproduction number _ @xmath0 is defined to be the number of secondary infections caused by a single infected individual introduced into a population that is entirely susceptible @xcite .
note that in this context exposure to one infected individual is sufficient for a new infection .
if @xmath204 then an infected individual is , on average , unable to replace himself and the outbreak terminates on its own in short order . on the other hand , if @xmath205 then an infected individual is , on average , more than able to replace himself and the outbreak may spread into a full - blown epidemic
we define the basic reproduction number for our linear threshold model of political revolution analogously : the basic reproduction number is the average number of individuals that become active in the revolution due directly to the introduction of a single active individual into a population that is otherwise completely inactive . in this section , we show that the basic reproduction number in our linear threshold abm is related to the initial slope of the bvf / evf by the equation @xmath206 and discuss efficient ways to compute @xmath0 .
we begin by deriving an expression for @xmath0 .
suppose that we activate individual @xmath8 in the population , and suppose that individual @xmath1 has degree @xmath15 .
further , suppose that this individual has @xmath207 neighbours who can see the revolution ( i.e. , the linear threshold criterion is satisfied ) once individual @xmath1 is activated .
let @xmath208 be a neighbour of @xmath1 s that can see the revolution , and let @xmath209 and @xmath210 be the first arrival time of poisson processes with rates @xmath21 and @xmath31 , respectively . the probability that individual @xmath211 becomes active before individual @xmath1 becomes inactive is @xmath212 c_2\exp(-c_2 t )
dt\\      & = \frac{c_1}{c_1+c_2 } = c^*.\end{aligned}\ ] ] since we only consider activations that result directly from @xmath1 s activation ( and not activations caused by a combination of the activation of @xmath1 and the subsequent activation of @xmath1 s neighbours ) , for our purposes the behaviour of each of @xmath1 s neighbours is independent .
thus , the expected number of @xmath1 s neighbours which become active is @xmath213 .
recall that the social network @xmath214 has @xmath168 nodes , @xmath215 edges , degree distribution @xmath7 and secondary degree distribution @xmath181 . for the single activated individual @xmath1 with degree @xmath15 the expected number of neighbours who can see the revolution is @xmath216 = k \sum_j \rho_{k
, j}{\mathbb{i}_{\ { j\theta \leq 1\}}}.\ ] ] averaging over all possible degrees @xmath15 now yields the basic reproduction number @xmath217 = \frac{c_1}{c_1+c_2 } \sum_{k , j } k \rho_k \rho_{k ,
j}{\mathbb{i}_{\ { j\theta \leq 1\ } } }      = c^*\sum_{k=1}^\infty \sum_{j=1}^{\lfloor \theta^{-1 } \rfloor } k \rho_k \rho_{k , j}.\ ] ] it is now possible to prove the relationship given in equation  .
writing @xmath218 it suffices to show that @xmath219 since @xmath220 \nonumber \\      & \implies v_b'(0;\theta,\rho_k ) = \sum_{k=1}^\infty k \rho_k { \mbox { } } { \mathbb{i}_{\{\theta k \leq 1\ } } } = \sum_{k=1}^{\lfloor \theta^{-1}\rfloor } k \rho_k .
\label{eq : vbprime}\end{aligned}\ ] ] we note that together with equation  , equation   gives an exact and cheap way to compute @xmath0 .    from the undirected social network
@xmath4 form the directed social network @xmath221 , where @xmath222 in this case , the number of edges emanating from all nodes of degree @xmath15 is @xmath223 .
so , the number of edges emanating from nodes of degree @xmath15 and incident on nodes of degree @xmath141 is @xmath224 .
thus , the number of edges incident on nodes of degree @xmath141 is @xmath225 equivalently , the number of edges incident on nodes of degree @xmath141 is @xmath226 putting these two expressions together , we find @xmath227 which completes the proof .
intuitively , this makes sense since the number of nodes that can see the revolution when one node is activated can also be approximated by @xmath228
in this section we investigate experimentally the differences in spreading behaviour that occur under the linear threshold model for the spread of political revolutions when applied to some empirical online and offline social networks , searching for some initial quantitative evidence that political revolutions may be facilitated by the network structure of online social networks of social media .
it is often assumed that the connectivity of modern online social networks was an important factor in the spread of political revolutions in the past decade , e.g. , in the arab spring revolutions of 2011 @xcite , while traditional offline social networks ( using in - person physical contact , or phone or mail interaction for safe communication ) featured a different connectivity structure that was often severely restricted by censorship of the regime .
unfortunately , representative samples of the offline , traditional communication networks that were in existence prior to the adoption of new media technologies are unavailable at sufficient scale for countries affected by the arab spring , or indeed for any country .
as opposed to the online networks of social media which are , by their nature , digitally stored and available , the offline social networks of pre - internet societies have not been recorded at scale , simply because it was impractical in terms of cost and effort . this is a serious roadblock when investigating the effects of the structure of new media networks on the dynamics of political revolution , and if one wants to compare with propagation on pre - internet social networks , it is necessary to identify proxy networks that are likely to be reasonable approximations to pre - internet social networks , in terms of network structure .    in this section ,
we use simulations of our abm model on two empirical networks as a starting point to investigate differences in propagation properties that may arise between online and offline social networks within the linear threshold propagation model .
we choose the small physical contact network @xmath130 between individuals from @xcite as a representative for offline social networks , and we choose the facebook network @xmath128 as a representative for online social networks .
0.48   of @xmath93 realizations of abm simulations on facebook and physical contact networks with @xmath229 $ ] , @xmath230 , @xmath95 , @xmath96 , and @xmath231 ( region iii1 , @xmath232 ) .
realizations are allowed to run until time @xmath233 .
basic reproduction numbers @xmath0 for facebook social and physical contact networks are @xmath234 and @xmath235 , respectively.,title="fig : " ]    0.48   of @xmath93 realizations of abm simulations on facebook and physical contact networks with @xmath229 $ ] , @xmath230 , @xmath95 , @xmath96 , and @xmath231 ( region iii1 , @xmath232 ) .
realizations are allowed to run until time @xmath233 .
basic reproduction numbers @xmath0 for facebook social and physical contact networks are @xmath234 and @xmath235 , respectively.,title="fig : " ]      we now briefly examine the differences in how the political revolution spreads on the facebook social and physical contact networks via direct simulation of the abm .
in particular , choosing parameters @xmath230 , @xmath95 , @xmath96 , and @xmath231 in the unstable police state region ( region iii1 , @xmath236 ) , we simulate @xmath93 realizations of the abm for each initial condition @xmath237 from time @xmath238 until time @xmath239 .
the average final size ( at @xmath239 ) for each initial condition @xmath240 is recorded and displayed in fig .
[ fig : r0_rfinal ] , which demonstrates that for these parameters the political revolution described by our abm propagates to a much greater extent on the facebook social network , i.e. the online proxy network , than on the physical contact network , i.e. the offline proxy network .    as an important illustration of the usefulness of the basic reproduction number
@xmath0 we defined in sec .
[ sec : r0 ] , we find that this is consistent with a difference in @xmath0 for the two networks : the basic reproduction number is @xmath241 ( above the value of 1 which is expected to be required for propagation ) for the facebook network , and @xmath242 for the physical contact network .
these results indicate that the offline social network is less conducive to spreading the revolution in the abm than the online social network : it has a smaller basic reproduction number , and in simulations a larger initial population of revolutionaries is required to spread the revolution .
this provides some initial quantitative evidence that the spread of revolutions under a linear threshold process may occur more easily on modern online social networks than on traditional offline networks .
while this is an interesting first observation , the next section discusses limitations and further investigations that are required to address this intriguing but complex question more comprehensively .
in this paper we developed a linear threshold agent based model ( abm ) to model the spread of a political revolution in a dictatorial regime .
we showed that this model is consistent with previous simple step visibility function ( svf ) ode model developed in @xcite . using the relationship between these two models as a template we developed a hierarchy of models of varying complexity that approximate the behaviour of the abm ,
see table  [ tab : hierarchy ] .
of all the models we have identified , we find that the bvf and evf models ( models of moderate complexity ) offer the optimal combination of low computational complexity ( cost ) , ease of analysis , and ability to approximate the behaviour of the abm . specifically , we find that for most parameters and initial conditions the bvf / evf model is better able to approximate average abm behaviour than the svf .
also , for most networks the bvf / evf model is much less costly to solve and much easier to analyze than the degree approximation from @xcite .
importantly , the analysis of the simple ode models in terms of stability of solutions for various parameter regimes directly gives insight in the qualitative dynamics of the linear threshold abm for the spread of political revolutions .
we extended the concept of the basic reproduction number @xmath0 from epidemiology @xcite to the linear threshold abm , we showed how it is related to the slope of the empirical or binomial visibility functions at @xmath41 , and we provided efficient ways to compute or estimate it .
analogously to epidemiological models , when @xmath205 we expect the political revolution to spread , and when @xmath243 we expect it to die out .
thus , computing this quantity for a network can give an indication of how the abm will behave on that network without the need to perform simulations , as we have demonstrated for empirical networks .
the facebook and physical contact networks we consider as case studies , i.e. the online and offline proxy networks , provide initial support to the hypothesis that the adoption of online social media may facilitate the spread of political revolutions by effectively changing the connectivity structure of the population in a way that makes linear threshold spreading more effective .
specifically , we find that for certain parameters the online proxy network is more susceptible to the linear threshold spreading process than the offline proxy network .
moreover , we find that the different behaviour of these two networks is consistent with the basic reproduction number calculated for these two networks .
in addition to studying the abm and its approximations on more and larger online and offline networks , much work remains to be done in the actual modelling of the political revolution process .
for example , throughout this manuscript we have assumed that the linear threshold of individuals is constant for the population , that the underlying communication networks are static , that the graph is undirected , and that the nodes that are initially activated are chosen uniformly at random .
each of these assumptions represents a major simplification of reality that needs to be addressed to study further aspects of the spread of political revolutions on online social networks .
for example , consider that in our model individuals estimate the current participation in the revolution by sampling their neighbours .
since individuals with greater sample size , i.e. larger degree , can form more accurate estimates of the current participation in the revolution , they should be willing to join the revolution at a lower linear threshold @xmath2 than individuals who are more uncertain in their estimate of revolution size .
we would therefore expect the linear threshold to vary from individual to individual as a function of their network degree . or
, consider that one of the principal strengths of new media is the ability of individuals to search for both content and like - minded individuals .
thus , we would expect that the underlying communication network should be changing on the same time scale as the revolution .
finally , one might consider that the nodes that are predisposed to be active at the initial stages of a revolution , e.g. nodes that represent activists , may also have larger degree ( if , for example , they are charismatic and allowed to accrue followers ) or smaller degree ( if , for example , they are the specific target of regime censorship ) . there is significant value in the kind of parsimonious abm model on static networks that we have considered in this paper , because much can be learned from this type of model and it is easier to analyze and interpret than more complex models .
nevertheless , extensions along the lines sketched above are important avenues for further study .
the simulations in this paper were performed in matlab .
all matlab code and data files will be made publicly available online upon publication of this paper .
10    j.c .
lang and h.  de sterck . .
, 69:1221 , 2014 .
d.  kempe , j.  kleinberg , and e.  tardos . maximizing the spread of influence through a social network . in _ proceedings of the ninth acm sigkdd international conference on knowledge discovery and data mining _ ,
pages 137147 , 2003 .
d.  centola , r.  willer , and m.  macy . .
, 110(4):10091040 , 2005 .
d.  centola , v.m .
eguiluz , and m.w .
cascade dynamics of complex propagation . , 374:449456 , 2007 .
d.  centola and m.w .
113(3):702734 , 2007 .    d.j . watts . a simple model of global cascades on random networks . ,
99(9):57665771 , 2002 .
ames , d.b .
george , c.p .
hampson , a.r .
kanarek , c.d .
mcbee , d.r .
lockwood , j.d .
achter , and c.t .
, 278(1724):35443550 , 2011 .
s.  bansal , b.t .
grenfell , and l.a . meyers . .
, 4(16):879891 , 2007 .
the mathematics of infectious diseases . , 42(4):599653 , 2000 .
p.  lind , l.  da silva , j.  andrade , and h.  herrmann .
spreading gossip in social networks .
, 76(3):036117 , 2007 .
l.  zhao , q.  wang , j.  cheng , y.  chen , j.  wang , and w.  huang . .
, 390(13):26192625 , 2011 .
m.  granovetter . .
, 83(6):14201443 , 1978 .
t.  kuran . .
, 44(1):748 , 1991 .
m.  nekovee , y.  moreno , g.  bianconi , and m.  marsili . . ,
374(1):457470 , january 2007 .
nahed eltantawy and julie  b wiest .
the arab spring | social media in the egyptian revolution : reconsidering resource mobilization theory .
, 5:18 , 2011 .
habibul  haque khondker
. role of the new media in the arab spring . , 8(5):675679 , 2011 .
zeynep tufekci and christopher wilson . social media and
the decision to participate in political protest : observations from tahrir square . , 62(2):363379 , 2012 .
s.  khamis and k.  vaughn . .
, 14 , 2011 .
julian mcauley and jure leskovec . .
in _ advances in neural information processing systems 25 _ , pages 548556 , 2012 .
marcel salath , maria kazandjieva , jung  woo lee , philip levis , marcus  w feldman , and james  h jones . .
, 107(51):2202022025 , 2010 .
attila grsoy and murat atun .
neighbourhood preserving load balancing : a self - organizing approach . in _ euro - par 2000 parallel processing _ , pages 234241 .
springer , 2000 .
kiss , d.m .
green , and r.r .
the effect of contact heterogeneity and multiple routes of transmission on final epidemic size .
, 203(1):124136 , 2006 .
r.  pastor - satorras and a.  vespignani .
epidemic dynamics in finite size scale - free networks . , 65(3):035108 , 2002 .
j.  lindquist , j.  ma , p.  driessche , and f.h .
effective degree network disease models .
, 62(2):143164 , 2010 .
in this appendix , we briefly discuss the network extraction protocol for the physical contact network @xmath130 from @xcite .
the network presented in @xcite was constructed by distributing wireless sensors to students , teachers , and staff at a u.s .
high school during a one day period from approximately 08:00 to 16:30 .
when two wireless sensors are in proximity of one another , i.e. when they are less than approximately 3 m apart , they register an interaction with a temporal resolution of 20s .
data are given for each seperate interaction in csv format with three columns : i d of first wireless sensor , i d of second wireless sensor , duration of interaction ( measured in 20s increments ) .
a weighted undirected network @xmath244 is formed by connecting each pair of individuals with an edge whose weight is given by the total amount of time they spent in proximity to one another . in order to admit a comparison with the unweighted undirected facebook subnetwork , we de - weight network @xmath244 by discarding all edges whose weight is less than the minimum duration @xmath245 , and by weighting all remaining edges equally .
we denote the largest connected component of the resulting network by @xmath246 , and for convenience we refer to this network as the _ physical contact network_.    the choice of the minimum duration @xmath245 is important since it determines , for example , the average degree of the physical contact network @xmath130 .
we choose @xmath245 such that the average degree of @xmath130 is close to the average degree of @xmath128 , for the following reason . in the simulations carried out in this paper to compare propagation under the linear threshold abm on @xmath130 and @xmath128 , we seed the networks with a fixed percentage of active nodes and use the same threshold @xmath2 on both networks .
we want to calibrate the average degree of @xmath130 to the average degree of @xmath128 , such that , on average , nodes in @xmath130 have the same chance as nodes in @xmath128 to satisfy the linear threshold criterion and see the revolution . after this calibration ,
differences in propagation between @xmath130 and @xmath128 ( for the same @xmath2 ) are only due to the differences in network structure that go beyond the average degree .
this motivates us to choose @xmath247 sensor measurements , equivalent to 11 minutes and 20 seconds , in order to match the average degrees of @xmath130 and the facebook subnetwork as closely as possible .
as argued in appendix a of @xcite , the expression for the visibility function given in equation  , with @xmath15 taken to be the average degree of the network , can be expected to have a steep sigmoidal shape , which can be approximated by a step function . indeed , fig .
[ fig : binom ] shows that @xmath248 has a clear sigmoidal shape , with a steep transition from 0 to 1 . in @xcite
it was also argued that increased average degree @xmath15 can be expected to co - occur with decreased threshold @xmath2 , since the more neighbors one has the more certain one can be about the true extent of the revolution because large samples are more reliable . under this assumption
, @xmath248 can be considered a single - parameter sigmoidal function , which can be approximated by the single - parameter step visibility function ( svf ) @xmath140 , with parameter @xmath40 indicating where the step transition occurs .     on ( top left )
@xmath2 , ( top right ) @xmath15 , and ( bottom ) negatively correlated @xmath2 and @xmath15.,title="fig:",width=240 ]   on ( top left ) @xmath2 , ( top right ) @xmath15 , and ( bottom ) negatively correlated @xmath2 and @xmath15.,title="fig:",width=240 ] +    on ( top left ) @xmath2 , ( top right ) @xmath15 , and ( bottom ) negatively correlated @xmath2 and @xmath15.,title="fig:",width=240 ]    we conclude this section with a few remarks regarding the assumption made in sec .
[ sec : bvf ] and in @xcite that the states of an individual s neighbors are uncorrelated .
while this assumption is applied in many models of spreading processes , for example rumour spreading processes @xcite and epidemiological processes @xcite , this assumption was not verified in @xcite . in this paper
we show that this assumption results in a valid approximation by comparing simulation results of the svf model , and also the bvf / evf models ( which were derived in sec .
[ sec : avf ] under the same assumption ) , with abm simulations for empirical networks ( which do not make this assumption ) , finding consistent results for large parts of parameter space .
in this section , we summarize the parameter regime and solution stability analysis that was developed in appendix b of @xcite for the one - dimensional ode model @xmath249 with generic sigmoidal visibility function @xmath250 as in fig .  [
fig : sigmoid ] . since the newly derived bvf / evf in this paper
have sigmoidal shape , the stability analysis of @xcite applies to the bvf / evf models .     with a fast transition from 0 to 1 that follows a sigmoidal profile . ]
as is shown in @xcite , the dynamics of model with generic sigmoidal visibility and policing functions closely follows the corresponding dynamics of model in region ii ( an open interval of equlibria @xmath251 ) , regions iii0 and iii1 ( one equilibrium @xmath252 ) , and region iiie ( three equilibria @xmath252 ) , thus establishing the equivalence in terms of dynamic behaviour of models ( with step functions ) and ( with sigmoidal functions , including the bvf / evf models ) .
we summarize the phase portraits of the different regions for model in fig .  [
fig : summaryext ] , which are analogous to the phase portraits of the svf model shown in fig .
[ fig : svf_stability ] . see appendix b of @xcite for a detailed derivation and further explanation . for the bvf / evf models , the values of equilibrium quantities like
@xmath253 and @xmath254 depend on @xmath2 , @xmath28 and the network structure .
-axis ( @xmath255 $ ] ) for model .
closed ( open ) circles represent locally asymptotically stable ( unstable ) equilibria .
left ( right ) arrows indicate regions where @xmath256 ( @xmath257 ) .
the phase portraits are similar to the case of the svf model in fig .
[ fig : svf_stability ] . ]
it is also important to point out how the svf stability region plot of fig .
[ fig : svf_regimes ] generalizes to the bvf / evf models . for a given empirical network
, the bvf / evf model does not feature a range of visibility parameters @xmath40 like the svf model , but each choice of @xmath2 results in a different bvf / evf function . for a fixed @xmath2 , the different phase portrait behaviours of fig .
[ fig : summaryext ] occur depending on the values of @xmath28 , @xmath21 and @xmath31 . as a result , for a given empirical network
, the parameter space for the bfv / evf models as a function of @xmath2 , @xmath28 , @xmath21 and @xmath31 can be divided in regions as for the svf model in fig .
[ fig : svf_regimes ] , where @xmath2 replaces @xmath40 as the parameter on the horizontal axis
. the precise shape of the bvf / evf parameter regions would depend on the actual empirical network considered .
for example , the boundary between the ii and iii regions is in general not a straight line , but needs to be determined numerically .
following @xcite , we numerically simulate the abm by implementing gillespie s algorithm . in this appendix
we give a brief overview of this algorithm .
we first introduce some notation . as above , let @xmath60 denote the fraction of individuals in the population that are expected to be active in the revolution at time @xmath9 . for each node
@xmath258 we let @xmath259 if @xmath1 can see the revolution at time @xmath9 , i.e. if @xmath1 satisfies equation  , and let @xmath260 otherwise . furthermore , we let @xmath261 and @xmath262 denote the first arrival times of independent poisson processes with rates @xmath21 and @xmath31 , respectively .
gillespie s algorithm is based on the fact that the sum of two independent poisson variables is also a poisson variable with rate equal to the sum of the rates of the original processes .
it follows that @xmath263\ ] ] is a poisson process with rate @xmath264.\ ] ] the first arrival time of this process , therefore , is an exponential random variable @xmath265 with rate @xmath266 . at time
@xmath267 the state of exactly one of the nodes will change . moreover , since @xmath261 and @xmath262 are independent , the probability that the state of node @xmath1 will change is @xmath268 the gillespie algorithm then proceeds iteratively in three steps .    1 .
find the time @xmath265 of the next event by drawing @xmath265 from an exponential distribution with rate @xmath266 .
2 .   determine which node changes state by drawing one node from @xmath269 , where node @xmath8 is drawn with probability @xmath270 .
update @xmath271 and re - calculate @xmath272 , @xmath35 , @xmath273 .
since the complete analytic solution to the svf model was not provided in @xcite but is useful in the current paper , we provide it here .
the solution to equation   is as follows . in region
i ( @xmath274 ) and region ii ( @xmath275 ) @xmath276\\          1 - ( 1-r_0)e^{-c_1(t - t_0 ) } & \mbox{if } r_0 > 1-\alpha \end{array } \right . .\ ] ] in regions iii0 ( @xmath277 ) , iiie ( @xmath53 ) , and iii1 ( @xmath278 ) @xmath279 \mathbb{i}_{\{t < t_{\alpha}\ } }   \\          \hspace{5 mm } + ( 1- \alpha ) e^{-c_2(t - t_\alpha ) } \mathbb{i}_{\{t\geq t_{\alpha}\ } }              & \mbox{if } r_0 \in [ \beta , 1-\alpha ] \mbox { and } c^ * \leq 1-\alpha < \beta\\ \\          c^*+ ( r_0-c^*)e^{-(c_1+c_2)(t - t_0 ) } & \mbox{if }   r_0 \in [ \beta , 1-\alpha ] \mbox { and } 1-\alpha < c^ * < \beta\\\\          \left [ c^*+ ( r_0-c^*)e^{-(c_1+c_2)(t - t_0 ) } \right ]
\mathbb{i}_{\{t < t_{\beta}\ } }   \\          \hspace{5 mm } + \left [ 1 - ( 1- \beta ) e^{-c_1(t - t_\beta ) } \right ] \mathbb{i}_{\{t\geq t_{\beta}\ } }              & \mbox{if } r_0 \in [ \beta , 1-\alpha ] \mbox { and } 1-\alpha < \beta \leq c^*\\\\          1 - ( 1-r_0)e^{-c_1(t - t_0 ) } & \mbox{if } r_0 > \beta \end{array } \right . , \ ] ] where @xmath280
we briefly argue that the empirical and binomial visibility functions are equivalent in the limit of large network and sample size , i.e. as @xmath281 , see also fig .
[ fig : bvf ] .
let @xmath8 be a node in the network @xmath4 with degree @xmath15 .
now , fix @xmath2 and suppose that we are calculating @xmath282 via the algorithm presented in sec .
[ sec : evf ] .
the @xmath283^th^ iteration of step 1 of this algorithm selects @xmath284 nodes uniformly at random to be active and results in @xmath285 nodes that can see the revolution .
note that by the law of large numbers @xmath286 = \mathbb{e}\left[\frac{\mathcal{v}_1}{n}\right ] \mbox { as $ rep\rightarrow\infty$,}\end{aligned}\ ] ] where @xmath287 denotes convergence in probability . since the @xmath284 activated nodes are chosen uniformly at random ,
the statuses of the neighbours of @xmath1 are independent .
therefore , the probability that @xmath1 can see the revolution is @xmath288 it follows that the expected fraction of nodes that have degree @xmath15 and can see the revolution is @xmath289,\ ] ] and hence , the expected fraction of nodes that can see the revolution is @xmath290       = \mathbb{e } \left[\sum_k\rho_k \mbox{bincdf}\left(k-{\lceil \theta k \rceil};k , 1-\frac{\mathcal{n}_l}{n}\right)\right].\ ] ] we conclude the proof by observing that by the continuous mapping theorem @xmath291 and @xmath292 implies @xmath290   \stackrel{p}{\rightarrow }      \sum_k\rho_k \mbox{bincdf}\left(k-{\lceil \theta k \rceil};k , 1-r_j\right ) = v_b(r;\theta,\rho_k)\mbox { as } n\rightarrow\infty,\ ] ] and hence , @xmath293