Está en la página 1de 10

Cmo se disea un agente?

Agentes Inteligentes

Considerando el agente como entidad que interacta con su


entorno el diseo de un agente requiere estudiar:

Modelos y Arquitecturas de Agentes

Utilizando la definicin de Newell:

Juan Pavn Mestras

Dep. de Ingeniera del Software e Inteligencia Artificial

Cmo representar los objetivos del agente


Cmo describir la toma de decisiones del agente
Cmo representar el conocimiento

Y si consideramos un SMA, segn Ferber, los mismos elementos


de antes y adems:

http://grasia.fdi.ucm.es

Cmo percibir el entorno


Cmo representar el entorno
Cmo definir los actuadores

Leyes que controlan el entorno


Objetos ubicados
Coordinacin de los agentes
Acciones permitidas

UCM 2006-07

La tecnologa se asienta

Arquitecturas

Modelo de agentes puramente reactivos

El proceso del agente es un ciclo percepcin-accin


(estmulo/respuesta)

No hay una representacin explcita 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 planificacin)

Desde la experimentacin en la construccin de sistemas

Reacciona a la evolucin del entorno

Lenguajes
Desde el estudio terico de los agentes, principalmente con
lgicas modales

El avance en la experimentacin de diseo de sistemas ha


progresado hacia soluciones ms orientadas a la industria

Agentes reactivos

El estudio de estos elementos ha derivado en

Modelos y arquitecturas de agentes

Plataformas de desarrollo de agentes


Arquitecturas reusables
Entornos de desarrollo
Metodologas

percepcin

Agente

accin

Entorno
UCM 2006-07

Modelos y arquitecturas de agentes

UCM 2006-07

Modelos y arquitecturas de agentes

Agentes reactivos

Agentes reactivos

Agentes reactivos que mantienen su estado interno

Deciden la accin 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

percepcin

Ejemplo de ciclo de ejecucin de un agente


reactivo

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

accin

siguiente

Reglas: situacin-accin
Conjunto de percepciones

estado

Agente

Entorno
UCM 2006-07

Modelos y arquitecturas de agentes

Agentes reactivos (subsuncin)

UCM 2006-07

Modelos y arquitecturas de agentes

Agentes reactivos (subsuncin)

Arquitectura de subsuncin

[A. Brooks, A Robust Layered Control System for a Mobile Robot, 1986]

Un conjunto de mdulos de comportamiento que realizan


tareas
No hay representacin ni razonamiento simblico
El comportamiento se puede implementar como un conjunto de
reglas
situacin -> accin
donde situacin se toma directamente de la percepcin (sin
ningn tipo de transformacin a representaciones simblicas)

Jerarqua de subsuncin

Se pueden aadir y quitar


comportamientos sin tener
que modificar el cdigo de
los otros

Se pueden ejecutar varios comportamientos simultneamente


Para elegir entre ellos se usa la jerarqua de subsuncin
Los comportamientos estn ordenados por capas
Los comportamientos de las capas ms bajas (mayor
prioridad) inhiben a los de las capas superiores

Complejidad O(n)
Siendo n el
nmero de
comportamientos

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


UCM 2006-07

Modelos y arquitecturas de agentes

UCM 2006-07

Modelos y arquitecturas de agentes

Agentes reactivos (subsuncin)

Arquitectura de subsuncin

Agentes reactivos (subsuncin)

[Brooks 86]

Nodos supresores e inhibidores


Comportamiento 1:
Pasearse

Comportamiento 2
sensores

Comportamiento 1
Nodo supresor

actuadores
Comportamiento 0

Las entradas a los mdulos de


comportamiento se pueden suprimir

UCM 2006-07

Modelos y arquitecturas de agentes

Problema
Un conjunto de robots tienen que recoger
minerales (cuya localizacin no se conoce de
antemano) y llevarlas a una nave nodriza
Los minerales se encuentran en cmulos

UCM 2006-07

Modelos y arquitecturas de agentes

10

Agentes reactivos (Robots distribuidos)

Ejemplo: robots distribuidos [Steels 89]

Nodo inhibidor

Las salidas de los mdulos de


comportamiento se pueden inhibir

Agentes reactivos (Robots distribuidos)

Comportamiento 0:
Evitar contacto

Hay dos comportamientos que se ejecutan en


paralelo:

Comportamientos de manejo de objetos


1. Si se detecta un obstculo =>cambiar de direccin.
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.

