Lubyansky, Alexander, "A System Dynamics and Agent-Based Simulation Approach to Test Group-Level Theories of Political Violence", 2011 July 24-2011 July 28

Online content

Fullscreen
Group-Level Theories of Political Violence 1

A System Dynamics and Agent-Based
Simulation Approach to Test Group-
Level Theories of Political Violence

Alexander Lubyansky, PhD Student
Rockefeller College of Public Affairs and Policy, University at Albany

alubyansky@gmail.com

Abstract

In the political violence scholarship, there is a gap in explaining how group-level dynamics cause mass
political violence. There are several theories of why political groups become violent. Because of the
qualitative nature of these theories and the feedback complexity of political violence, it is hard to test
these theories against each other and against data. This paper describes an attempt to use a
combination of system dynamics and agent-based modeling to create a simulation pitting rival theories
of political violence against each other and against empirical data. The purpose of the research is theory
testing: to see what theory or combination of theories best explains political violence. The paper provides
an overview of the relevant theory and data. The paper then develops a dynamic hypothesis and a
prototype hybrid NetLogo simulation of two theories, political opportunity and collective action.

Keywords

Political Opportunity, Collective Action, Agent-Based, NetLogo, Simulation
Group-Level Theories of Political Violence 2

“l was angry with my friend: / 1 told my wrath, my wrath did end. /1 was angry
with my foe: /| told it not, my wrath did grow.”
- William Blake, A Poison Tree

Problem

Understanding the Dynamics of Political Violence

In the political violence scholarship, there is a gap in explaining how group-level dynamics cause mass
political violence. There are several main theories about why political groups become violent. Because
of the qualitative nature of these theories, and the feedback complexity of political violence, it is difficult
to test these theories against each other and against data.

Regression has been the main method of quantitative investigation by most branches of social science.
Regression makes it relatively easy to transform mostly qualitative theories into mathematical models.
Regression is also well suited to test these models on many types of quantitative data.

Unfortunately, regression is designed to find correlations of stable stochastic processes that adhere to
the Gauss-Markov conditions. As the data gets less “nice”, regression requires more “tricks” (interactive
variables, lagged variables, WLS, etc.) and produces results that are less accurate and precise.

System dynamics (SD) allows more accurate simulation of systems due to its ability to represent
feedback, nonlinearities, and stock/flow dynamics. The weakness of system dynamics for the problem of
political violence is that the units of analysis (people, groups, states) are highly heterogeneous in their
mental models and interactions with each other. This makes it difficult to safely produce aggregate
models of political violence. Workarounds like coflows and arrays are awkward and overly complex.

Agent-based modeling (ABM) is designed to deal with heterogeneous decision maker mental models
and interactions. One problem with ABM is that ABM models generally use discrete logic to represent
feedback. This detracts from the ability to understand agent behavior, since complex agent behavior
ends up being a complex, nested set of discrete logical gates. Similarly, most agent-based models are
not built with the rigorous development and testing required by the system dynamics methodology (the
stages of the modeling process, the many equation and simulation tests).

Empirically, there are many agent-based models of political violence. Few, if any, of these models are
interested in theory testing. Most models are exploratory academic models with titles like “towards a
better understanding of XYZ” or “an example of how agent based modeling can be used to represent
XYZ” or “a new perspective on XYZ”. They usually fail to acknowledge existing theory or test against
data. Theory and data are not necessary to create good simulations, but they are useful.

Other ABM models are more specific, like looking at one case study in particular (data), or one type of
interesting causal dynamic (theory). The most specific models are the ones that show the greatest
insights. More generally, more specific hypotheses lead to more focused models.
Group-Level Theories of Political Violence 3

Summary of Approach

| propose to use a combination of system dynamics and agent-based modeling approaches to create a
comparison of two rival theories of political violence to see how well these theories explain political
violence as seen in the empirical data.

State-Level
-*® Dynamics
»

Choice to Use a Z
Political Violence Group: Level

~ Dynamics

Figure 1. Simulation scope.

The simulation scope will be that shown in Figure 1. The research will focus on how state-level dynamics
cause group-level dynamics to change and how those group-level dynamics cause outbreaks of political
violence. There are likely to be feedbacks in the opposite direction (dotted lines in Figure 1), but these
are secondary in importance. Where theory describes these dotted links, they need to be represented.

Proposed Method:

* Create a reference mode by comparing important variables in group-level theories of political
violence to group-level data (The Minorities at Risk Project, 2011) and state-level data (The
Quality of Government Institute, 2011).

* Take descriptions and diagrams from the theories and use them to make dynamic hypotheses.

* Elaborate these causal hypotheses into system dynamics / agent-based simulations in NetLogo
(Wilensky, NetLogo, 1999).

* Test the simulations of theories against the data and against other typical system dynamics
tests. See what theory or combination of theories best matches the group and state data over
some time frame (a good time frame in terms of data quantity is 1984 to 2004).

As researchers in the complexity sciences have found, models that are able to point-predict future states

of complex (social) systems are some combination of impossible, unreliable, and extremely expensive.
Fitting theory to data is insufficient to pronounce a theoretical model “good”.

The broad question for success will be, “Does the structure generate plausible behavior?” Since this will
be an agent-based simulation, it will be important to understand how well the actions and interactions
of micro agents show the ability to “generate” the system’s macro properties (Epstein, 1999).
Group-Level Theories of Political Violence 4

Theory
Below is a summary of some of the main group-level theories of political violence. Further in the paper,
Political Opportunity Theory (PO) and Collective Action Theory (CA) are simulated in NetLogo.

Relative Deprivation

The Relative Deprivation Theory of political violence is Ted Gurr’s (1970) adaptation of the psychological
theory of frustration-aggression. Gurr argues that the primary source of the human capacity for political
violence is frustration. Frustration, when experienced with a certain intensity, scope, and duration, acts
to move a group towards anger, political expression, and ultimately violence. In Gurr’s theory,
frustration comes from relative deprivation. Relative deprivation is the sense of a group’s members that
there is a gap between what they have and what they feel they deserve.

Resource Mobilization

