modelos basados en agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/agentes2015.pdfpasos...

31
Modelos basados en Agentes FI-UNER

Upload: others

Post on 27-Jun-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Modelos basados

en Agentes

FI-UNER

Page 2: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Modelos Globales Modelos Locales

Page 3: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Historia

Máquina de Turing:

Cuánto tiempo? - Cuántos recursos?

(60’ Hartmanis y Stearns)

Análisis de Algoritmos o Algorítmica:

determina la cantidad de recursos requeridos por

un algoritmo en particular para resolver un

problema

Teoría de la Complejidad Computacional: analiza todos los posibles algoritmos que

pudieran ser usados para resolver el mismo

problema

Page 4: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Sistemas Complejos Los 70’

Simon, H. 1973. The Organization of Complex

Systems. In Hierarchy Theory

Smith, J.M. 1974. The theory of games and the

evolution of animal conflicts.

May, R.M. 1976. Simple Mathematical Models with

Very Complicated Dynamics.

Holland, J.H., and J.S. Reitman. 1977. Cognitive

Systems Based on Adaptive Algorithms.

Holland: Algoritmos Genéticos

Rechenberg y Schwefel: Estrategias Evolutivas

Fogel: Programación Evolutiva

Page 5: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Programación Evolutiva

… “una población de máquinas de

estados finitos es evolucionada

mediante trasformaciones unitarias.”

(L. Fogel, 1962, 1966; D. Fogel, 1992)

Otros antecedentes 1985: primera conferencia internacional (ICGA)

1990: primera conferencia en Europa (PPSN)

1993: primer journal científico en CE (MIT Press)

1997: se lanza EvoNet (European EC Research

Network)

Page 6: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Computación Emergente

Técnicas computacionales no convencionales

para la resolución de problemas que debido a la

complejidad que presentan no pueden ser

abordados utilizando métodos tradicionales

autómatas celulares

redes neuronales

algorítmos genét.

vida artificial

caos

sistemas

multiagentes

Computación

Emergente

Computación

Simbólica

Page 7: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Fenómeno emergente

Fenómeno que surge (o se genera) de las

interacciones locales de sus elementos

Aún sin correr el experimento se podían teorizar los resultados

Page 8: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Computación Generativa

Joshua Epstein

“la computación emergente

permite, en algunos casos, a

partir de un fenómeno solamente

deducir el comportamiento de los

elementos que lo generaron pero

no conseguiríamos ir en el sentido

inverso.”

Fenómeno Deducción

Inducción

Comportamiento

Individual X

Page 9: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Motivación: del CA al ABM

Necesidad de traslación de cada individuo

Necesidad de poder variar la cantidad de

células

Necesidad de trabajar con menos

formalismos

Poder adaptar las reglas y las estructuras

Modelo de Boids

* * *

Page 10: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Qué es un Agente?

algo identificable,

una individualidad discreta

poseen un conjunto de características y

normas que rigen su comportamiento.

entes autónomos: deben tener capacidad de

toma de decisiones.

Discreto tiene un límite

algo es parte de el o no (características compartidas)

Page 11: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Cualquier tipo de componente

independiente (software, modelos,

personas, robots, etc)

Su comportamiento puede variar:

• desde primitivas reglas de decisiones

reactivas

• hasta la compleja inteligencia artificial

adaptable (Bonabeau 2001)

Qué es un agente?Definición

actual

Page 12: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Qué es un Agente?

Definición actual La etiqueta de “Agente” está reservada para

los componentes que pueden en cierto

sentido, aprender de su entorno y cambiar

su comportamiento en respuesta

Normas de base

Reglas de alto nivel:

"reglas para

cambiar las reglas"

Page 13: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Modelización Basada en

Agentes (ABM)

No son

Sistemas de Partículas

"Mobile agents“ pequeñas cadenas de software

que corre en servidores proxy (no pueden

comportarse de forma autónoma)

Regulación central humoral

Otras notaciones:

ABS (agent-based systems),

IBM (individual-based modeling)

directa X

Page 14: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Autómatas y Agentes

Autómatas:

AEF=f(x,y,E,UE,βE)

Red: fija en espacio: R=g(T,C)

Formalismos matemáticos

Agentes:

Coincide en muchos de sus aspectos con la

definición de objetos en los lenguajes de

programación orientados a objetos o basadas

en objetos: clases, métodos, atributos,

eventos, parámetros…

Page 15: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Características

1. Heterogeneidad

2. Autonomía

3. Poseen un ámbito explícito

4. Existe racionalidad limitada:

Limitada información

Limitada capac. de cálculo

5. Interactúan localmente

Su dinámica depende de su

estado interior

La sumación del comportamiento

individual genera un

comportamiento global complejo

Page 16: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Características actuales

Es autónomo y autodirigido, en tanto

que puede funcionar

independientemente en su ambiente y

en sus tratos con otros agentes (al menos sobre

un rango limitado de situaciones que son de interés)

Es flexible, dado que posee la capacidad

de aprender y adaptar sus

