# Ideology Difussion

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)

## WHAT IS IT?

The model is trying to show how ideology diffusion works. Although the model simplifies many aspects (v.g. personality and demographics) influencing ideology choice, it shows a Matthew Effect behavior where ideologies with more followers eventually dominate over the rest. The model can be seen as a variant of Schelling's Seggregation model + variable neighborhood size and type and probability of change per agent (openness to change ideology).

## HOW IT WORKS

Each patch represents a person located in a spatial environment with a COLOR indicating its ideology. Agents decide to change their ideology "color" based on their neighbors' ideologies and other parameters as: THRESHOLD indicating the degree of peer pressure (how many agents of given ideology are) required to adopt an ideology of their surroundings, PROBABILITY of changing ideology independently of their surroundings (is the agent willing to change his mindset?), NEIGHBORHOOD-TYPE and RADIUS representing how many neighbors and in which spatial configuration the agent counts its neighbors for deciding.

On every step each agent decides to change ideology according to a PROBABILITY, then if this is the case it counts how many neighbors of each color are within its neighborhood. Finally if the agent count of the most abundant neighbor color is higher than his THRESHOLD (% of total neighbors) multiplied by the total neighbor count, the agent changes to such color (ideology).

## HOW TO USE IT

THRESHOLD and PROBABILITY are set randomnly within a range set by the sliders: min-threshold, max-threshold, min-probability, max-probability. There are controls for NEIGHBORHOOD-TYPE (i.e. Von Neumann and Moore) and RADIUS (size of neighborhood). Set the parameters and run. The graph indicates how the population of of each ideology develops with time.

## THINGS TO NOTICE

Notice how with time the growth of the dominant ideology is exponential and follows preferential attachment pattern. It may happen that non dominant ideologies oscillate but they can hardly overcome the dominant ideology. This is also known as "Matthew Effect": "For unto every one that hath shall be given, and he shall have abundance: but from him that hath not shall be taken even that which he hath." (Matthew 25:29)

## THINGS TO TRY

Try to experiment with different sizes/types of neighborhood (RADIUS) and ranges of PROBABILITY and THRESHOLD.

## EXTENDING THE MODEL

The model can be extended by adding the following:

*Sliders for selecting a percentage of starting agents from each ideology. *Implement adaptive agents: Minorities reduce their probability and preserve their ideology regardless peer pressure (niche adaptation). *Use a network instead or together with spatial influence. *Mouse interaction for adding custom distributions of agents' ideologies.

## NETLOGO FEATURES

An extension was required to implement different sizes of neighborhoods beyond the regular Von Neumann and Moore types. This extension was taken from the Moore & Von Neumann Example in the Models Library [1].

## RELATED MODELS

*Schelling's Model of Segregation [3] *Fur (Turing's model for fur patterns) [2]

## CREDITS AND REFERENCES

## Comments and Questions

patches-own [probability threshold red-neighbors blue-neighbors yellow-neighbors orange-neighbors] globals [nearby] to setup clear-all reset-ticks ;; select neighborhood type ifelse neighborhood-type = "Von Neumann" [ set nearby von-neumann-offsets radius] [ set nearby moore-offsets radius] set-patches end to go update-patches tick end to set-patches ask patches [ ;; set agent properties set pcolor one-of [red blue yellow orange] set probability (random-float (max-probability - min-probability)) + min-probability set threshold (random (max-threshold - min-threshold)) + min-threshold ] end to update-patches ask patches[ if random-float 1 < probability [ ;; each agent decides to change or not color based on probability ;; count neighbors surrounding each agent according to the selected boundary (Von Neumann or Moore) set red-neighbors count patches at-points nearby with [pcolor = red] set blue-neighbors count patches at-points nearby with [pcolor = blue] set yellow-neighbors count patches at-points nearby with [pcolor = yellow] set orange-neighbors count patches at-points nearby with [pcolor = orange] let neighbor-list (list red-neighbors blue-neighbors yellow-neighbors orange-neighbors) ;; create a list of neighbors by color let neighbor-max max neighbor-list ;; save the count of the most abundant color of neighbor ;; each agent decides to change color if agents of the most abundant color are higher than a threshold if neighbor-max > round threshold * (count neighbors)[ ;; change color to the most abundant neighbor color if neighbor-max = red-neighbors [set pcolor red] if neighbor-max = blue-neighbors [set pcolor blue] if neighbor-max = yellow-neighbors [set pcolor yellow] if neighbor-max = orange-neighbors [set pcolor orange] ] ] ] end ;; Moore extended boundary where n (input) is the radius or visibility to-report moore-offsets [n] let result [list pxcor pycor] of patches with [abs pxcor <= n and abs pycor <= n] report remove [0 0] result ;;removes itself from the neighbor list end ;; Moore extended boundary where n (input) is the radius or visibility to-report von-neumann-offsets [n] let result [list pxcor pycor] of patches with [abs pxcor + abs pycor <= n] report remove [0 0] result ;;removes itself from the neighbor list end

There is only one version of this model, created 8 months ago by Santiago Rentería.

## Attached files

File | Type | Description | Last updated | |
---|---|---|---|---|

Ideology Difussion.png | preview | Preview for 'Ideology Difussion' | 8 months ago, by Santiago Rentería | Download |

This model does not have any ancestors.

This model does not have any descendants.