modelos basados en agentes - modelización -...

33
Modelos basados en Agentes FI-UNER

Upload: trandieu

Post on 09-Oct-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Modelos basados

en Agentes

FI-UNER

Page 2: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Modelos Globales Modelos Locales

Page 3: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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: primera revista científica en CE (MIT Press)

1997: se lanza EvoNet (European EC Research

Network)

Page 6: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Computación Emergente

Técnicas computacionales no convencio-

nales 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 multiag.

Computación

Emergente

Computación

Simbólica

Page 7: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Fenómeno emergente

Fenómeno que surge (o emerge) de las

interacciones locales de sus elementos

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

Page 8: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Computación Generativa

Joshua Epstein

“la computación generativa

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 Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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)

Proto-

agente

Page 11: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Qué es un Agente? (Joshua Epstein)

“Es un sistema informático, situado en algún

ambiente, que es capaz de actuar de forma

autónoma y flexible con el fin de cumplir los

objetivos para los que fue diseñado”

Flexible:

“Responsivo”: capaz de percibir su entorno y

responder de manera oportuna a los cambios que

ocurren en él;

pro-activo: no debe limitarse a actuar en función

de su entorno, debe ser capaz de mostrar un

comportamiento oportunista, dirigido al objetivo;

social: debe ser capaz de interactuar con

semejantes y con el medio.

Page 12: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 13: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 14: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Modelización Basada en

Agentes (ABM) No son

Sistemas de Partículas

"Mobile agents“ o “Daemons” pequeñas

cadenas de software que corre en servidores proxy

(no pueden comportarse de forma autónoma)

object-oriented systems, distributed systems, and

expert systems

Regulación central humoral

Otras notaciones: IBM y ABS

directa X

Page 15: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Modelización basada en Agentes

• Agent models are a half-way house between the pure mathematical models as they are predominantly used in theoretical physics, and the world of laboratory experimentation.

• Agent models are formal systems, and thus rigorous, with all the assumptions and conditions going into the models being perfectly controllable. Experimentation with real systems often does not provide this luxury.

• On the other hand, in a strict sense, agent models can only give outcomes for a particular set of parameters, and make no statement about the parameter space as a whole. In this sense, they are inferior to mathematical models that can provide very general insights into the behavior of the system across the full parameter space. In practice, the lack of generality is often a problem, and it makes computer models a second-best choice—for when a mathematical analysis would be intractable.

Modificado de Introduction to Modeling for Biosciences. (Barnes – Chu, 2010)

Page 16: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 17: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 18: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 19: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Cuándo utilizar agentes

Si la aleatoriedad juega un papel importante

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

Si las interacciones entre los individuos son

complejas, no lineales, discontinuas o discretas

Cdo. la población es heterogénea, es decir

cuando cada individuo es (potencialm) diferente

Cuando los indiv. pueden variar en número

Page 20: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Cuándo utilizar agentes características avanzadas

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 (flocking,

crowding, fogging)

Page 21: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 22: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Principales aplicaciones

Infraestructura

• Mercados de energía

eléctrica

• Transporte en

vehículos

• Redes de

subterráneos

Informática

• Juegos

• ………

Page 23: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Principales aplicaciones

Economía

• Mercados financieros

• Redes de Comercios

Multitudes

• Movimiento de

Peatones

• Modelado de

Evacuación

Page 24: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Principales aplicaciones

Sociedad y Cultura

• Antiguas civilizaciones

• Desobediencia civil

• Determinantes

sociales de terrorismo

• Organización de

redes

Militar

• Mando y control

Page 25: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 26: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 27: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Pasos para generar el Agente

En un lenguajes de programac. orientados a objetos

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?

En lenguajes de programac. orientados a Agentes:

Contexto

Proyección

Agente: propiedades y comportamientos

Page 28: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 29: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Validación del ABM

Macroestructura

Fenotipo

Genotipo

Microespecificac. Genotipo

Fenotipo

Distancia (Fitness)

Codificación

Page 30: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Ejemplo 1: Cadena de suministro

Diagrama de Clases UML (unified modelling lenguaje)

Page 31: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

Ejemplo 2: Dinámica celular en

el sistema inmune humano

Page 32: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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 33: Modelos basados en Agentes - Modelización - FIUNERmodelizacion-fiuner.wdfiles.com/local--files/teorias/Agentes2016.pdf · Modelos basados en Agentes ... objetivos para los que fue

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.