comportamientos basándose en la

experiencia (recursos y memoria)

Page 17: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Cuándo utilizar agentes

Cuando es importante que los individuos tengan

un componente espacial en sus

comportamientos e interacciones:

el espacio es crucial

las posiciones de los agentes no son fijas

las interacciones entre agentes son complejas,

no lineales, discontinuas o discretas

la población es heterogénea, es decir cuando

cada individuo es (potencialmente) diferente

pueden variar en número

Page 18: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Cuándo utilizar agentes

Cuando se necesite que los individuos

Cambien sus comportamientos:

Se adapten

Aprendan

Se involucren en comportamientos

dinámicos estratégicos

Tengan relaciones dinámicas con otros

agentes y las relaciones entre agentes se

forman y se disuelven

Formen autorganizaciones (focking, crowding,

fogging)

Page 19: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Principales aplicaciones

Interacciones sociales • Murmuyochismedifusiónpropaganda…

• Posteo en

FaceBookAmistadesNotificacionesViralización

Empresas y Organizaciones

• Cadenas de suministro

• Mercados de Consumo

• Operaciones de

Fabricación

• Seguros

Page 20: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Principales aplicaciones

Infraestructura

• Mercados de energía

eléctrica

• Transporte en

vehículos

• Redes de

subterráneos

Informática

• Juegos

• ………

Page 21: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Principales aplicaciones

Economía

• Mercados financieros

• Redes de Comercios

Multitudes

• Movimiento de

Peatones

• Modelado de

Evacuación

Page 22: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Principales aplicaciones

Sociedad y Cultura

• Antiguas civilizaciones

• Desobediencia civil

• Determinantes

sociales de terrorismo

• Organización de

redes

Militar

• Mando y control

Page 23: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Principales aplicaciones

Biología

• Comportamiento animal grupal

• Comportamiento celular

• Sub-procesos celulares

• Dinámica poblacional

• Redes ecológicas

• Dinámica de una

epidemia

Estocasticidad

Page 24: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Pasos para generar el Agente

Identificar las variables endógenas

Definir el entorno (variables exógenas?)

Definir los métodos del Agente (cómo son

actualizados los atributos)

Definir interacciones (entre quienes y cómo)

Agente-Agente

Entorno-Agente

Definir los objetos

(clases/subclases)

El entorno otro objeto?

Page 25: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Pasos para generar un ABM 1. identificar los agentes y su entorno

2. proponer una teoría del comportamiento de los

distintos tipos de agente,

3. obtener los datos necesarios relacionados con

el agente,

4. identificar las relaciones agente/agente y

agente/entorno

5. proponer y validar los modelos de

comportamiento de los agentes,

además del modelo en su conjunto

6. correr/depurar

7. analizar la salida: vincular las conductas

microescala de los agentes a los

comportamientos macroscópicos del sistema

Micro-

especificación

Macro-

estructura

Macro-

estructura

Page 26: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Validación del ABM

Microespecificación

• Agentes

• Entorno

Simulación/depuración:

• Lenguaje de programación

• Manejo de cómputo paralelo

Macroestructura

• Comportamiento conocido

• Comportamiento esperado

Page 27: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Validación del ABM

Macroestructura

Fenotipo

Genotipo

Microespecificac. Genotipo

Fenotipo

Distancia (Fitness)

Codificación

Page 28: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Ejemplo 1: Cadena de suministro

Diagrama de Clases UML (unified modelling lenguaje)

Page 29: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Ejemplo 2: Dinámica celular en

el sistema inmune humano

Page 30: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Tips de implementación

1. Inicializar matriz de autómatas/agentes

2. Se deben recorrer de a uno todos los

autómatas/agentes

3. Se debe preguntar para cada autómata/agente en qué

estado está conjunto de umbrales y dinámicas

4. En función de la matriz actual se genera una matriz

futura (la del próximo instante):

Para autómatas sólo la matriz de células

Para agentes se debe calcular la matriz de agentes y la matriz

de posiciones y otros atributos para el instante siguiente

5. Recorridos todos los autómatas/agentes se iguala la

matriz actual a la matriz futura

6. Volver a 2.

Page 31: Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos para generar un ABM 1. identificar los agentes y su entorno 2. proponer una teoría

Bibliografía “Modeling Biological Systems”, J.W. Haefner, Springer, NY,

2005

“Tutorial on agent-based modeling and simulation part 2: how to

model with agents”, Charles M. Macal, Michael J. North. IEEE

2006

“Combining experiments with multi-cell agent-based modeling to

study biological tissue patterning”, Bryan C. Thorne, Alexander

M. Bailey, Shayn M. Peirce, Oxford University Press, 2007.

"Foundations of Mathematical Biology", Rosen, Vol I, II.

"Computer Modelling of Complex Biological Systems", S. Sitharama

Iyengar, CRC Press.

“Agent-based modeling: Methods and techniques for simulating

human systems”. Eric Bonabeau. PNAS 14/05/2002, vol. 99, supl. 3.

pp. 7280–7287.