User Tools

Site Tools


env-model:classes:first2014:finalproject:rebellion

[back]

REBELLION

WHAT IS IT?

This project models the behavior of people prone to rebelling against a central authority. It is based on Rebellion Model implemented in NetLogo, which in turn is based on the Joshua Epstein's model of civil violence (2002), but includes some extensions and adaptations. There are two kinds of population in this model: People and police. Both of them are able to move around their environment randomly.

People rebel if proper conditions are present, which particularly depends on their individual grievance against the central authority and their perception of the risks. Cops have the ability of sending to jail a rebel in their vicinity each turn, acting on behalf of the central authority and seeking to suppress the rebellion.

The model wants to build an approximate behavior of the society facing a kind of displeasure from part of the population (rebels). Active rebels tend to group in order to glorify their actions like in real world. With this model the user is able to understand an approximation of a world where the activism of certain group of people is changing the reality and the behavior of people surrounding them.

This model could be applied to the study of active social movements in local areas, including their responses to control measures. It could also be a useful tool to study deployment strategies for police officers in conflicting areas.

HOW IT WORKS

Parameters and Data

The model has some parameters important for behavior of agents:

  • Government Legitimacy: General level of legitimacy of the central authority as perceived by all people. This is set in the model at startup and its value ranges from 0 to 1.
  • Maximum allowed jail time: Maximum numbers of turns a person can spend in jail. The default value is 5.
  • Visibility range: Neighborhood radius for interaction. Used by both people and cops.
  • Cops Superiority: Minimum ratio of rebel people against cops in a cop neighborhood for this cop to be able to arrest one of those rebels.

Each member of the general population has several attributes influencing its behavior:

  • Perceived hardship: Level of a person discontent against the central authority. This is assigned randomly for each person when the model starts and its value ranges from 0 to 1.
  • Risk aversion: Level to what an agent avoids the risk of being arrested. Its value randomly set for each person agent at birth and ranges from 0 to 1.
  • Time in jail: Amount of turns a person spends in jail after being arrested by a cop. This is determined randomly at the arresting time and it is a number between 0 and the maximum allowed jail time.

Each police officer has an attribute influencing its behavior:

  • Tolerance: Willingness of a cop for arresting people. It is value randomly set for each cop at birth and ranges from 0 to 1.

Behaviours

Cop

  • Each cop moves randomly around the world each turn unless there is not cop superiority in his neighborhood (he stays in a zone likely to become a conflictive one).
  • In order to imprison a rebel, there must be cops superiority in the cop neighborhood. If this is the case, the cop will choose one of the rebels in his neighborhood and will decide whether send him to the jail or not based on his own tolerance. If the rebel is imprisoned, the police will move to the cell the jailed rebel was in.
  • The number of turns that an individual is jailed is fixed by the police agent through a random number between 0 and the maximum allowed jail time.

Person

* Each person in the model will random move in the world unless there are enough homologs in its neighborhood.

There are three types of people: Quiet, Rebels and Jailed. A quite person can become rebel and vice versa, depending on whether the following expression is true:

expression:

(grievance - risk aversion x arrest probability) > threshold

where:

grievance = perceived hardship x (1 - government legitimacy)

arrest probability = if num of active people > num of cops then 0%, else 99%

The mentioned threshold is fixed in the model (0.1).

A rebel person can become jailed is a cop decides so. A jailed person stays in prison over the amount of turns that the cop decided.

Statistics

In the world certain statistical values are kept. The simulation tries to spot certain situations that might describe the influence of each type of person and cops in their space. For this, every time a neighborhood is analyzed, counting of quiets, rebels and cops is made, and if the numbers exceed certain calculated threshold, the neighborhood is characterized as a quiet, rebel or repressive one.

Once the neighborhoods are analyzed, if the numbers of neighborhood characterization previously mentioned exceed certain calculated threshold, the whole world is characterized as in a quiet, rebel or repressive state (could be in the three states at the same state).

HOW TO USE IT

The user is suggested to play with several model parameters in order to evaluate several conditions. In the previous section some of them were mentioned:

  • GOVERNMENT_LEGITIMACY: Government Legitimacy.
  • MAX_JAIL_TIME: Maximum allowed jail time.
  • VISIBILITY_RANGE: Visibility range.

Other parameters are:

  • DIMENSION: Number of rows and columns of the simulated space.
  • COPS_DENSITY: Expected ratio of cops in relation to the total space. Its value range from 0 to 1.
  • PEOPLE_DENSITY: Expected ratio of people in relation to the total space. Its value range from 0 to 1.
  • COPS_SUPERIORITY: Ratio between cops and people above which a cop can arrest a person in his neighborhood.
  • INITIAL_REBEL_PROB: Initial amount of rebel (probability)

When the model is run, several graphs are created. The user can control which of these graphs to show modifying (to true or false) the following definitions: ALL (Show all types graph), COPS (Show just cops graph), PEOPLE (Show just people graph), REBELCOPS (Show just cops and rebels graph), and WORLDSTATES (Show world state chart).

It is also possible to control the amount of iterations and a delay between each simulation step.

THINGS TO NOTICE

The model output is not only the graphical grid showing the different agents. Take a look at the console to see the when the world is in a state of rebellion and/or repressive and/or utopic. These situations can coexist depending on the parameter values set. These values should be wisely chosen by the user depending on the numbers of people and cops in the world.

When cops imprison persons, they disappear from the visual representation for a number of turns. Depending on those times and on the cops’ behavior, the population might look diminished for some period.

THINGS TO TRY

As expected, when the max time in jail parameter is high, the population of rebels could be taken to a low level to entire simulation time. Try to set a value near to the amount iterations. Despite this, the amount of rebels is never (or never remains in) 0.

The amount of rebels could be somehow controlled with the parameter GOVERNMENT_LEGITIMACY. Try this.

Be careful while playing with the proportion of people and cops. Remember to leave some empty spaces for the agents to move. INITIAL_REBEL_PROB let you set the expected initial of rebel among the people. Take into account that situations with too many cops are not interesting.

Use GOVERNMENT_LEGITIMACY to control the likelihood for the transition from Quiet to Rebel states.

EXTENDING THE MODEL

The model can be extended by considering two kinds of rebels: The pacific one and the dangerous one. These two kinds of rebels can be differentiated by their level of perceived hardship, with the dangerous ones having the higher values of perceived hardship. In this case, if the dangerous rebel is sent to jail by a cop, the rebel stays in jail the whole simulation. Also, dangerous rebels could make people inside a neighborhood that contains no rebels disappear (like when someone use a bomb).

The model can also be extended by defining different neighborhoods for cops and for people.

TerraME FEATURES

This model have not used any special Terrame features or workarounds. For creating the model, Cellular Spaces, Agents and Societies have been used. The order of events is set in the Timer controling the steps of the simulation for giving priority to cops behavior.

Check the References section to see the Rebellion models consulted for creating this one.

CREDITS AND REFERENCES

env-model/classes/first2014/finalproject/rebellion.txt · Last modified: 2014/10/02 13:58 by tiago