Arquitectura de subsuncin cooperativa


La cooperacin no usa comunicacin directa
La comunicacin se realiza a travs del
entorno:
Campo gradiente de la seal generada
por la nave nodriza
Partculas radioactivas que pueden
recoger, echar y detectar los robots al
pasar

Comportamientos de movimiento
organizados de acuerdo a una jerarqua de subsuncin

UCM 2006-07

Modelos y arquitecturas de agentes

11

UCM 2006-07

Modelos y arquitecturas de agentes

12

Agentes reactivos (subsuncin)

Agentes reactivos (MANTA)

Ejemplo de jerarqua de subsuncin

Sistema de control de un robot mvil

MANTA: Modeling an ANThill Activity [Drogoul 93]

Evitar obstculo

Camino atractivo

sensores

Una secuencia de acciones primitivas directamente


ejecutables por los actuadores del agente en su entorno
Peso (importancia para el agente)
Umbral y nivel de activacin

Movimiento de exploracin

Movimiento de regreso

actuadores
Modelos y arquitecturas de agentes

13

Agentes reactivos (MANTA)

Seleccin por competicin de tareas


A nivel de sistema esta regulacin permite la emergencia
de especializaciones y de reparticin de tareas entre
agentes

Movimiento aleatorio

UCM 2006-07

Simulacin de sociedades de hormigas para estudiar la


emergencia del reparto de trabajo en el seno de la
sociedad
Cada hormiga tiene operaciones de percepcin,
seleccin y activacin que manipulan un conjunto de
tareas
Cada tarea se define por:

UCM 2006-07

Modelos y arquitecturas de agentes

Clasificacin de agentes reactivos

Agentes reproductores
Agentes cooperativos

Modelos y arquitecturas de agentes

15

[Demazeau 96]

Auto-organizacin

Agentes organizados

UCM 2006-07

14

Mecanismos de reproduccin

Mecanismos de agrupacin

Acciones coordinadas

Mecanismos de
inhibicin/activacin
Arquitecturas de subsuncin

Estmulo/Respuesta

Autmatas de estados finitos

UCM 2006-07

Modelos y arquitecturas de agentes

16

Agentes reactivos: conclusiones

Sistemas constituidos de numerosos agentes homogneos

Agentes deliberativos

Sencillos, flexibles, tratables computacionalmente, robustos,


tolerantes a fallos

La inteligencia emerge del SMA


Problemas:

Extienden arquitecturas cognitivas de la IA


El proceso del agente introduce una funcin deliberativa
entre la percepcin y la ejecucin para elegir la accin
correcta

Los agentes necesitan conocer suficiente informacin sobre


su entorno para actuar adecuadamente
La visin del agente es a corto plazo ya que est basada
nicamente en informacin local
Es difcil el aprendizaje y la mejora de las capacidades de los
agentes con el tiempo
Es difcil desarrollar agentes con muchas capas de
comportamiento

percepcin

Agente
Entorno

No hay metodologa para crear este tipo de agentes: prueba


y error

UCM 2006-07

Modelos y arquitecturas de agentes

17

Agentes deliberativos

UCM 2006-07

18

Requieren dos procesos:


1.

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

2.

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

19

Decidir qu objetivos perseguir: deliberacin


Decidir cmo alcanzar dichos objetivos: razonamiento
basado en medios y fines

Se basan en el razonamiento prctico (decidir


en cada momento la accin a realizar para
facilitar la consecucin de los objetivos)
Modelo BDI (Beliefs-Desires-Intentions)

Modelos y arquitecturas de agentes

Modelos y arquitecturas de agentes

Agentes deliberativos

Ejemplo de ciclo de ejecucin de un agente deliberativo

UCM 2006-07

accin

Estado mental

La dinmica de las interacciones entre los comportamientos se


hace cada vez ms compleja

delibera

UCM 2006-07

Precusor: IRMA [Bratman 88]


Arquitectura PRS (Procedural Reasoning System)
[Georgeff y Lansky 87]
Lgicas BDI [Rao y Georgeff]

Modelos y arquitecturas de agentes

20

Arquitectura BDI

Las intenciones del agente juegan un importante papel en


el razonamiento prctico:

Arquitectura BDI

Dirigen el razonamiento basado en medios y fines


Restringen las deliberaciones futuras
Persisten
Influencian las creencias sobre las que se basar el futuro
razonamiento prctico

Dos extremos:

El agente que no reconsidera suficientemente a menudo sus


