Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos...
Transcript of Modelos basados en Agentesmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2015.pdfPasos...
Modelos basados
en Agentes
FI-UNER
Modelos Globales Modelos Locales
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
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
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)
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
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
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
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
* * *
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)
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
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"
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
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…
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
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)
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
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)
Principales aplicaciones
Interacciones sociales • Murmuyochismedifusiónpropaganda…
• Posteo en
FaceBookAmistadesNotificacionesViralización
Empresas y Organizaciones
• Cadenas de suministro
• Mercados de Consumo
• Operaciones de
Fabricación
• Seguros
Principales aplicaciones
Infraestructura
• Mercados de energía
eléctrica
• Transporte en
vehículos
• Redes de
subterráneos
Informática
• Juegos
• ………
Principales aplicaciones
Economía
• Mercados financieros
• Redes de Comercios
Multitudes
• Movimiento de
Peatones
• Modelado de
Evacuación
Principales aplicaciones
Sociedad y Cultura
• Antiguas civilizaciones
• Desobediencia civil
• Determinantes
sociales de terrorismo
• Organización de
redes
Militar
• Mando y control
Principales aplicaciones
Biología
• Comportamiento animal grupal
• Comportamiento celular
• Sub-procesos celulares
• Dinámica poblacional
• Redes ecológicas
• Dinámica de una
epidemia
Estocasticidad
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?
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
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
Validación del ABM
Macroestructura
Fenotipo
Genotipo
Microespecificac. Genotipo
Fenotipo
Distancia (Fitness)
Codificación
Ejemplo 1: Cadena de suministro
Diagrama de Clases UML (unified modelling lenguaje)
Ejemplo 2: Dinámica celular en
el sistema inmune humano
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.
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.