agentes estimulo respuesta

10
Agentes Inteligentes Modelos y Arquitecturas de Agentes Juan Pavón Mestras Dep. de Ingeniería del Software e Inteligencia Artificial http://grasia.fdi.ucm.es UCM 2006-07 Modelos y arquitecturas de agentes 2 ¿Cómo se diseña un agente? Considerando el agente como entidad que interactúa con su entorno el diseño de un agente requiere estudiar: Cómo percibir el entorno Cómo representar el entorno Cómo definir los actuadores Utilizando la definición de Newell: Cómo representar los objetivos del agente Cómo describir la toma de decisiones del agente Cómo representar el conocimiento Y si consideramos un SMA, según Ferber, los mismos elementos de antes y además: Leyes que controlan el entorno Objetos ubicados Coordinación de los agentes Acciones permitidas UCM 2006-07 Modelos y arquitecturas de agentes 3 La tecnología se asienta El estudio de estos elementos ha derivado en Arquitecturas Desde la experimentación en la construcción de sistemas Lenguajes Desde el estudio teórico de los agentes, principalmente con lógicas modales El avance en la experimentación de diseño de sistemas ha progresado hacia soluciones más orientadas a la industria Plataformas de desarrollo de agentes Arquitecturas reusables Entornos de desarrollo Metodologías UCM 2006-07 Modelos y arquitecturas de agentes 4 Agentes reactivos Modelo de agentes puramente reactivos El proceso del agente es un ciclo percepción-acción (estímulo/respuesta) Reacciona a la evolución del entorno No hay una representación explícita del entorno, de los otros agentes, sus capacidades, etc. Las decisiones no tienen en cuenta ni el pasado (no hay historia) ni el futuro (no hay planificación) Agente Entorno percepción acción

Upload: miguel-albino-machicado

Post on 02-Jul-2015

85 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: agentes estimulo respuesta

Agentes Inteligentes

Modelos y Arquitecturas de Agentes

Juan Pavón Mestras

Dep. de Ingeniería del Software e Inteligencia Artificial

http://grasia.fdi.ucm.es

UCM 2006-07 Modelos y arquitecturas de agentes 2

¿Cómo se diseña un agente?

Considerando el agente como entidad que interactúa con suentorno el diseño de un agente requiere estudiar:

Cómo percibir el entornoCómo representar el entornoCómo definir los actuadores

Utilizando la definición de Newell:Cómo representar los objetivos del agenteCómo describir la toma de decisiones del agenteCómo representar el conocimiento

Y si consideramos un SMA, según Ferber, los mismos elementosde antes y además:

Leyes que controlan el entornoObjetos ubicadosCoordinación de los agentesAcciones permitidas

UCM 2006-07 Modelos y arquitecturas de agentes 3

La tecnología se asienta

El estudio de estos elementos ha derivado en Arquitecturas

• Desde la experimentación en la construcción de sistemas

Lenguajes• Desde el estudio teórico de los agentes, principalmente con

lógicas modales

El avance en la experimentación de diseño de sistemas ha progresado hacia soluciones más orientadas a la industria

Plataformas de desarrollo de agentesArquitecturas reusablesEntornos de desarrolloMetodologías

UCM 2006-07 Modelos y arquitecturas de agentes 4

Agentes reactivos

Modelo de agentes puramente reactivosEl proceso del agente es un ciclo percepción-acción (estímulo/respuesta)

• Reacciona a la evolución del entornoNo hay una representación explícita del entorno, de los otros agentes, sus capacidades, etc.Las decisiones no tienen en cuenta ni el pasado (no hay historia) ni el futuro (no hay planificación)

Agente

Entorno

percepción acción

Page 2: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 5

Agentes reactivos

Agentes reactivos que mantienen su estado internoDeciden la acción a realizar teniendo en cuenta su historia de interacciones con el entorno

• Secuencia de estados del entorno o secuencia de percepciones• Se guarda como estado interno del agente

Agente

Entorno

percepción acción

estadosiguiente

UCM 2006-07 Modelos y arquitecturas de agentes 6

Agentes reactivos

Ejemplo de ciclo de ejecución de un agente reactivo

Reglas: situación-acciónConjunto de percepciones