intenciones (atrevido)

El agente que continuamente reconsidera sus intenciones


dedicando as un tiempo insuficiente a su consecucin
(precavido)

Comportamiento dirigido por objetivos

Comportamiento dirigido por eventos (reactivo)

Cada cierto tiempo el agente deber replantearse sus


intenciones, abandonado aquellas que considera que no
va a alcanzar, aquellas que ya ha alcanzado y aquellas
cuya justificacin ha desaparecido

Lo difcil es encontrar el equilibrio entre ambos


comportamientos [Kinny y Georgeff 91]

En entornos estticos el comportamiento dirigido por


objetivos es ms adecuado
Los agentes no pierden tiempo reconsiderando sus objetivos y
actan para tratar de conseguir satisfacerlos

En entornos dinmicos es necesario tener cierta precaucin


Los agentes pueden reconsiderar sus intenciones y aprovechar
nuevas oportunidades

UCM 2006-07

Modelos y arquitecturas de agentes

21

Arquitectura BDI

UCM 2006-07

percepcin

Conjunto de creencias actuales que tiene el agente


acerca de su entorno
Funcin de revisin de creencias (frc) que actualiza las
creencias en base a las percepciones
Funcin de generacin de opciones (deseos) a partir de
sus creencias e intenciones
Conjunto de opciones actuales (acciones disponibles)
Funcin filtro correspondiente al proceso de
deliberacin

revisin de creencias

creencias

genera opciones

deseos
filtra

Determina las nuevas intenciones en funcin de sus


creencias, deseos e intenciones

Conjunto de intenciones actuales


Funcin de seleccin de acciones (ejecuta)

intenciones

Determina la accin a ejecutar a partir de las intenciones


actuales
UCM 2006-07

22

Arquitectura BDI

Componentes de un agente BDI:

Modelos y arquitecturas de agentes

Modelos y arquitecturas de agentes

ejecuta

accin
23

UCM 2006-07

Modelos y arquitecturas de agentes

24

Arquitectura BDI

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 clsica ha evolucionado a lo que
podramos denominar arquitectura BDI extendida, en la
cual el estado mental del agente integra cinco factores:

Creencias
Deseos
Objetivos
Intenciones
Planes

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


UCM 2006-07

Modelos y arquitecturas de agentes

25

Arquitectura BDI extendida (2)

UCM 2006-07

Modelos y arquitecturas de agentes

26

Arquitectura BDI extendida (3)

Creencias: conocimiento del agente sobre su entorno


Deseos: se derivan de las creencias. Hechos que el agente
quiere que se cumplan en estados futuros. Puede haber
conflictos y contradicciones entre ellos
Objetivos: subconjunto de los deseos a cuya consecucin
podra dedicarse el agente. Tienen que ser realistas y no
puede haber conflictos entre ellos
Intenciones: subconjunto de los objetivos. Son los que el
agente persigue en el momento presente
Planes: 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 nmero suficiente de niveles de subplanes

UCM 2006-07

Modelos y arquitecturas de agentes

C
R
E
E
N
C
I
A
S

27

UCM 2006-07

Deseos
Objetivos
Intenciones

Modelos y arquitecturas de agentes

P
L
A
N
E
S

28

Una arquitectura para agentes de interfaz

Ciclo de vida de un objetivo

[Gomez 00]

Pendiente

Cognitive System
Knowledge Base
Declarative
Knowledge

Working
Memory

Facts Space

Domain
Knowledge

Refinado
comienza ejecucin de tarea

Objectives
Space

Resolution
Knowledge

refinamiento

WM

Resolvindose

Event
Manager

Evidencia de xito

Evidencia de fallo

Inference Engine
External
Events:
control

visual

<< E vent >>

Mailbox

Fallo

Satisfecho

Application or
User

<<objective >>
<< Widget>>

UCM 2006-07

Modelos y arquitecturas de agentes

29

Descomposicin de objetivos
rboles Y/O

UCM 2006-07

Modelos y arquitecturas de agentes

30

Espacio de objetivos

[Rich y Knight 90]

No molestar
al usuario

Incrementar
beneficios

Y
C

O
Evaluar
autnomamente

No enviar
informacin indeseada

Vender
ms

Reducir
costes

O
E

Resolucin por xito

Resolucin por fracaso

- Reglas de transmisin de xito o de fallo


UCM 2006-07

Modelos y arquitecturas de agentes

31

UCM 2006-07

