Simulation of urban dynamics and socioeconomic segregation using NetLogo to model and analyze the impact of different urban policies on social stratification.
This project implements a cellular automaton that simulates a city with different social classes and ** service entities**, developed as part of the Artificial Life course at Universidad del Valle. The simulation models how various urban policies affect the spatial distribution and evolution of social classes over time.
Presentation Date: June 2024
- Model a virtual city with distinct social classes (high, middle, low)
- Implement service entities that influence urban development (hospitals, universities, stores)
- Simulate the impact of different urban policies on socioeconomic segregation
- Analyze the evolution of socioeconomic indicators under various political scenarios
The project was developed following these steps:
- Model Design: Definition of cellular attributes (social class, income, services, education).
- Implementation: Programming the cellular automaton in NetLogo with evolution rules.
- Simulation: Execution of scenarios under different urban policies.
- Analysis: Observation of emergent patterns and measurement of socioeconomic indicators.
Main Tool: NetLogo - Multi-agent programmable modeling environment
The cellular automaton includes the following properties:
| Attribute | Description |
|---|---|
is-high-class? |
Indicates if belongs to high social class |
is-middle-class? |
Indicates if belongs to middle social class |
is-low-class? |
Indicates if belongs to low social class |
is-hospital? |
Indicates if it's a hospital entity |
is-university? |
Indicates if it's a university entity |
is-store? |
Indicates if it's a store entity |
cell-income |
Economic income of the cell |
cell-services |
Service accessibility level (1, 2, 3) |
cell-education |
Education level (1, 2, 3) |
IPM-value |
Value to determine social class |
Requirement: NetLogo installed (version 6.3.0 or higher)
-
Clone the repository:
git clone https://github.com/valtimore/Segregacion-Simulada.git
-
Open the file in NetLogo:
- Launch NetLogo
- Go to
File -> Openand selectSegregacionFinal.nlogo
-
Simulation controls:
Extinción: Removes all existing populationNacimiento: Generates new population according to configurationsIniciar: Executes the simulation
-
Monitors:
Total clase baja: Quantity of low-class individualsTotal clase media: Quantity of middle-class individualsTotal clase alta: Quantity of high-class individualsClase: Social class of the cell under cursorInformación Ingresos: Income of the cell under cursorInformación servicios: Service level of the cell under cursorInformación Educación: Education level of the cell under cursor
The model allows simulation of three different policies:
Realistic simulation where wealth clusters in specific sectors with little variation. Critical sectors receive no external help.
Policy of economic assistance toward vulnerable sectors. High and middle classes pay taxes directed to the low class, stabilizing purchasing power.
Extreme scenario where the high class monopolizes all income, simulating corruption phenomena.
The model allows observation of::
- Spatial distribution of social classes.
- Temporal evolution of socioeconomic indicators.
- Impact of policies on social mobility.
- Emergent patterns of urban segregation.
The simulation enables analysis of how different urban policies affect socioeconomic segregation and spatial wealth distribution. As future work, we propose:
- Incorporate more demographic and economic variables
- Model migration between different city areas
- Implement more granular policy interventions
- Connect the model with real urban data for validation
This project is licensed under the MIT License. See the LICENSE file for details.
Project developed for the Artificial Life course - Universidad del Valle - 2024
29/06 - Oh! The existing population in this city has reached old age, can no longer work, the rich have retired, and the poor invade traffic lights asking for money... All this could have been avoided if the world had received prompt grading...