Resource Mobilization Theory (Tilly, 1978; Wikipedia, 2011) emphasizes the importance of resources in
social movement development and success. Resource Mobilization Theory assumes that groups are
comprised of rational actors who pursue economic goals (money, power, social goods), while being
bounded by resources and organizational limitations (like the free rider problem). Resources include:
knowledge, money, media, labor, solidarity, legitimacy, and internal and external support from power
elite. Social movements develop when individuals with grievances (which are assumed to be largely
present in all groups) are able to mobilize sufficient resources to take action.

Political Opportunity

Political Opportunity Theory, also known as Political Process Theory, is an integration and extension of
the Relative Deprivation and Resource Mobilization Theories that adds an emphasis on political
opportunity. Political Opportunity Theory argues that there are three vital components for movement
formation: group consciousness, organizational strength, and political opportunity. This means the
group has grievances, the group has the resources to address those grievances through collective
(possibly violent) action, and the opposing side (state, other groups) is weak in some way. The
emergence of political violence is occurs when these three factors line up.

Collective Action

This theory (Lichbach, 1995) is the extension of the Rational Choice School of Economics, particularly the
work of Mancur Olson, to political action/violence. In the Collective Action Theory, the focus is on the
actions of rational agents limited largely by organizational dynamics. Instead of focusing on resources
per se, Collective Action Theory looks at decisions related to the supply and demand of public goods.
Grievances are neither a necessary nor a sufficient condition for political violence. Selective incentives
are a major motivation for participation in political violence. The agents look for tactics to achieve more
of the goods that they want, but need the support of relatively unmotivated compatriots and potential
free riders.
Group-Level Theories of Political Violence 5

Empirical Data Possibilities

There are several attempts underway to gather and aggregate reference data for group-level and state-
level causes/indicators relevant to political violence. Two of the best and most comprehensive sources
of panel data (different years, different groups, different states) are the MAROB dataset (The Minorities
at Risk Project, 2011) on the organizational dynamics of several groups in the Middle East and North
Africa and the Quality of Government dataset (The Quality of Government Institute, 2011) which is a
large compilation of academic and NGO statistics on a variety of state-level statistics.

Even though these are some of the best open-source datasets on political violence, the MAROB and QoG
both suffer from data sparseness and data quality issues. The MAROB dataset is the fullest and cleanest,
with many of its variables full of data for all groups and years. However, some variables contain many
blanks and NULLs (value 0 or -99 indicating the information is missing).

The QoG data is a grab bag of reliable and well-populated statistics (UN demographic/economic data),
advanced statistics with a very short time frame (Heritage Institute Index of Economic Freedom data),
overly detailed data on the formal minutia of government structure and various academicians’ statistics
from their own research programs.

When choosing data to support a simulation, one must choose between a large number of questionable
variables and a small number of relatively reliable variables. For my work, | am using the latter approach
and have eliminated many variables from both data sets. Due to the size and format of this data, it is
impractical to discuss or display in detail in this paper. Even with a reduced list of variables, there is no
obvious reference mode or set of reference modes yet that summarizes all the data well.

For the reader interested in using these data sources, a summary of the more useful variables in both
data sets is provided in Appendix A. Access to MAROB and QoG data can be received from their
respective websites.

Initial Simulation Approach

To begin, | am trying to simulate the very basic hypotheses of two of the most mature current group
theories of political violence, Political Opportunity Theory (henceforth shortened to Political
Opportunity / PO) and Collective Action (henceforth shortened to Collective Action / CA). The sections
below describe the dynamic hypotheses of these theories, followed by overviews of initial NetLogo
simulations of these theories’ feedback behavior. For a discussion of Political Opportunity, see Meyer
(2004). For a discussion of Collective Action and a suggestion to compare/integrate PO and CA, see
Lichbach (1998).
Group-Level Theories of Political Violence 6

Dynamic Hypothesis

Systems Dynamics Generic Causal Structure

a ~

Decisions Information
Feedback
Strategy,
Structure, Mental Models of
Decision Rules the Real World

Figure 2. Double loop learning.

It is difficult to quantify different, largely qualitative theories in a standard way without anchoring them
to some framework. The broadest structure is the generic structure of decision-making called Double
Loop Learning (Sterman, 2000) shown in Figure 2. All these theories of political violence are mainly
theories of decision making and learning. In all these theories, people get information about the state of
the world and decide to act on that information to change the state. On another level, people use
information to change their mental models and then change how they make decisions.

Political Opportunity

PO claims that group action occurs most where a society is somewhere between very pluralistic and
completely totalitarian. In an open society, there are many legitimate avenues for political expression. In
a closed society, repression (usually) prevents any sort of action disagreeable to the government. In
between is a “sweet spot” where the government does not allow groups to get what they want the
“legal” way, but is too weak to stop them from using protests, strikes, riots, insurgency, etc. Figure 3
shows this idealized “U-Shape” relationship.

1.2 4
1

0.8 ‘==="Routine Political

0.6 Expression

0.4 =="Protest, Violence

0.2

O45 T : T , a)
Open Society Closed Society

Figure 3. Political actions vs. openness of society.
Group-Level Theories of Political Violence 7

The dynamic hypothesis responsible for this empirical statement/observation is shown in Figure 4.

Government
Strength

aes
Repression

Grievance
Effectiveness Of
Severity of 5 Political Action
3 Political Action .
Ah +
+
+ Percieved
Effectiveness Of
3 Political Action
Participation

Figure 4. Causal structure of Political Opportunity.

In PO, the main factors behind collective action/violence (Severity of Political Action) include a sense of
Grievance by some group of people, a set of resources such as the Participation in a collective
movement, and the Perceived Effectiveness of Political Action.

The default behavior of PO is a “tipping point” kind of behavior, where strong forces build up and
overwhelm a seemingly strong system. The forces that build up the impetus for political action are those
of Loops 1, 2, and 3.

In Loop 1, Government Strength leads to Repression, which leads to Grievance and political action. In
Loop 2, Grievance leads to Participation and political action. In Loop 3, Participation leads to more
effective political action since the Effectiveness of Political Action is based on a comparison of the
strength of the government to the strength of the movement.