while (true) {estado = interpretar_entrada (percepcion);regla = correspondencia (estado, Reglas);ejecutar (regla, accion);

}

UCM 2006-07 Modelos y arquitecturas de agentes 7

Agentes reactivos (subsunción)

Arquitectura de subsunción[A. Brooks, A Robust Layered Control System for a Mobile Robot, 1986]

Un conjunto de módulos de comportamiento que realizan tareas

• No hay representación ni razonamiento simbólico• El comportamiento se puede implementar como un conjunto de

reglas situación -> acción

donde situación se toma directamente de la percepción (sin ningún tipo de transformación a representaciones simbólicas)

Jerarquía de subsunción• Se pueden ejecutar varios comportamientos simultáneamente• Para elegir entre ellos se usa la jerarquía de subsunción

• Los comportamientos están ordenados por capas• Los comportamientos de las capas más bajas (mayor

prioridad) inhiben a los de las capas superiores

UCM 2006-07 Modelos y arquitecturas de agentes 8

Agentes reactivos (subsunción)

Se pueden añadir y quitar comportamientos sin tener que modificar el código de los otros

Complejidad O(n)Siendo n el número de comportamientos

[Vidal 2000, http://www.multiagent.com/arch/]

Page 3: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 9

Agentes reactivos (subsunción)

Arquitectura de subsunción [Brooks 86]

Comportamiento 2

Comportamiento 0

Comportamiento 1sensores

actuadores

Las entradas a los módulos de comportamiento se pueden suprimir

Las salidas de los módulos de comportamiento se pueden inhibir

UCM 2006-07 Modelos y arquitecturas de agentes 10

Agentes reactivos (subsunción)

Nodos supresores e inhibidores

Comportamiento 0:Evitar contacto

Comportamiento 1:Pasearse

Nodo supresor

Nodo inhibidor

UCM 2006-07 Modelos y arquitecturas de agentes 11

Agentes reactivos (Robots distribuidos)

Ejemplo: robots distribuidos [Steels 89]

Problema• Un conjunto de robots tienen que recoger

minerales (cuya localización no se conoce de antemano) y llevarlas a una nave nodriza

• Los minerales se encuentran en cúmulos

Arquitectura de subsunción cooperativa• La cooperación no usa comunicación directa

La comunicación se realiza a través del entorno:

• Campo gradiente de la señal generada por la nave nodriza

• Partículas radioactivas que pueden recoger, echar y detectar los robots al pasar

UCM 2006-07 Modelos y arquitecturas de agentes 12

Agentes reactivos (Robots distribuidos)

Hay dos comportamientos que se ejecutan en paralelo:

Comportamientos de manejo de objetos1. Si se detecta un obstáculo =>cambiar de dirección.2. Si se llevan muestras y se está en la base

=> descargar las muestras.3. Si se llevan muestras y no se está en la base

=> dejar dos migas y moverse hacia mayor gradiente.4. Si se detecta una muestra => recogerla.5. Si se detectan migas

=> recoger una y moverse hacia menor gradiente.6. Si cierto => moverse de manera aleatoria.

Comportamientos de movimiento • organizados de acuerdo a una jerarquía de subsunción

Page 4: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 13

Agentes reactivos (subsunción)

Ejemplo de jerarquía de subsunciónSistema de control de un robot móvil

Evitar obstáculo

Camino atractivo

Movimiento de exploración

Movimiento de regreso

Movimiento aleatorio

sensores

actuadores

UCM 2006-07 Modelos y arquitecturas de agentes 14

Agentes reactivos (MANTA)

MANTA: Modeling an ANThill Activity [Drogoul 93]Simulación de sociedades de hormigas para estudiar la emergencia del reparto de trabajo en el seno de la sociedadCada hormiga tiene operaciones de percepción, selección y activación que manipulan un conjunto de tareasCada tarea se define por:

• Una secuencia de acciones primitivas directamente ejecutables por los actuadores del agente en su entorno

• Peso (importancia para el agente)• Umbral y nivel de activación

Selección por competición de tareas• A nivel de sistema esta regulación permite la emergencia

de especializaciones y de repartición de tareas entre agentes

UCM 2006-07 Modelos y arquitecturas de agentes 15

Agentes reactivos (MANTA)

UCM 2006-07 Modelos y arquitecturas de agentes 16

Clasificación de agentes reactivos [Demazeau 96]

Agentes organizados

Agentes reproductores

Agentes cooperativos

Acciones coordinadas

Estímulo/Respuesta

Auto-organización

Mecanismos de reproducción

Mecanismos de agrupación

Mecanismos de inhibición/activación

Arquitecturas de subsunción

Autómatas de estados finitos

Page 5: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 17

Agentes reactivos: conclusiones

Sistemas constituidos de numerosos agentes homogéneosSencillos, flexibles, tratables computacionalmente, robustos, tolerantes a fallos

La inteligencia emerge del SMAProblemas:

Los agentes necesitan conocer suficiente información sobre su entorno para actuar adecuadamenteLa visión del agente es a corto plazo ya que está basada únicamente en información localEs difícil el aprendizaje y la mejora de las capacidades de los agentes con el tiempoEs difícil desarrollar agentes con muchas capas de comportamiento

• La dinámica de las interacciones entre los comportamientos se hace cada vez más compleja

No hay metodología para crear este tipo de agentes: prueba y error

UCM 2006-07 Modelos y arquitecturas de agentes 18

Agentes deliberativos

Extienden arquitecturas cognitivas de la IAEl proceso del agente introduce una función deliberativa entre la percepción y la ejecución para elegir la acción correcta

Agente

Entorno

percepción acción

Estado mental

delibera

UCM 2006-07 Modelos y arquitecturas de agentes 19

Agentes deliberativos

Ejemplo de ciclo de ejecución de un agente deliberativo

EstadoMental s;ColaEventos eq;...s.inicializa();

while (true) {opciones = generar_opciones (eq, s);seleccionado = delibera (opciones, s);s.actualiza_estado(seleccionado);ejecutar (s);eq.mira_eventos();

}

UCM 2006-07 Modelos y arquitecturas de agentes 20

Agentes deliberativos

Requieren dos procesos:1. Decidir qué objetivos perseguir: deliberación2. Decidir cómo alcanzar dichos objetivos: razonamiento

basado en medios y fines

Se basan en el razonamiento práctico (decidiren cada momento la acción a realizar parafacilitar la consecución de los objetivos)Modelo BDI (Beliefs-Desires-Intentions)

Precusor: IRMA [Bratman 88] Arquitectura PRS (Procedural Reasoning System) [Georgeff y Lansky 87]Lógicas BDI [Rao y Georgeff]

Page 6: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 21

Arquitectura BDI

Las intenciones del agente juegan un importante papel en el razonamiento práctico:

Dirigen el razonamiento basado en medios y finesRestringen las deliberaciones futurasPersistenInfluencian las creencias sobre las que se basará el futurorazonamiento práctico

Cada cierto tiempo el agente deberá replantearse susintenciones, abandonado aquellas que considera que no va a alcanzar, aquellas que ya ha alcanzado y aquellascuya justificación ha desaparecido

UCM 2006-07 Modelos y arquitecturas de agentes 22

Arquitectura BDI

Dos extremos:El agente que no reconsidera suficientemente a menudo susintenciones (atrevido)

• Comportamiento dirigido por objetivosEl agente que continuamente reconsidera sus intencionesdedicando así un tiempo insuficiente a su consecución(precavido)

• Comportamiento dirigido por eventos (reactivo)

Lo difícil es encontrar el equilibrio entre ambos comportamientos [Kinny y Georgeff 91]

En entornos estáticos el comportamiento dirigido porobjetivos es más adecuado

• Los agentes no pierden tiempo reconsiderando sus objetivos y actúan para tratar de conseguir satisfacerlos

En entornos dinámicos es necesario tener cierta precaución• Los agentes pueden reconsiderar sus intenciones y aprovechar

nuevas oportunidades

UCM 2006-07 Modelos y arquitecturas de agentes 23

Arquitectura BDI

Componentes de un agente BDI:Conjunto de creencias actuales que tiene el agenteacerca de su entornoFunción de revisión de creencias (frc) que actualiza lascreencias en base a las percepcionesFunción de generación de opciones (deseos) a partir de sus creencias e intencionesConjunto de opciones actuales (acciones disponibles)Función filtro correspondiente al proceso de deliberación

• Determina las nuevas intenciones en función de suscreencias, deseos e intenciones

Conjunto de intenciones actualesFunción de selección de acciones (ejecuta)

• Determina la acción a ejecutar a partir de las intencionesactuales

UCM 2006-07 Modelos y arquitecturas de agentes 24

Arquitectura BDI

genera opciones

filtra

ejecuta

deseos

intenciones

acción

revisión de creencias

creencias

percepción

Page 7: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 25

Arquitectura BDI

[Vidal 2000, http://www.multiagent.com/arch/]

UCM 2006-07 Modelos y arquitecturas de agentes 26

Arquitectura BDI extendida (1)

En las arquitecturas BDI el estado interno del agente (habitualmente conocido como “estado mental”) estáformado por tres componentes: creencias, deseos e intenciones.La arquitectura BDI clásica ha evolucionado a lo que podríamos denominar arquitectura BDI extendida, en la cual el estado mental del agente integra cinco factores:

CreenciasDeseos ObjetivosIntencionesPlanes

UCM 2006-07 Modelos y arquitecturas de agentes 27

Arquitectura BDI extendida (2)

Creencias: conocimiento del agente sobre su entornoDeseos: se derivan de las creencias. Hechos que el agente quiere que se cumplan en estados futuros. Puede haber conflictos y contradicciones entre ellosObjetivos: subconjunto de los deseos a cuya consecución podría dedicarse el agente. Tienen que ser realistas y no puede haber conflictos entre ellosIntenciones: subconjunto de los objetivos. Son los que el agente persigue en el momento presentePlanes: combinan las intenciones del agente en unidades consistentes. Reflejan las acciones a desarrollar por el agente para conseguir sus intenciones. Habrá un plan global y un número suficiente de niveles de subplanes

UCM 2006-07 Modelos y arquitecturas de agentes 28

Arquitectura BDI extendida (3)

DeseosCREENCIAS

PLANES

Objetivos

Intenciones

Page 8: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 29

Una arquitectura para agentes de interfaz[Gomez 00]

Mailbox

EventManager

WorkingMemory

ObjectivesSpace

Facts Space WM

Knowledge Base

Inference Engine

DeclarativeKnowledge

Knowledge

Knowledge

<< Widget>>

Cognitive System

control

<<objective >><< E vent >>

visual

Resolution

Domain

ExternalEvents:

Application orUser

UCM 2006-07 Modelos y arquitecturas de agentes 30

Ciclo de vida de un objetivo

Pendiente Refinado

Resolviéndose

FalloSatisfecho

refinamiento

comienza ejecución de tarea

Evidencia de éxito Evidencia de fallo

UCM 2006-07 Modelos y arquitecturas de agentes 31

Descomposición de objetivos

Árboles Y/O [Rich y Knight 90]

Evaluarautónomamente

No molestaral usuario

No enviarinformación indeseada

Vender más

Incrementarbeneficios

Reducircostes

O

- Reglas de transmisión de éxito o de fallo

UCM 2006-07 Modelos y arquitecturas de agentes 32

Espacio de objetivos

A

B C

D E

Y

O

Resolución por éxito

A

B C

D E

Y

O

Resolución por fracaso

Page 9: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 33

Cambio de estados de objetivos

Rule 1 If There is an event indicating proximityof a deadline for a task and there existsAnalyze_situation in PENDING state thentell the objectives space to refineAnalyze_situation

Rule 2 If there exists Obtain_data in PENDINGstate then activate Obtain_data and solveObtain_data

Rule 3 If there exists data (reports and status)about a task and there existsAnalyze_situation in SOLVING state thensolve Analyze_situation

UCM 2006-07 Modelos y arquitecturas de agentes 34

Arquitectura BDI: Conclusiones

El proceso de generación de opciones de un agente BDI es realmente un proceso recursivo de generación de una jerarquía de planes

En cada paso se generan intenciones más específicas hasta llegar a acciones directamente ejecutables

El proceso de deliberación de un agente BDI debe ser ajustado en función de la variabilidad del entornoEn la práctica el problema está en encontrar implementaciones eficientes de esta arquitectura

UCM 2006-07 Modelos y arquitecturas de agentes 35

Agentes híbridos

Arquitecturas basadas en capasUnas capas o subsistemas implementan el comportamiento reactivo y otras el comportamiento deliberativo

• Capas horizontales: todas las capas están conectadas a la entrada y salida del agente

• Capas verticales: la entrada y la salida están conectadas a una única capa del agente

Inicialmente en robóticaAuRA [Arkin 90, Integrating behavioral, perceptual and worldknowledge in reactive navigation]

• Sistema reactivo para el control de bajo nivel del robot• Planificación para la toma de decisiones

Otros ejemplos: RAP [Firby 89, Adaptive execution in dynamic domains]Interrap [Muller et al. 95, Modelling reactive behaviour in vertically layered agent architectures]Touring Machines [Ferguson 92]

UCM 2006-07 Modelos y arquitecturas de agentes 36

Arquitectura de capas horizontales:TouringMachines

Arquitectura de 3 capas horizontales:Reactiva (respuesta inmediata a cambios del entorno, como reglassituación->acción, o entrada de sensor-> salida de actuador)Planificadora (comportamiento proactivo basado en esquemas de planes)Modeladora (modelo del mundo para anticipar conflictos y genera nuevos objetivos para la capa planificadora)

Embebidos en un subsistema de control basado en reglas que pueden inhibir entradas y salidas, y determina que capa tiene control sobre el agente

Capa modeladora

Capa planificadora

Capa reactiva

Subsistema de control

Subsistemapercepción Subsistema acción

entrada

salida

Page 10: agentes estimulo respuesta

UCM 2006-07 Modelos y arquitecturas de agentes 37

Arquitectura de capas verticales:InterRap

Arquitectura de 3 capas verticales con 2 pasos:Capa de comportamiento (reactivo): información del entornoCapa de planificación (pro-activo): planes y acciones del agenteCapa de cooperación (interacción social): planes y acciones de otros agentes del entorno

Más una base de conocimiento también organizada por capas

cooperación

planificación

comportamiento modelo del mundo

conocimiento planificación

conocimiento social

interfaz

Percepción acción

BC

activación

ejecución

UCM 2006-07 Modelos y arquitecturas de agentes 38

Arquitecturas híbridas: Conclusiones

Arquitecturas de carácter general Las más utilizadas

• La propia arquitectura de subsunción de Brooks es otro ejemplo de este tipo de arquitecturas

Utilizan una descomposición natural de la funcionalidad del agenteNo tienen la claridad conceptual y semántica de otras arquitecturasLa gestión de interacciones entre capas puede ser compleja

Capas horizontales:Ventaja: simplicidad conceptual

• Si necesitamos que un agente tenga n tipos de comportamientos, implementamos n capas diferentes

Inconveniente: el comportamiento global puede no ser coherente• Se suele añadir una función de mediación que decide qué capa tiene el

control en cada momento cuello de botella y complejidad de diseño del control de interacciones entre capas

Capas verticalesArquitecturas de uno o dos pasosVentaja: La complejidad de las interacciones entre capas se reduceInconveniente: Para tomar una decisión hay que pasar el control a cada una de las capas No tolerante a fallos

UCM 2006-07 Modelos y arquitecturas de agentes 39

Referencias

Bratman, M. E., Israel, D., and Pollack, M., Plans and Resource-bounded Practical Reasoning, Journal of Computational Intelligence, vol. 4, no. 4, pp. 349-355, 1988.Brenner, W., Zarnekow, R. Wittig, H. Intelligent Software Agents. Springer, 1998.Brooks, R.A., Intelligence without representation. Artificial Intelligence, 47, 1991.Carver, N. and Lesser, V. R.:The Evolution of Blackboard Control Architectures. Informe. Department of Computer Science, University Massachusetts. 1992Ferber, J. Multiagent systems : an introduction to distributed artificial intelligence, Addison-Wesley, 1999.Genesereth, M.R., Ketchpel, S.P. Software Agents. CACM, 37, 7, 1994Jennings, N.R., On agent-based software engineering. Artificial Intelligence, 117, 2000.Müller, J.P., The design of intelligent agents: a layered approach. Lecture Notes in Computer Science, Vol.1177, Springer-Verlag, 1996Shoham, Y. Agent-oriented programming. Artificial Intelligence, 60, 1993.Sycara K.P. Multiagent Systems. AI Magazine, Summer 1998.Weiss, G. Multiagent Systems. The MIT Press, 1999.