Upload
doannhu
View
225
Download
0
Embed Size (px)
Citation preview
Introducción a los Modelos de Autómata Celular con NetLogo
7º y 8º sesiones del curso de INTRODUCCIÓN A LAS TÉCNICAS MODERNAS DE MODELACIÓN
Y ANÁLISIS REGIONAL Julio 2012, FES-Acatlán
Qué son los MBA´s
MBA´s Modelar comportamiento y decisiones
económicas de agentes (i.e. personas, hogares, localidades, regiones, países)
Supuestos: a) Heterogeneidad de los agentes b) racionalidad limitada c) Interacción entre agentes fuera de
equilibrio Resultado: Múltiples configuraciones
estacionarias en el nivel agregado
Modelo económico tradicional
Modelar comportamiento y decisiones
económicas de agentes (i.e. personas, hogares, localidades, regiones, países)
Supuestos:
a) Agente representativo
b) Racionalidad perfecta
c) No interacción entre agentes
Resultado:
Equilibrio único
Cómo se transforma el modelo tradicional “económico” ante la presencia de las interacciones sociales
Cada agente escoge una acción para maximizar utilidad (U); donde
U = U (w i, t , w-1,t , Vi ) w i, t es acción del agente en tiempo t, w-1,t indica que agente i es afectado por las acciones de los otros agentes j, y Vi denota un vector de características que influye en su payoff para cada acción.
Es decir, Individuos toman decisiones de acuerdo a sus: A ) Características o atributos personales (educación, sexo, ingreso) y otras “variables exógenas” “ambiental” (contextuales) B) Información proveniente de sus amigos, vecinos, compañeros de clase y trabajo, de su “grupo social” o “clase social”, otras regiones
Implicaciones de esta concepción
• Importancia de los aspectos dinámicos. • Contagio, “cascadas de información”, tipping points, thresholds.
• Desigualdad: conformidad local y diversidad global (Young) • Equilibrio múltiple
• ¿Qué es más importante, el equilibrio o la trayectoria para alcanzar un
equilibrio? • ¿Hay espacio para políticas de intervención social?
– Multiplicador social (espacial)
Autómata Celular
• Los AC son un modelo matemático para analizar sistemas dinámicos-espaciales de tipo discreto y pueden fácilmente analizarse desde una perspectiva computacional y son muy útiles para estudiar sistemas regionales.
• Un AC está compuesto por un conjunto de celdas ordenadas en un espacio regular de dimensión D, generalmente es una cuadrícula de dos dimensiones (como si fuera un tablero de ajedrez).
• Existe un número finito de estados y una regla de transición aplica para todas las celdas.
• El tiempo se mide de forma discreta por lo que en cada periodo de tiempo las celdas son actualizadas de manera simultánea o secuencial y la regla de transición permite calcular el estado de cada celda a partir de reglas locales.
• La regla local puede definir el estado presente de una celda a partir de su estado previo, del estado previo de sus vecinos o de ambos (véase Hagselmann y Flache, 1998).
Actualización de celdas Los sistemas lógicos de las computadoras consideran el tiempo de forma discreta así que el software de programación utilizado puede actualizar los estados de los agentes de forma sincrónica o asincrónica. El tipo de actualización condiciona los resultados de los modelos
(véase Hubermann & Glance 2003, Glibert 2008)
Asincrónica • Asignar un turno a cada agente por cada comando
contenido en la programación. La mayoría de los sistemas sociales son por naturaleza asincrónicos pues los agentes y/o organismos no actúan de manera simultánea pues ejecutan sus acciones de forma adaptativa a través de información limitada e imperfecta. En términos computacionales este tipo de actualización asincrónica puede tener dos variantes: – Ejecución asincrónica secuencial: Donde se invoca a
cada agente en un orden preestablecido de acuerdo a alguna de sus características (por ejemplo, su tamaño económico o posición geográfica)
– Ejecución asincrónica aleatoria: En cada ciclo se invoca a cada agente en un orden aleatorio diferente.
• El uso de la ejecución asincrónica, tiene sus desventajas porque el orden de actualización de los agentes puede influir de manera importante en los resultados finales y por lo tanto una sola corrida no es suficiente para entender la dinámica del sistema (Gilbert, 2008). Sin embargo, esta desventaja puede controlarse por medio de construir distribuciones empíricas de resultados de n simulaciones
Sincrónica • Las celdas actualizan su estado de manera
“simultánea”; es decir, como en una economía hipotética donde los procesos de producción, transacción y consumo se están desarrollando de manera paralela. En términos de la simulación, lo anterior significa que todas las entradas de los agentes se han completado antes que las salidas.
Este tipo de actualización se modela para captar las
dinámicas globales de los procesos de interacción espacial cuando se analizan procesos que se representan a través de ecuaciones en diferencia (Huberman y Glance, 1993).
Problemática
• Decisión dicotómica: invertir o no invertir (autoempleado o asalariado)
• La decisión de invertir dependerá de la decisión que tomen las personas que me rodeen
Seminario MBAS
• Atributos – Invertir [1, azul] , No invertir [0, rojos] – Total; representa el valor numérico de las decisiones de
invertir del vecindario de cada celda
• Vecindad tipo Moore • Reglas de comportamiento
– Mayorías locales • Si la suma de mis vecinos >= 5 (invierto, 1) • Si la suma de mis vecinos <= 3 (no invierto, 0)
– Empate • Si la suma = 4 (me quedo con mi decisión original)
• Mundo toroidal
Seminario MBAS
Condiciones Generales
Programación en NetLogo 5.0.2
• Consta de tres partes:
1. Definición de los objetos y sus atributos
2. Ajuste Inicial
3. Actualización
Seminario MBAS
Seminario MBAS
1. Definición de los objetos y sus atributos
2. Ajuste Inicial pacthes-own sólo puede ser utilizado al principio del programa, y define las variables que los “pacthes” pueden usar.
Warning: nothing-named RECOLOR-PATCH has been defined
Seminario MBAS
3. Definición del procedimiento recolor-patch
3.1 creación botón setup e inicialización del programa
4. Creación de actualización Poner “to go” antes de “to recolor-pacth”
Hacer el “to go” recursivo
4.1 creación de monitores
count patches with [pcolor = blue]
4.2 creación de monitores
(count patches with[pcolor = blue] / count patches) * 100
Seminario MBAS
Setup y corrida de modelo
Creación de gráficos
Insertar “do-plot” en “to go”
Seminario MBAS
Creación de gráficos: definición del procedimiento
Creación de gráficos
Debe coincidir con el nombre en do-plot. “Inversionistas vs Ahorradores”
Creación de gráficos
Poner nombre leyenda “inversionista” y seleccionar color azul
Para incorporar otra variable, pulsar “Añadir trazo” y repetir procedimiento anterior
Corra el modelo
• Checar que es mundo toroidal
• N simulaciones (ver después)
• La corrida es “asincrónica” aleatoria ; y esto es cuando se utiliza “ask pacthes”
• Empate • Si la suma = 4 (mi postura será opuesta a la
inicial)
• Sincrónico v/s Asincrónico
• Toroidal v/s “mundo plano”
Seminario MBAS
Variación 1
Seminario MBAS
1.a) Asincrónico Toroidal
Original
Modificación 1
•Corra el modelo
•¿Qué sucede?
•Esta instrucción de jugar el contrario es una forma de romper el cluster local
Seminario MBAS
1.b) Sincrónico Toroidal
Original
• Analice el modelo
•¿Por qué no hay contagio?
Desactivar algunas instrucciones
Desactivar
Activar
Modelo estocástico (mayoría)
Nuevas variables
spin
Ejecutar decisión
Integrar beta como slider (deslizador)
• Corra el modelo
• Considere varios valores de beta; 0, 0.5, 1, 2, 3,5
• ¿Qué sucede?
• ¿Cuál es comportamiento de largo plazo?
Diagrama de bifurcación
Activar y desactivar funciones
Activar
Desactivar
Desactivar
• Empate • Si la suma = 4 (elige aleatoriamente una
proporción de estos y que asuman la postura de la mayoría global)
• Sincrónico
• Toroidal v/s “mundo plano”
Seminario MBAS
Variación 2: con agentes globales
Seminario MBAS
2.a) Sincrónico Toroidal
Modificación 1
Crear switch “mayoria-global”
Crear deslizador “muestra”
Corra modelo
• Activa swtich y ponga muestra 0.1
– Qué pasa
– Hay posibilidad de clusters?
Mundo plano no toroidal
• Qué pasa con la simulación en mundo plano?