The forces of Loop 4 and 5S initially keep the government strong and the rebels frustrated. As long as the
movement is weak, it is unlikely to succeed and therefore stays week. The government continues to be
strong and therefore discourages political action. As the movement gets stronger and does more severe
political action, the government gets relatively weaker, political action looks more effective, and there is
more political action. This “tipping point” behavior happens as the reinforcing Loops 4 and 5 stop
working for the government and start working for the rebels. In summary, the status quo of government
dominance and political movement inaction is strong, but brittle, allowing the rebels to win if they try.
Group-Level Theories of Political Violence 8

One main problem for PO is explaining how political action movements get started given the seemingly
overwhelming forces of the government and the meager likelihood of successful political action. CA
focuses on this question in great detail, but PO suggests several reasons for political action.

One explanation is that some event or process (a war, a natural disaster, democratization, a scandal,
etc.) causes the real or perceived balance of power between movement and government to change.
Another explanation is that there are always social entrepreneurs on the rebel side who have various
degrees of “irrational optimism” about the potential success of the movement. If effective at rabble-
rousing, these entrepreneurs can cause large numbers of people to participate/mobilize, thus effecting a
“fake it ‘till you make it” strategy. The level of optimism in a society has something like a power law
distribution, like that shown in Figure 5.

0.9 5
0.8 5
0.7 5
0.6 5
05 >
0.4 5
0.3 4
0.2 5
0.1 5
a. =_—= 1
0% Chance Successful 100% Chance Successful
Outcome Outcome

— Fraction of
Population Willing to
Participate

Figure 5. Distribution of optimism in Political Opportunity.

Collective Action

The claim of Collective Action is the “five percent rule”. This rule states that the overwhelming majority
(approximately 95%) of the sympathizers of a movement do not actually act in the movement. This rule
applies roughly 95% of the time. So, most of the time, most “members” of a movement don’t do
anything important to advance the movement. Mass movements occur, but are infrequent and brief, in
general.

The reason behind this behavior is the strong disincentive for a rational actor to engage in collective
action (variations of coordination/oversight games like the Prisoner’s Dilemma). The proposed
taxonomy of solutions to the problems of Collective Action is shown in Figure 6. By default, a bunch of
individuals living their lives as such is the “Market”. In this scenario, outbreaks of political action and
violence are likely to be disordered, perhaps the result of “anomie” or other irrational factors.

The other three scenarios in Figure 6 involve rational actors somehow exploiting societal structures to
get other rational actors to commit to risking private costs in pursuit of collective goods. These
structures include things like traditions and ethnic ties (Community); logical arguments, covenants, and
contracts (Contract); and organizations, secret societies, and vanguards (Hierarchy). In the real world,
these tactics can be combined.
Group-Level Theories of Political Violence 9

Deliberation

Unplanned Planned
Order Order
Spontaneous
Order Market Contract
Ontology

Contingent Community Hierarchy
Order

Figure 6. Solutions to the CA problem (Lichbach, 1998).

Finding a dynamic feedback structure to CA is difficult, since CA is a typical Neoclassical economic theory
with initial parameters leading directly to rival equilibria. Furthermore, CA is largely a catalogue of
potential solutions to the collective action game theory problems of both the rebels and the state, with
10 or more types of strategies discussed for each of the possible scenarios (the full list is in Lichbach
(1995)). The closest thing to a general feedback structure for CA is shown in Figure 7.

Whereas PO focuses on the top loop of double-loop learning shown in Figure 2, CA focuses on the
bottom loops (changing mental models and strategies). PO looks at political conflict largely in the
aggregate, with both the rebel movement and the government acting out of competing pressures
(grievances, resources, mobilization/participation). CA focuses on the variables in Figure 4 related to
participation and likelihood of success in the framework of a strategic adversarial game between
individual rebel leaders/entrepreneurs and government leaders/entrepreneurs shown in Figure 7.

percieved past
effectiveness of

strategy X
2
percieved potential Te = expected
effectiveness of P # effectiveness of
strategy X based on use of 7 strategy X against

strategy X adversary's current

feedback and 2 ~_
parameters of the world ~~ strategy

2?

expected
effectiveness of
adversary's reaction
to strategy X

Figure 7. Causal structure of Collective Action.
Group-Level Theories of Political Violence 10

Although, CA is framed in terms of game theory, it is actually described as a Darwinian evolutionary
process. On both the rebel and government side, there are always leaders or social entrepreneurs for
whom the struggle over collective goods is salient and important. The motivations of these actors (like
all actors in CA) are those of rational self interest: the hope of gain from the pursuit and/or attainment
of collective goods. Grievances, resources, or the perceived effectiveness of collective action (the factors
of PO) are entirely unnecessary for the dynamics of CA.

The entrepreneurs on the rebel and government side are well aware of the difficulty of collective action.
They each monitor the situation of the world and each other’s strategies. With this historical data,
entrepreneurs try to implement strategies to improve their side’s CA situation (increase perceived/real
benefits, decrease perceived/real costs, etc.) while hampering the adversary’s CA situation. While
deciding strategies, the entrepreneurs also keep in mind their adversaries’ likely reactions. Finally,
seemingly winning strategies are copied and deepened, while losing strategies are avoided and
abandoned. In principle, the decision making process could go many iterations deep.

Simulation

Vensim Simulation

Due to the complexities of CA theory, the modeling effort has so far focused on PO, with exogenous
variables available to simulate some of the tactics possible in CA. The model documentation for the
Vensim model can be found in Appendix B. This model tries to quantify the dynamic hypothesis
explained in Figure 4. The default behavior of the model is shown in Figure 8.

Strength
Grievance
Strength
Action

1

Deere

Strength
Grievance
Strength
Action

1

coooo

0 4 8 12 16 20 24 28 32 36 40
Time (Year)

"Government\ Strength" : Current Strength
Grievance : Current Grievance
Participation : Current 3 3 3 Strength
"Severity\_Of\ Political\ Action" : Current 4 ‘ 4 4 ‘ Action
"Perceived\_Effectiveness\_Of\ Political\_ Action" : Current 1

Figure 8. Default behavior of Vensim Model.
Group-Level Theories of Political Violence 11