Modelos y arquitecturas de agentes

32

Cambio de estados de objetivos

Arquitectura BDI: Conclusiones

Rule 1

If There is an event indicating proximity


of a deadline for a task and there exists
Analyze_situation in PENDING state then
tell the objectives space to refine
Analyze_situation

Rule 2

If there exists Obtain_data in PENDING


state then activate Obtain_data and solve
Obtain_data

Rule 3

If there exists data (reports and status)


about a task and there exists
Analyze_situation in SOLVING state then
solve Analyze_situation

UCM 2006-07

Modelos y arquitecturas de agentes

33

Arquitecturas basadas en capas

Unas capas o subsistemas implementan el comportamiento


reactivo y otras el comportamiento deliberativo

AuRA [Arkin 90, Integrating behavioral, perceptual and world


knowledge in reactive navigation]

UCM 2006-07

Subsistema
percepcin

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]
Modelos y arquitecturas de agentes

Reactiva (respuesta inmediata a cambios del entorno, como reglas


situacin->accin, 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)

entrada

Otros ejemplos:

34

Embebidos en un subsistema de control basado en reglas que pueden


inhibir entradas y salidas, y determina que capa tiene control sobre el
agente

Sistema reactivo para el control de bajo nivel del robot


Planificacin para la toma de decisiones

Modelos y arquitecturas de agentes

Arquitectura de 3 capas horizontales:

Inicialmente en robtica

El proceso de deliberacin de un agente BDI


debe ser ajustado en funcin de la variabilidad
del entorno
En la prctica el problema est en encontrar
implementaciones eficientes de esta
arquitectura

UCM 2006-07

Capas horizontales: todas las capas estn conectadas a la


entrada y salida del agente
Capas verticales: la entrada y la salida estn conectadas a una
nica capa del agente

En cada paso se generan intenciones ms especficas


hasta llegar a acciones directamente ejecutables

Arquitectura de capas horizontales:


TouringMachines

Agentes hbridos

El proceso de generacin de opciones de un


agente BDI es realmente un proceso recursivo
de generacin de una jerarqua de planes

Capa modeladora
Capa planificadora
Capa reactiva

Subsistema accin

salida

Subsistema de control
35

UCM 2006-07

Modelos y arquitecturas de agentes

36

Arquitectura de capas verticales:


InterRap

Arquitectura de 3 capas verticales con 2 pasos:

Arquitecturas hbridas: Conclusiones

Capa de comportamiento (reactivo): informacin del entorno


Capa de planificacin (pro-activo): planes y acciones del agente
Capa de cooperacin (interaccin social): planes y acciones de otros
agentes del entorno

Arquitecturas de carcter general

La propia arquitectura de subsuncin de Brooks es otro ejemplo de este


tipo de arquitecturas

Ms una base de conocimiento tambin organizada por capas

ejecucin

cooperacin

conocimiento social

planificacin

conocimiento
planificacin

comportamiento

BC

accin
37

Referencias

Capas verticales

interfaz

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. 1992
Ferber, J. Multiagent systems : an introduction to distributed artificial intelligence,
Addison-Wesley, 1999.
Genesereth, M.R., Ketchpel, S.P. Software Agents. CACM, 37, 7, 1994
Jennings, N.R., On agent-based software engineering. Artificial Intelligence, 117,
2000.
Mller, J.P., The design of intelligent agents: a layered approach. Lecture Notes in
Computer Science, Vol.1177, Springer-Verlag, 1996
Shoham, 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.

UCM 2006-07

Modelos y arquitecturas de agentes

Inconveniente: el comportamiento global puede no ser coherente


Se suele aadir una funcin de mediacin que decide qu capa tiene el
control en cada momento cuello de botella y complejidad de diseo del
control de interacciones entre capas

modelo del mundo

Modelos y arquitecturas de agentes

Ventaja: simplicidad conceptual


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

UCM 2006-07

Utilizan una descomposicin natural de la funcionalidad del agente


No tienen la claridad conceptual y semntica de otras arquitecturas
La gestin de interacciones entre capas puede ser compleja

Capas horizontales:

activacin

Percepcin

Las ms utilizadas

39

UCM 2006-07

Arquitecturas de uno o dos pasos


Ventaja: La complejidad de las interacciones entre capas se reduce
Inconveniente: Para tomar una decisin hay que pasar el control a
cada una de las capas No tolerante a fallos
Modelos y arquitecturas de agentes

38

También podría gustarte