Analyzing and Understanding ABMs
EES 4760/5760
Agent-Based and Individual-Based
Computational Modeling
Jonathan Gilligan
Class #24:
Wednesday, November 13
2024
Downloads
- NetLogo version of Schelling’s segregation model:
Background on Racial
Segregation in US Housing
- Possible causes of racial segregation:
-
Organized action: Starting in the early 20th century,
federal, state, & local laws & regulations enforced segregation
- Neighborhoods were designated “white”, “black”, etc. and only
people of a certain race were allowed to buy property there
- Banks were forbidden to make loans to people of the “wrong”
race.
- The Home-Owners’ Loan Corporation (HOLC), maintained maps that were
used to discrimninate.
- Private property developers, landlords, and homeowners’
associations used contract law to enforce discrimination.
- “Covenants” attached to the deed, prohibiting the owner from selling
to anyone of a different race.

HOLC red-lining map of Brooklyn NY, 1938. Public Domain
Background on Racial
Segregation in US Housing
- Possible causes of racial segregation:
-
Organized action: Starting in the early 20th century,
federal, state, & local laws & regulations enforced
segregation
- Socioeconomic filters: After Black families are denied
opportunities to accumulate wealth through homeownership, lack of money
can exclude them from better housing, even after segregation laws are
repealed.
- Individual preference: Even when there is equal
opportunity to buy homes, people often want to live near other people
like themselves (homophily), so segregation patterns can be
hard to break.

HOLC red-lining map of Brooklyn NY, 1938. Public Domain
Schelling Model of Housing Segregation
-
Maybe the first Agent-Based Model.
No computers. Schelling worked the model on graph paper with
pennies and dimes representing the two kinds of agents.
-
Schelling new about the three causes and thought organized
action and socioeconomic filters were the most important causes of
segregation …
- but he thought it was important to study the role of individual
preference as an obstacle to integration, even after the other causes
were eliminated.
Model Overview
- Turtles represent households.
- Two colors of turtles: red and blue
- Turtles have one state-variable:
happy?
(true or
false)
- There is a global variable
%-similar-wanted
and a
turtle is happy?
if at least this fraction of its neighbors
have the same color as its own.
- At each tick, unhappy turtles move to a random empty patch.
- When all turtles are
happy?
, the model stops.
Experiments
Vary %-similar-wanted
and the density
of
turtles on the patches.
Suggestions:
- Try extreme values of parameters:
- Set
density
and %-similar-wanted
to
different combinations near maximum, minimum, and in the middle.
- What do you see?
Extreme Values
- Set
density
to 75% and set
%-similar-wanted
to 95%
- Press
setup
and then press go
- Now, with
go
still pushed, slowly reduce
%-similar-wanted
.
Systematic experiment:
- Using Behaviorspace, create a new experiment to vary
%-similar-wanted
- Set
time limit
to 1000
- Set
density
to 75
- Measure
percent-similar
- What do you see?
- Try adjusting both
%-similar-wanted
and
density
Visualizing Structures
-
Add the following to the procedure
to update-turtles
, after set happy?
ifelse happy? [ set shape "square" ] [ set shape "square-x" ]
-
Repeat the exercise of:
- set
density
= 75% and %-similar-wanted
=
95%,
- press
setup
and go
- gradually reduce
%-similar-wanted
Is it easier to see the emerging patterns now?
Another Heuristic
- When you’re at an interesting value for one parameter
- (e.g.,
%-similar-wanted
= 75%),
- vary other paremters (
density
).
- Set
density
to 75% and
%-similar-wanted
to 75%.
- Set
density
to 96% and
%-similar-wanted
to 75%.
- Vary
%-similar-wanted
- Set
%-similar-wanted
to 70%.
Other heuristics:
- Use several currencies to evaluate models
- Statistical analysis of spatial patterns and time-series
- Analyze agent properties:
- Are they unimodal or multimodal
- (e.g., are turtles divided into distinct groups of rich/poor,
healthy/sick, etc.,
- or distributed continuously around one dominant value of state
variables?)
- Stability: Does system return quickly to steady state after it’s
disturbed?
- Simplify models:
- Make all patches the same
- Make all turtles the same
- Reduce places where you use stochasticity
- Use fewer turtles and patches
- Explore unrealistic scenarios
- See book for heuristics for statistical analysis of model
output…
Analyzing and Understanding ABMs
EES 4760/5760
Agent-Based and Individual-Based
Computational Modeling
Jonathan Gilligan
Class #24:
Wednesday, November 13
2024