Below is an explanation of this behavior, color-coded by variable.

* Government Strength:
© Too strong at first. Suppresses effectiveness and severity of political action.
o Critical mass of action degrades government strength beyond strength regeneration
ability.
o Government caves, protests, reduce, strength rebuilds.
* Grievance:
o Rises quickly from Government Repression (a direct function of Government Strength in
the model).
o Drops when Government Repression eases.
* Participation:
o Rises and falls more slowly, based on Grievance.

* Perceived Effectiveness of Political Action:
co Rises slowly, then quickly after the main revolt has picked up its pace.
co People think rebellion is ineffective, until eventually they all find themselves in the city
square together.
co People fully realize the effectiveness once the government has already been defeated.

NetLogo

Since ABM is all about learning how disaggregate agents work to generate their societal behavior, each
agent should represent a person. This way, the agents can eventually be populated and/or made more
heterogeneous in terms of their biology, demographics, mental models, resources, and social networks.

NetLogo (Wilensky, NetLogo, 1999) is a good way to instantiate such an ABM. NetLogo has incredibly
simple syntax (no real programming required as compared to RePAST, MASON, and AnyLogic), is open
source (LGPL), can be distributed as a Java Applet, and has a large library of existing models to use as
building blocks. The best reference model for political violence is the NetLogo Rebellion Model
(Wilensky, NetLogo Models Library: Rebellion, 2004) shown in Figure 9.

Figure 9. The Rebellion model in NetLogo.
Group-Level Theories of Political Violence 12

The dynamics of the Rebellion model can be found on the model’s webpage or within the internal
documentation in its applet. The model has agents who get upset at their government’s quality, rebel,
are sometimes arrested by roving government police, and spend some time in jail. The model’s behavior
features waves of violence interrupted by periods of uneasy calm while dissidents cool off in jail.

NetLogo Simulation

The NetLogo simulation (documented in Appendix C) takes the Vensim simulation of PO/CA and changes
it, equation by equation into NetLogo syntax. The process of giving individual agents mostly continuous
“stock and flow” logic versus the usual discrete logic found in ABM is somewhat complicated, but,
basically involves calculating all flows from initials and constants, then doing the Euler method for all
stocks.

The result is an agent-based simulation whose agents are all the same (no random behavior added other
than contact networks) and whose aggregate and disaggregate behavior perfectly matches that of the
Vensim simulation, as shown in Figure 10.

Totals
300 Hi covt Strength
Wicrievance
Participation
Di severity of Pol Actn
Wl cffectiveness of Pol Actn

Vars

34 time 154

Figure 10. Default Behavior of NetLogo Simulation.

The NetLogo simulation adds some experimental functionality to try to take advantage of the fact that it
can have heterogeneous agent properties and networks.

First, the agents can have a random component to their initial Grievance, Participation, and Perceived
Effectiveness of Political Action as well as the time constants related to the changes to those stocks. This
allows for a heterogeneous population that may not all rebel at the same time.

Second, the agents are connected via a communication network by which they automatically diffuse
their grievances. This allows heterogeneous levels of Grievance, Participation, and Perceived
Effectiveness of Political Action to average out over time, ceteris paribus.
Group-Level Theories of Political Violence 13

Third, three CA tactics can be represented by the creation of “zealots”. In CA, three of the “market”
solutions to the collective action problem of the rebels are social entrepreneurs that convince other
people that:

(1) Benefits of political action are high.
(2) Costs of political action are low.
(3) Effectiveness of political action is high.

These policies are simulated exogenously in the NetLogo simulation by having a button and sliders to
create an agent with some combination of permanently high or low Grievance, Participation, and
Perceived Effectiveness of Political Action. Zealots can be used to continuously spread high grievance
and always be ready to join a revolt. Endogenous representation of the full range of CA tactics is for
future work beyond this paper.

{ERGAT Info Code }

£2 tee | — er es | eee

—— oe!
—o

Figure 11. NetLogo Model Interface.

Figure 11 shows a snapshot of a simulation run with randomized agent properties and a few zealot
agents. The dynamics of the model are similar to that of the base run, but the agents have different
internal states at any given time. The NetLogo visualization helps to track the internal states and
networks of many agents. For example:

The agent size is Grievance (bigger is higher).

The agent color is Participation (brighter is higher).
The presence of a flame icon indicates a high Severity of Political Action.

The color of the arrow between two agents indicates the net amount/direction of Grievance
being diffused between the two agents (brighter is higher).
Group-Level Theories of Political Violence 14

NetLogo has additional options for visualization, testing, and analysis, even if these functions are not
nearly as advanced as those in Vensim. In the ideal case, the research can develop and test a model as
much as possible in Vensim, then port it to NetLogo and keep testing in NetLogo, iteratively developing
the model in both software packages.

Discussion

This paper shows the initial stages of an effort to test group-level theories of political violence with
system dynamics and agent-based modeling as well as empirical group-level and state-level data. The
Vensim and NetLogo simulations allow the representation of the basic behaviors of Political Opportunity

Theory and some of the tactics in Collective Action Theory.
Group-Level Theories of Political Violence 15

References

Epstein, J. M. (1999). Agent-Based Computational Models And Generative Social Science. Complexity ,
41-60.

Gurr, T. R. (1970). Why Men Rebel. Princeton: Princeton University Press.

Hogan, R. (2003 6-August). (Course Notes). Retrieved 2011 21-March from Richard Hogan, Department
of Sociology and Anthropology, Purdue University: http://web.ics.purdue.edu/~hoganr/teaching.html

Lichbach, M. I. (1998). Contending Theories of Contentious Politics and the Structure-Action Problem of
Social Order. Annual Review of Political Science , 1, 401-424.

Lichbach, M. |. (1995). The Rebel's Dilemma. Ann Arbor: The University of Michigan Press.

McAdam, D., Tarrow, S., & Tilly, C. (2001). Dynamics of Contention. New York: Cambridge University
Press.

Meyer, D. S. (2004). Protest and Political Opportunities. Annual Review of Sociology , 30, 125-145.
Pape, R. A. (2005). Dying to Win: The Strategic Logic of Suicide Terrorism. New York: Random House.

Sterman, J. D. (2000). Business Dynamics: Systems Thinking and Modeling for a Complex World. Boston:
The McGraw-Hill Companies, Inc.

The Minorities at Risk Project. (2011). Data. Retrieved 2011 21-March from MAR:
http://www.cidcm.umd.edu/mar/data.asp

The Quality of Government Institute. (2011). The QoG Data. Retrieved 2011 21-March from The Quality
of Government Institute: http://www.qog.pol.gu.se/

Tilly, C. (1978). From Mobilization to Revolution. New York: McGraw-Hill Higher Education.

Wikipedia. (2011). Resource Mobilization. Retrieved 2011 21-March from Wikipedia:
http://en.wikipedia.org/wiki/Resource_mobilization

Wilensky, U. (1999). NetLogo. Retrieved 2011 21-March from Center for Connected Learning and
Computer-Based Modeling: http://ccl.northwestern.edu/netlogo/

Wilensky, U. (2004). NetLogo Models Library: Rebellion. Retrieved 2011 21-March from Center for
Connected Learning and Computer-Based Modeling:
http://ccl.northwestern.edu/netlogo/models/Rebellion
Group-Level Theories of Political Violence 16

Appendices

Appendix A: Overview of MAROB and QoG Data
The following groups of variables comprise relatively dense panel data for most MAROB groups and
their QoG states from 1984 to 2004.

MAROB: Group-Level Data

MAROB offers a wide variety of “dense” panel data on many groups that are considered to be
“minorities at risk” of turning to political action / violence to attain their goals. The data set tries to
include many alternative causes and descriptions of group action.

1. Name, age, location, founding date

2. Legality, militancy, popularity, ...

3. List of grievances

4. Ideological goals

5. State attitude and actions towards group (repression, etc.)

6. Past successes in influencing state

7. Help from outsiders: diaspora, foreign states, international orgs, NGOs
8. Social influence activities of the group (both violent and non-violent)
9. Intra/inter-organizational conflicts

10. Choice of targets and attack types

11. Criminal (financing) activities

12. Collusion with corrupt officials

13. Demographics (cultural, ethnic, religious, linguistic)

QoG: State-Level Data

The following kinds of state-level data are very “dense” panel data (referenced by variable prefix). They
are available for most countries for most years, going back a few decades. Sadly, there are many
interesting and reliable variables not listed here because they comprise too few years and countries.

Fractionalization (cultural, ethnic, religious, linguistic) [example: al, fe, lp, r variables]
Government structure [example: ht]

Civil and political freedoms / government repression [example: fh]

Conflicts [example: ucdp]

Basic economic statistics [example: gle, pwt, unna]

UN Pe GN be
Group-Level Theories of Political Violence

Appendix B: Vensim Model of Political Opportunity and Collective Action

Diagrams

Intial_Government_Strength

Min_Government_Strength_Ad|_Time

Government Strength Regeneration Time

‘Max_Government Max_Govt_Strength_Decr

Senge /

3 covenment Strength aa
Government Stength_Inease ‘Government Sirngth_Decrease
on_EM_On_Govt Strength
Government_Commitment_To_Repression Govt_Strength_Decr_From_Political_Action
Repression

ness_Of Poltcal_ Acti

werity_Of Political Action

Figure 12. Government Strength.

Effect_Of_Sharing_Grievances

Initial_Grievance

<Repression>
Grievance_Incr_From_Repression

Normal_Frustration Time
Grievance_Per_Repression ge

Frustration_Reinforcement_Rate

BP} Grievance ate)

Grievance_Increase ees

Max_Grievance_Increase

‘Max_Repression

Grievance _Decay_Time

Nrm_Grievance_Decay_Time
Max_Grievance

-Min_Grievance_Adj Time’

Figure 13. Grievance.

17
Group-Level Theories of Political Violence 18

nial Participation >
inal Patanes Severity Of Political Action

Potential_For_Polltical_Action

‘as Incr m2 Grievance

Participation L Grievance
Eff_Of_Grievance_And_Participation_On_Action
Mi, _ Ad| Time

| Paricipaion ate)

ee Decrease

Pvlcpatn cmare
_ Max Paricipaton we A

Figure 14. Participation.

al_Action

Inial_Pere_Efl Of Politcal_Action

ernment Site _ >
a

~ . OFF ze. | Action

Effecveness_Of Political Action By Others
Perceived Effectiveness_Of Political Acton

Leaming_Efl_Of F —— tion

Effectiveness Learning Time

Figure 15. Perceived Success.

Equations*

*The odd naming convention for variable names is how Vensim explicitly stores variables with the
underscore character. One has to remove the suppression of underscore characters in Vensim to see this.
Underscores, in turn, allow for easy copying and pasting of Vensim equations into NetLogo.

"Eff£\_Of\_Grievance\_And\_Participation\_On\_Action” = 0.5
ffect\_Of\_Seeing\_Others\_Participation" = 0
"Effect\_Of\_Sharing\_Grievances" = 0
"Effectiveness\ Learning\ Time" = 5
"Effectiveness\ Of\_Political\ Action" = IF THEN ELSE ( "Government\_Strength"
> 0, Participation / "Government\_Strength" , 1)
"Effectiveness\_Of\_Political\_Action\_By\ Others" = 0
FINAL TIME = 40
"Frustration\_Reinforcement\_Rate" = Grievance / "Normal\_Frustration\_Time"
"Government \_Commitment\_To\ Repression” = 1
"Government \_Strength" = INTEG( "Government\_Strength\_Increase" -
"Government \_Strength\ Decrease"
~ "Initial\_Government\_Strength"
"Government \_Strength\_Decrease" = MIN ( "Govt\_Strength\_Decr\_From\_Political\_Action"
» "Max\_Govt\_Strength\_Decr" }

"Government \_Strength\_Increase"” = ( "Max\_Government\_Strength" - "Government\_Strength"
) / “Government\_Strength\_Regeneration\_Time"
"Government \_Strength\_Regeneration\_Time" = 5
"Govt \_Strength\_Decr\ _From\_Political\ Action" = "Severity\_Of\_Political\_Action"
* "Effectiveness\_Of\_Political\ Action" * "Political\_Action\_Eff\_On\_Govt\_Strength"

Grievance = INTEG( "Grievance\_Increase" - "Grievance\_Decrease" , "Initial\_Grievance"
)
"Grievance\_Decay\_Time" = MAX ( "Nrm\_Grievance\_Decay\_Time" * ( Repression
Group-Level Theories of Political Violence 19

/ "Max\ Repression" ) , "Min\_Grievance\_Adj\_Time"
"Grievance\_Decrease" = Grievance / "Grievance\_Decay\_Time"
"Grievance\_Incr\_From\_Repression" = Repression * "Grievance\_Per\_Repression"

¥ "Frustration\ Reinforcement\_Rate" + "Effect\_Of\_Sharing\_Grievances"

"Grievance\_Increase" = MIN ( "Grievance\_Incr\_From\_Repression" , "Max\_Grievance\_Increase"
)
"Grievance\_Per\_Repression” = 0.2
INITIAL TIME = 0
"Initial\ _Government\_Strength” = 1
"Initial\ Grievance” = 0
"Initial\ Participation" = 0
"Initial\ Perc\_Eff\_Of\_Political\_Action" = 0
"Learning\_Eff\_Of\_Political\ Action" = ( "Effectiveness\_Of\_Political\_Action"
- "Perceived\_Effectiveness\_Of\_Political\_Action" ) / "Effectiveness\_Learning\_Time"
+ "Effectiveness\_Of\_Political\_Action\_By\_Others"
"Max\_Government\ Strength” = 1 ~ ~
"Max\_Govt\_Strength\_Decr" = "Government\_Strength" / "Min\_Government\_Strength\_Adj\_Time"
"Max\ Grievance” = 1
"Max\_Grievance\_Increase" = ( "Max\_Grievance" - Grievance ) / "Min\_Grievance\_Adj\_Time"
+ "Max\_ Grievance" / "Grievance\_Decay\_Time"
"Max\_Participation” = 1
"Max\_Participation\_Incr" = ( "Max\_Participation" - Participation ) /

"Min\_Participation\_Adj\_Time"
~ + "Max\ Participation" / "Participation\_Decay\_Time"
"Max\ Repression" = 1
"Min\_Government\_Strength\_Adj\ Time" = 0.5
"Min\_Grievance\_Adj\_Time"” = 0.5
"Min\_Participation\_Adj\_Time" = 0.5
"Normal\ Frustration\_Time" = 10
"Nrm\_Grievance\_Decay\_Time" = 5
Participation = INTEG( "Participation\_Increase" - "Participation\_Decrease"
, "Initial\ Participation" )
"Participation\_Decay\_Time" = 5
"Participation\ Decrease" = Participation / "Participation\_Decay\_Time”
"Participation\_From\_Grievance" = 0.2
"Participation\ _Incr\_From\ Grievance" = Grievance * "Participation\_From\_Grievance"
+ "Effect\_Of\_Seeing\_Others\_ Participation"

"Participation\_Increase” = MIN ( "Participation\_Incr\_From\_Grievance"
"Max\_Participation\_Incr" )
"Perceived\_Effectiveness\_Of\_Political\ Action" = INTEG( "Learning\_Eff\_Of\_Political\_Action"

"Initial\_Perc\_Eff\_Of\_Political\_ Action"

"Political\ Action\_Eff\_On\_Govt\_Strength" =
"Potential\ For\_Political\ Action" = Grievance * Participation *
"Eff\_Of\_Grievance\_And\_Participation\_On\_Action"
Repression = "Government\ Strength" * "Government\ Commitment\_To\_ Repression"
SAVEPER = TIME STEP
"Severity\_Of\_Political\ Action" = "Potential\ _For\_Political\ Action" * (

"Perceived\ Effectiveness\_Of\_Political\ Action" * 3)
TIME STEP = 0.0625

Appendix C: NetLogo Model of Political Opportunity and Collective Action

breed [agents agent]
breed [governments government
directed-link-breed [active-links active-link.

globals [
7; System Constants

;DT ;;This is "difference in time" or "delta time". Delta time is used as an approximation of
"derivative of time"

yito iterate Euler integration forward

#7 All Others

Government_Commitment_To Repression

Max_Government_Strength

Max_Grievance
Max_Participation
Max_Repression
Min _Government_Strength_Adj_Time
Min Grievance Adj_Time

Min Participation Adj Time

;;Reporting
total-government-strength
total-grievance
total-participation
total-severity
total-effectiveness

governments-own [

;;Constants
Initial_Government_Strength

;;Auxiliaries

Govt_Strength_Decr From _Political_Action

Max_Govt_Strength_Decr
Repression

Total_Severity_Of Political_Action

Total_Effectiveness_Of_Political_Action

i; Flows
Government_Strength_Increase
Government_Strength_Decrease

77 Stocks
Government_Strength

agents-own [
active

;#Constants
Initial_Grievance
Initial Participation

Initial_Perc Eff_Of_Political_Action

A_Nrm_Grievance_Decay_Time
A Participation Decay Time
A_Normal_Frustration_Time
A_Effectiveness_Learning_Time

77 Network Diffusion Auxiliaries

Effect_Of Seeing Others Participation

Effect_Of Sharing Grievances

Effectiveness_Of Political _Action_By Others

77 Auxiliaries

Total_Government_Strength
Total_Repression

Effectiveness Of Political Action
Frustration_Reinforcement_Rate
Grievance_Decay_Time
Grievance_Incr_From Repression
Max_Grievance_Increase
Max_Participation_Incr
Participation_Incr_From Grievance
Potential_For Political Action
Severity Of Political _Action

Group-Level Theories of Political Violence

20
Group-Level Theories of Political Violence 21

#7Flows
Grievance_Increase
Grievance Decrease

Participation_Increase
Participation Decrease

Learning Eff_Of Political_Action

77Stocks
Grievance

Participation
Perceived_Effectiveness_Of Political _Action

patches-own [
neighborhood } surrounding patches within the vision radius

active-links-own [
current-flow ; the amount of grievance, shared through a link in a given step

to setup
+7 (for your model to work with NetLogo's new plotting features
#7 __clear-all-and-reset-ticks should be replaced with clear-all at
7; the beginning of your setup procedure and reset-ticks at the end
37 of the procedure.)
__clear-all-and-reset-ticks

37 SET GLOBALS
set-default-shape agents "circle"
set-default-shape links "small-arrow-link"

ask patches [
y7 make background a slightly dark gray
set pcolor gray - 1
#7 cache patch neighborhoods
set neighborhood patches in-radius vision

77 SET GLOBAL CONSTANTS
+7 System Constants

set DT 0.25 ;;This is "difference in time" or "delta time". Delta time is used as an
approximation of "derivative of time"

;;to iterate Euler integration forward. Too large a value will produce artifacts in
the simulation due to inability

;;to integrate equations correctly
set threshold-for-aggression .5

#7 All Others
set Eff Of Grievance_And_Participation_On_Action 0.5

set Government _Commitment_To_Repression 1
set Government_Strength_Regeneration_Time 5
set Grievance_Per_Repression 0.2

set Max_Government_Strength 1
set Max Grievance 1

set Max Participation 1

set Max Repression 1

set Min Government _Strength_Adj_Time 0.5
set Min Grievance Adj_Time 0.5

set Min Participation_Adj_Time 0.5
Group-Level Theories of Political Violence

set Participation_From Grievance 0.2
set Political Action_Eff_On_Govt_Strength 0.2

yset Grievance Sharing Time 10
yset Participation_Sharing Time 10
jset Effectiveness Sharing Time 10

77 create government
create-governments round (initial-govt-density * .01 * count patches) [
move-to one-of patches with [not any? turtles-here
display-government

set initial government stocks and constants
set Rnd_Government_Strength 0

set Initial _Government_Strength 1 + random-float Rnd_Government_Strength
set Government_Strength Initial_Government_Strength

i; create agents
create-agents round (initial-agent-density * .01 * count patches) [
move-to one-of patches with [not any? turtles-here
set active false
display-agent

yiset initial agent stocks and constants
set Rnd Grievance 0

set Rnd_Participation 0
set Rnd_Perc Eff Pol Act 0

set Initial Grievance 0 + random-float Rnd_Grievance
set Initial Participation 0 + random-float Rnd_Participation
set Initial Perc Eff Of Political_Action 0 + random-float Rnd_Perc Eff _Pol_Act

set A_Nrm Grievance Decay Time Nrm_Grievance Decay Time + random-float Rnd_GDT

set A Participation Decay Time Participation Decay Time + random-float Rnd_PDT

set A_Normal_Frustration_Time Normal Frustration_Time + random-float Rnd_NFT

set A_Effectiveness_Learning_Time Effectiveness Learning Time + random-float Rnd_ELT

set Grievance Initial_Grievance
set Participation Initial Participation
set Perceived _Effectiveness_Of Political Action Initial_Perc Eff_Of Political_Action

77 Network Diffusion

set Effect_Of Seeing Others Participation 0
set Effect_Of Sharing Grievances 0
set Effectiveness_Of Political_Action_By Others 0
jset Grievance Sharing Time 10
;set Participation Sharing Time 10
jset Effectiveness Sharing Time 10

ask agents [
create-active-links-to other agents in-radius (vision / 3)

77 plot initial state of system
my-update-plots
update-globals

end

to go
; update display

ask agents [ determine-activeness
ask agents [ display-agent

22
Group-Level Theories of Political Violence 23

ask governments [ display-government

77 FLOW EQUATIONS

;7set government flows
ask governments [

;Information for Flows

set Total Severity Of Political _Action sum [Severity Of Political_Action] of agents / count
agents

set Total Effectiveness Of Political Action sum [Effectiveness_Of Political _Action] of agents /
count agents

set Govt_Strength_Decr_From_Political_Action Total Severity Of Political_Action *
Total_Effectiveness_Of Political_Action *

Political_Action_Eff_On_Govt_Strength

set Max Govt_Strength_Decr Government_Strength / Min_Government_Strength_Adj_Time
set Repression Government_Strength * Government_Commitment_To Repression

;Actual Flows

set Government_Strength_Increase ( Max_Government_Strength - Government_Strength) /
Government_Strength_Regeneration_Time

ifelse Govt_Strength_Decr_From_Political_Action < Max_Govt_Strength_Decr
[ set Government_Strength_ Decrease Govt_Strength_Decr_ From_Political_Action
[ set Government Strength Decrease Max Govt_Strength_Decr ]

yiset agent flows
ask agents [

;Information for Flows

set Total _Government_Strength sum [Government_Strength] of governments / count governments
set Total Repression sum [Repression] of governments / count governments

ifelse Total _Government_Strength > 0
[ set Effectiveness_Of Political Action Participation / Total _Government_Strength ]
[ set Effectiveness Of Political Action 1 ]

set Frustration_Reinforcement_Rate Grievance / ( A_Normal_Frustration_Time

ifelse Nrm_ Grievance Decay Time * ( Total Repression / Max_Repression ) > Min _Grievance_Adj_Time
[ set Grievance Decay Time A_Nrm Grievance Decay Time * ( Total Repression /
Max_Repression )
[ set Grievance_Decay_Time Min_Grievance_Adj_Time ]

set Grievance_Incr_From Repression Total Repression * Grievance_Per Repression +
Frustration Reinforcement_Rate + Effect_Of Sharing Grievances

set Max Grievance Increase ( Max Grievance - Grievance } / Min Grievance _Adj Time + Max Grievance
/ Grievance_Decay Time

set Max Participation_Incr ( Max Participation - Participation ) / Min Participation_Adj_Time +
Max Participation / Participation_Decay Time

set Participation_Incr_From_Grievance Grievance * Participation_From Grievance +
Effect_Of Seeing Others Participation

set Potential For Political_Action Grievance * Participation *
Eff£_Of Grievance _And_Participation_On_Action

set Severity Of Political Action Potential_For Political_Action * (
Perceived_Effectiveness_Of Political_Action * 3)
Group-Level Theories of Political Violence 24

;Actual Flows

ifelse Grievance Incr From Repression < Max_Grievance_Increase
[ set Grievance Increase Grievance _Incr_From Repression ]
[ set Grievance Increase Max Grievance Increase ]

set Grievance_Decrease Grievance / Grievance_Decay_Time

ifelse Participation_Incr_From_Grievance < Max_Participation_Incr
[ set Participation_Increase Participation_Incr_ From Grievance ]
[ set Participation_Increase Max_Participation_Incr ]

set Participation_Decrease Participation / A_Participation_Decay Time

set Learning Eff Of Political Action ( Effectiveness_Of Political Action -
Perceived Effectiveness Of Political Action ) /
A_Effectiveness_Learning Time + Effectiveness Of Political _Action_By Others

77 STOCK EQUATIONS

yziterate governments stocks
ask governments [

set Government_Strength Government_Strength + ( Government_Strength_Increase * DT ) -
( Government_Strength_Decrease * DT )

yziterate agent stocks
ask agents [
set Grievance Grievance + ( Grievance_Increase * DT ) - ( Grievance_Decrease * DT

set Participation Participation + ( Participation_Increase * DT ) - ( Participation_Decrease *
Dr )

set Perceived Effectiveness Of Political Action Perceived Effectiveness Of Political Action +
( Learning Eff Of Political Action * DT )

+7 DIFFUSION

;Important Variables...
;set Effect_Of Seeing Others Participation 0

;set Effect_Of Sharing Grievances 0

#set Effectiveness Of Political_Action_By Others 0
jset Grievance Sharing Time 10 _ Oo

;set Participation_Sharing Time 10

;set Effectiveness Sharing Time 10

; update agent Grievance via diffusion
ask agents [
let recipients out-active-link-neighbors
ifelse any? recipients [
let Grievance Of Sender Grievance
ask recipients [

set Effect_Of Sha
Dr

g_Grievances ( (Grievance Of Sender - Grievance) / (Grievance Sharing Time)) *

let efg Effect_Of Sharing Grievances
ask in-active-link-from myself [ set current-flow efg

;  ifelse Grievance Of Sender - Grievance >= 0
? [set Effect_Of Sharing Grievances ((Grievance_Of Sender - Grievance) /
(Grievance_Sharing_Time)) * DT
let efg Effect_Of_Sharing Grievances
ask in-active-link-from myself [ set current-flow efg

Group-Level Theories of Political Violence 25

i 1
[set Effect_Of Sharing Grievances 0
let efg Effect_Of_Sharing Grievances
? ask in-active-link-from myself [ set current-flow efg

7 ]

set Effect_Of Sharing Grievances 0

1

update-globals
tick
my-update-plots

end

77 GOVERNMENT BEHAVIOR
to move ;; turtle procedure
j# move to a patch in vision; candidate patches are empty
let targets neighborhood with
[not any? governments-here and all? agents-here [active = false]]
if any? targets [ move-to one-of targets

end

77 ZEALOTS
to Create Zealot

;Pick a random agent and set its Grievance, Participation, and

Percieved Effectiveness Of Political_Action to new values

ask one-of agents

if

set Grievance Zealot_Grievance

set Participation Zealot_Participation

set Perceived Effectiveness Of Political Action Zealot_Perc_Eff_Of_Pol_Act
set A_Nrm Grievance Decay Time 1000

set A_Normal_ Frustration Time 1000

set A_Participation Decay Time 1000

set A_Effectiveness Learning Time 1000

end
77 VISUALIZATION

37 Visualation of Severity of Political Action
to determine-activeness

set active ((Severity_Of Political_Action) > threshold-for-aggression
end

to display-agent ;; agent procedure

set size Grievance
ifelse active
[ set size Severity Of Political Action * 2
set color yellow
set shape "fire"
1
[ set size Grievance
set color scale-color red Grievance 0 1.5
Group-Level Theories of Political Violence 26
set shape "circle"
1
end
to display-government
set color cyan
set shape "triangle"
set size 1
end
to update-globals
ask governments [ set total-government-strength sum [Government_Strength] of governments * 250
1
ask agents [ set total-grievance sum [ Grievance ] of agents
ask agents [ set total-participation sum [ Participation ] of agents
ask agents [ set total-severity sum [Severity Of Political_Action] of agents ]
ask agents [ set total-effectiveness sum [ Perceived Effectiveness Of Political Action ] of
agents / 4 ]
end
77 PLOTTING

to my-update-plots
let active-count count agents with [active

ask active-links [
set color scale-color gray (current-flow ) 0 .005

1

set-current-plot "Totals"
set-plot-x-range (ticks - 100) ticks

set-current-plot-pen "Govt Strength"
plot total-government-strength
set-current-plot-pen "Grievance"
plot total-grievance
set-current-plot-pen "Participation"
plot total-participation
set-current-plot-pen "Severity of Pol Actn"
plot total-severity
set-current-plot-pen "Effectiveness of Pol Actn"
plot total-effectiveness

Metadata

Resource Type:
Document
Description:
In the political violence scholarship, there is a gap in explaining how group-level dynamics cause mass political violence. There are several theories of why political groups become violent. Because of the qualitative nature of these theories and the feedback complexity of political violence, it is hard to test these theories against each other and against data. This paper describes an attempt to use a combination of system dynamics and agent-based modeling to create a simulation pitting rival theories of political violence against each other and against empirical data. The purpose of the research is theory testing: to see what theory or combination of theories best explains political violence. The paper provides an overview of the relevant theory and data. The paper then develops a dynamic hypothesis and a prototype hybrid Netlogo simulation of two theories, political opportunity and collective action.
Rights:
Date Uploaded:
December 31, 2019

Using these materials

Access:
The archives are open to the public and anyone is welcome to visit and view the collections.
Collection restrictions:
Access to this collection is unrestricted unless otherwide denoted.
Collection terms of access:
https://creativecommons.org/licenses/by/4.0/

Access options

Ask an Archivist

Ask a question or schedule an individualized meeting to discuss archival materials and potential research needs.

Schedule a Visit

Archival materials can be viewed in-person in our reading room. We recommend making an appointment to ensure materials are available when you arrive.