Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un...

23
1 Arquitectura BDI Arquitectura BDI B D I Beliefs Desires Intentions Índice Índice Introducción Introducción Visión intuitiva Visión intuitiva Teoría BDI Teoría BDI Arquitectura BDI Arquitectura BDI Un ejemplo de sistema: Un ejemplo de sistema: dMARS dMARS Un ejemplo de lenguaje: AGENTSPEAK(L) Un ejemplo de lenguaje: AGENTSPEAK(L) Conclusiones Finales Conclusiones Finales

Transcript of Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un...

Page 1: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

1

Arquitectura BDIArquitectura BDI

BBDDII

BeliefsDesiresIntentions

ÍndiceÍndice�� IntroducciónIntroducción�� Visión intuitivaVisión intuitiva�� Teoría BDITeoría BDI�� Arquitectura BDIArquitectura BDI�� Un ejemplo de sistema: Un ejemplo de sistema: dMARSdMARS�� Un ejemplo de lenguaje: AGENTSPEAK(L)Un ejemplo de lenguaje: AGENTSPEAK(L)�� Conclusiones FinalesConclusiones Finales

Page 2: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

2

Introducción (I)Introducción (I)�� En la arquitectura BDI el agente es visto En la arquitectura BDI el agente es visto

como un agente racional con un conjunto de como un agente racional con un conjunto de actitudes mentales.actitudes mentales.�� Creencias, Deseos e Intenciones.Creencias, Deseos e Intenciones.

�� El agente toma sus acciones en funciEl agente toma sus acciones en funcióón de n de sus estados.sus estados.

�� Esta aproximaciEsta aproximacióón es considerada como muy n es considerada como muy apropiada para agentes en entornos reales apropiada para agentes en entornos reales complejos y dincomplejos y dináámicos.micos.

Introducción (II)Introducción (II)�� Se han desarrollado trabajos para dotar de Se han desarrollado trabajos para dotar de

una semuna semáántica a los agentes BDI.ntica a los agentes BDI.�� Cohen & Cohen & LevesqueLevesque, L, Lóógica BDI (Rao & gica BDI (Rao & GeorgeffGeorgeff))

�� Se han implementado sistemas basados en Se han implementado sistemas basados en agentes BDI para problemas reales agentes BDI para problemas reales �� PRS, PRS, dMARSdMARS. .

�� Problema: existe un hueco entre el empleo Problema: existe un hueco entre el empleo de formalismos de una parte y el vocabulario de formalismos de una parte y el vocabulario informal de la otra.informal de la otra.

Page 3: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

3

Visión intuitiva (I)Visión intuitiva (I)�� Elementos que dan nombre al modelo Elementos que dan nombre al modelo

BDIBDI::�� Una Una creenciacreencia del agente serdel agente seríía informacia informacióón n

que tiene el agente sobre el entorno. que tiene el agente sobre el entorno. Componente informativo del agenteComponente informativo del agente

�� Un Un deseodeseo del agente es algo que el del agente es algo que el agente quiere conseguir y que por tanto agente quiere conseguir y que por tanto tiene preferencia. tiene preferencia.

Componente de motivaciComponente de motivacióón del agenten del agente

Visión intuitiva (II)Visión intuitiva (II)�� Los Los objetivosobjetivos serseríían un subconjunto de an un subconjunto de

deseos consistentes entre sdeseos consistentes entre síí que el agente que el agente debe perseguir. debe perseguir.

�� Las Las intencionesintenciones del agente son los del agente son los objetivos elegidos. Existe un compromiso objetivos elegidos. Existe un compromiso por parte del agente a conseguir sus por parte del agente a conseguir sus intenciones. intenciones.

Componente deliberativo del sistemaComponente deliberativo del sistema

Page 4: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

4

Teoría BDITeoría BDI� Una teoría de agente puede ser

considerada como una especificación formal de un agente.

� Agente � Entidad que aparece como el sujeto de creencias, deseos, etc.⇒ Stma. Intencional � Entidades cuya

conducta puede ser predicha por el método de la atribución de creencias, deseos e ingenio racional.

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (I)(I)

� Basado en la lógica CTL*. � Dicha lógica es una lógica proposicional

ramificada temporalmente.

� extendida a un entorno de mundos posibles.

� introducción de operadores modales para creencias, objetivos e intenciones.

Page 5: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

5

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (II)(II)

� Mundos Posibles� Representar el sistema mediante un árbol de

decisión, donde:� los nodos representan estados y � los arcos los eventos.

� Hay dos tipos de nodos:� chance nodes: cambios entorno no controlados� choice nodes, acciones del sistema.

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (III)(III)

� Mundos Posibles� El árbol se transforma a un modelo equivalente

de conjuntos de mundos posibles.algoritmo de transformación [Rao y Georgeff91]

� Este modelo consiste en un conjunto de mundos donde:� cada mundo es una estructura de árbol.� un índice de un mundo es una situación.

� Para cada situación asociamos un conjunto de mundos de creencias, de deseos y de intenciones.

Page 6: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

6

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (IV)(IV)

� Lógica BDI (Semántica) � Estructura temporal: tiempo ramificado en

el futuro y un pasado único.� Una situación es un punto de tiempo en un

mundo determinado.� Los eventos transforman un punto de

tiempo en otro: primitivos, no primitivos.

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (V)(V)

� Lógica BDI (Semántica) � Las ramas indican las opciones en un

momento dado.� Un evento ejecutado puede tener o no éxito.� Se distingue entre:

� state formulas (evaluadas en una situación)� path formulas (evaluadas en una ruta)

Page 7: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

7

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VI)(VI)

� Lógica BDI (Semántica) � Hay dos operadores modales: opcional e

inevitable, operan sobre "path formulas".� Una "path formula" es opcional si es verdadera

en al menos una ruta. � Una "path formula" es inevitable si es verdadera

en todas las rutas.

� Operadores temporales standard:◊ eventually always ∪∪∪∪ until ΟΟΟΟ next

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VII)(VII)

� Lógica BDI (ejemplo)ps

rs

rs

s

s s

rs

q

q

q - Es opcional que eventualmente se de p- Es opcional que siempre se de r- Es inevitable que eventualmente se de q- Es inevitable que siempre se de s

Page 8: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

8

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VII)(VII)

� Lógica BDI �� BELIEFS:BELIEFS: a cada situación se le asocia un conjunto

de "beliefs-accessible worlds" (mundos que el agente cree posibles).

�� GOALS: GOALS: cada situación dispone del conjunto de "goals-accessible worlds" para representar los objetivos del agente. Goals son deseos elegidos que sean consistentes.

�� INTENTIONS: INTENTIONS: representados por "intention-accessible worlds", son mundos que el agente se ha comprometido a intentar alcanzar.

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VIII)(VIII)

� Lógica BDI

� f -sacarte una muela-

� p -tener dolor-

pf

�p�f �p

�f

pf

d1

d2

b

pf

�p�f

pf

d1

d2

pf

�p�f

d1

�pf

�p�f

�pf

d1

d2

¬pf

�p�f

d1

Mundos de creenciasMundos de creencias Mundos de objetivosMundos de objetivos Mundos de intencionesMundos de intenciones

B1B1 G1G1 I1I1

G2G2 I2I2

Page 9: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

9

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VIII)(VIII)

� Lógica BDI

� f -sacarte una muela-

� p -tener dolor-

pf

�p�f �p

�f

pf

d1

d2

b

pf

�p�f

pf

d1

d2

pf

�p�f

d1

�pf

�p�f

�pf

d1

d2

¬pf

�p�f

d1

Mundos de creenciasMundos de creencias Mundos de objetivosMundos de objetivos Mundos de intencionesMundos de intenciones

B1B1 G1G1 I1I1

G2G2 I2I2

Teoría BDITeoría BDIFormalismo Rao & Formalismo Rao & Georgeff Georgeff (VIII)(VIII)

� Lógica BDI

� f -sacarte una muela-

� p -tener dolor-

pf

�p�f �p

�f

pf

d1

d2

b

pf

�p�f

pf

d1

d2

pf

�p�f

d1

�pf

�p�f

�pf

d1

d2

¬pf

�p�f

d1

Mundos de creenciasMundos de creencias Mundos de objetivosMundos de objetivos Mundos de intencionesMundos de intenciones

B1B1 G1G1 I1I1

G2G2 I2I2

Page 10: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

10

Arquitectura BDIArquitectura BDI

�� IntIntéérprete brprete báásicosico�� Este intEste intéérprete implementa las entidades definidas por los rprete implementa las entidades definidas por los

operadores modales como estructuras de datosoperadores modales como estructuras de datos ::

BDI-InterpreteInicializar-estado();Repetir

Opciones := generador-opcion(cola-eventos, S);Opciones-seleccionadas := deliberar(opciones, S);Modificar-intenciones(Opciones-seleccionadas, S);Ejecutar(S);Cola-eventos := Tomar-nuevos-eventos-externos();

Fin repetir

BDI-InterpreteInicializar-estado();Repetir

Opciones := generador-opcion(cola-eventos, S);Opciones-seleccionadas := deliberar(opciones, S);Modificar-intenciones(Opciones-seleccionadas, S);Ejecutar(S);Cola-eventos := Tomar-nuevos-eventos-externos();

Fin repetir

Arquitectura BDIArquitectura BDI�� Arquitectura abstractaArquitectura abstracta

�� Consideramos en este punto el caso donde se ha Consideramos en este punto el caso donde se ha refinado tanto el estado del sistema como el refinado tanto el estado del sistema como el intérpreteintérprete

�� Comprende 3 estructuras de datos globales, Comprende 3 estructuras de datos globales, �� una para cada actitud, más una cola para una para cada actitud, más una cola para

gestión de eventos. gestión de eventos. �� Se permiten operaciones de modificación y Se permiten operaciones de modificación y

consulta consulta �� No se da información acerca de cómo representar No se da información acerca de cómo representar

las estructuras necesariaslas estructuras necesarias

Page 11: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

11

Arquitectura BDIArquitectura BDI

�� Arquitectura abstractaArquitectura abstracta�� Un intUn intéérprete, refinado respecto al anterior, ejecuta el rprete, refinado respecto al anterior, ejecuta el

siguiente bucle:siguiente bucle:

BDI-InterpreterInicializar-estado();Repetir

Opciones := generador-opcion(cola-eventos);Opciones-seleccionadas := deliberar(opciones);Modificar-intenciones(Opciones-seleccionadas);Ejecutar();Tomar-nuevos-eventos-externos();

Borrar-actitudes-con-éxito();Borrar-actitudes-imposibles();

Fin repetir

Arquitectura BDIArquitectura BDI

�� Arquitectura abstractaArquitectura abstracta�� Esta arquitectura es una idealización que Esta arquitectura es una idealización que

captura la teoría vista. captura la teoría vista. No practicableNo practicable..�� Los procedimientos de probabilidad requeridos no son Los procedimientos de probabilidad requeridos no son

computables. computables. �� No se han dado indicaciones de cNo se han dado indicaciones de cóómo el generador de mo el generador de

opciones y el procedimiento de deliberaciopciones y el procedimiento de deliberacióón pueden n pueden ejecutarse los suficientemente rejecutarse los suficientemente ráápidos para satisfacer pidos para satisfacer demandas de tiempo real.demandas de tiempo real.

Page 12: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

12

Arquitectura BDIArquitectura BDI

�� Arquitectura abstractaArquitectura abstracta�� La idea es desarrollar una simplificación La idea es desarrollar una simplificación

(simplificación de PRS).(simplificación de PRS).�� Sólo creencias del estado actual.Sólo creencias del estado actual.�� Representan el conocimiento como planes. Representan el conocimiento como planes.

�� Evento disparo; Condiciones; CuerpoEvento disparo; Condiciones; Cuerpo

�� Una intención es representada usando una pila Una intención es representada usando una pila de planes relacionados jerárquicamente. de planes relacionados jerárquicamente.

�� Pueden coexistir múltiples pilas.Pueden coexistir múltiples pilas.

Arquitectura BDIArquitectura BDI

�� ImplementaciónImplementación� Existe una típica arquitectura adoptada por

las diferentes implementaciones de sistemas basados en BDI

Interprete

Creencias Librería deplanes

Objet ivos Intenciones

Entrada Sensores Salida Actuadores

Page 13: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

13

Arquitectura BDIArquitectura BDI

�� ImplementaciónImplementación� El bucle principal del intérprete es similar

al visto, � Los procedimientos que aparecen son más

rápidos para satisfacer las demandas de aplicaciones reales

Arquitectura BDIArquitectura BDI

�� ImplementaciónImplementación� generador de opciones:

�� itera sobre la biblioteca de planes y retorna aquellos que itera sobre la biblioteca de planes y retorna aquellos que cumplan la condicicumplan la condicióón de invocacin de invocacióón (hace n (hace matchingmatching con con el evento) y cuyas precondiciones son creel evento) y cuyas precondiciones son creíídas por el das por el agente.agente.

generador_de_opciones( eventos_de_disparo )opciones := { };para cada evento_disparo hacer

para cada plan hacersi matching( invocación(plan), evento_disparo) entonces

si probable(precondición(plan), B) entoncesopciones := opciones U {plan};

retornar(opciones)

Page 14: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

14

Arquitectura BDIArquitectura BDI

�� ImplementaciónImplementación� deliberación:

�� su tiempo de ejecucisu tiempo de ejecucióón depende de las restricciones del n depende de las restricciones del entorno, una seleccientorno, una seleccióón aleatoria podrn aleatoria podríía ser suficiente. En a ser suficiente. En otros casos la inclusiotros casos la inclusióón de n de metaplanesmetaplanes puede ser puede ser úútil.til.

deliberar(opciones)si longitud(opciones) <= 1 entonces retornar(opciones);sino opciones-metanivel

:= generador-opciones(b-add(conjunto-opciones(opciones)));opciones-seleccionadas := deliberate(opciones-metanivel);si nulo(opciones-seleccionadas) entonces

retornar(elección-aleatoria(opciones));sino retornar(opciones-seleccionadas)

Arquitectura BDIArquitectura BDI�� Implementación. Bucle intérprete:Implementación. Bucle intérprete:� Observa el mundo y el estado interno.� Genera nuevos posibles deseos, encontrando planes

que pueden ser disparados.� Selecciona de ese conjunto de planes posibles a

disparar a uno para su ejecución. (plan instanciado)� Dicho plan instanciado puede ser disparado por una

intención y se inserta en la pila de dicha intención o bien se crea una nueva intención.

� Se selecciona la intención a ejecutar del conjunto de intenciones.

Page 15: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

15

dMARS dMARS (I)(I)�� dMARS dMARS ((ddistributed istributed MMultiulti--AAgent gent RReasoning easoning SSystemystem))

�� Sucesor de PRS, basado en el modelo BDI.Sucesor de PRS, basado en el modelo BDI.�� Sistema basado en agentes que mSistema basado en agentes que máás ha sido empleado s ha sido empleado

desde el punto de vista prdesde el punto de vista prááctico.ctico.

�� Partimos de la especificaciPartimos de la especificacióón formal realizada n formal realizada entre otros por entre otros por Mark d'InvernoMark d'Inverno. .

�� Representa el modelo operacional del sistema Representa el modelo operacional del sistema mediante Planes.mediante Planes.

�� Monitoriza el mundo y su propio estado, Monitoriza el mundo y su propio estado, generando eventos almacenados en una cola.generando eventos almacenados en una cola.

dMARS dMARS (II)(II)�� Elementos que constituyen el sistema:Elementos que constituyen el sistema:�� CreenciasCreencias, , caractercaracteríísticas:sticas:

�� Son literales de la lSon literales de la lóógica de 1gica de 1ºº orden.orden.�� Una creencia se expresa como una fUna creencia se expresa como una fóórmula donde el rmula donde el

nnúúmero de variables es 0.mero de variables es 0.

��Objetivos,Objetivos, pueden ser de dos tipos:pueden ser de dos tipos:�� achieveachieve: representado por una creencia precedida del : representado por una creencia precedida del

operador operador !!�� queryquery: representado por una expresi: representado por una expresióón cuya verdad se n cuya verdad se

evalevalúúa frente al conjunto de creencias precedida por el a frente al conjunto de creencias precedida por el operador operador ??

Page 16: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

16

dMARS dMARS (III)(III)��Acciones,Acciones, quedan representadas por:quedan representadas por:

�� internasinternas: las cuales pueden a: las cuales pueden aññadir o borrar creencias.adir o borrar creencias.

�� externasexternas: son llamadas a procedimientos : son llamadas a procedimientos

�� formadas por un formadas por un ssíímbolo de accimbolo de accióón externan externa y y �� un un conjunto de tconjunto de téérminosrminos o paro paráámetros.metros.

dMARS dMARS (IV)(IV)�� PlanesPlanes, , cada plan en cada plan en dMARSdMARS consta de 6 consta de 6 elementos:elementos:

�� condicicondicióón de invocacin de invocacióónn: representa el evento de disparo : representa el evento de disparo del plan.del plan.

�� un un contexto opcionalcontexto opcional: donde incorporar las posibles : donde incorporar las posibles precondiciones a cumplirse previas a la ejecuciprecondiciones a cumplirse previas a la ejecucióón del plan.n del plan.

�� un un cuerpocuerpo: un grafo donde los arcos se etiquetan con : un grafo donde los arcos se etiquetan con objetivos o acciones y los estados en si carecen de objetivos o acciones y los estados en si carecen de importancia importancia

�� una una condicicondicióón de mantenimienton de mantenimiento: debe ser cierta para : debe ser cierta para poder continuar con el plan.poder continuar con el plan.

�� un un conjunto de acciones internasconjunto de acciones internas: a ejecutar si el plan falla.: a ejecutar si el plan falla.�� otro otro conjunto de acciones internasconjunto de acciones internas: a ejecutar si el plan : a ejecutar si el plan

tiene tiene ééxito.xito.

Page 17: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

17

dMARS dMARS (V)(V)�� PlanesPlanes, , distinguimos entre:distinguimos entre:

�� Plan relevantePlan relevante: es aquel plan para el que se : es aquel plan para el que se cumple su condicicumple su condicióón de disparo. n de disparo.

�� Plan aplicablePlan aplicable: es un plan relevante para el que : es un plan relevante para el que tambitambiéén se cumple su contexto, es decir su n se cumple su contexto, es decir su contexto es una consecuencia lcontexto es una consecuencia lóógica de las gica de las creencias del agente.creencias del agente.

dMARS dMARS (VI)(VI)�� IntencionesIntenciones

�� Las intenciones son secuencias ordenadas de instancias Las intenciones son secuencias ordenadas de instancias de plan.de plan.

planes que se han activadoplanes que se han activado�� Una intenciUna intencióón es como una pila de instancias de plan.n es como una pila de instancias de plan.

�� Se crea como respuesta a un evento externo, Se crea como respuesta a un evento externo, �� Inicialmente consta de una instancia de plan. Inicialmente consta de una instancia de plan. �� La llegada de eventos generados por la propia intenciLa llegada de eventos generados por la propia intencióón n

provocarprovocaráán nuevas instancias de plan a concatenar.n nuevas instancias de plan a concatenar.

Page 18: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

18

dMARS dMARS (VII)(VII)�� Eventos, Eventos, un evento consta de:un evento consta de:

�� un evento de disparo.un evento de disparo.�� una identificaciuna identificacióón de instancia de plan que cren de instancia de plan que creóó el evento el evento

(s(sóólo en el caso de ser un evento interno).lo en el caso de ser un evento interno).�� un conjunto de instancias de plan que pueden haber un conjunto de instancias de plan que pueden haber

fallado.fallado.�� un entorno.un entorno.

�� Podemos distinguir entre:Podemos distinguir entre:�� Evento externoEvento externo: su llegada provoca la generaci: su llegada provoca la generacióón de una n de una

instancia de plan para su resoluciinstancia de plan para su resolucióón.n.�� Evento internoEvento interno: ocurre cuando la rama a ejecutar de la : ocurre cuando la rama a ejecutar de la

intenciintencióón activa es un objetivo a alcanzar y que no puede n activa es un objetivo a alcanzar y que no puede ser alcanzado inmediatamente.ser alcanzado inmediatamente.

dMARS dMARS (VIII)(VIII)��Agente Agente dMARSdMARS,, consta de:consta de:

�� biblioteca de planes.biblioteca de planes.�� funcifuncióón de seleccin de seleccióón de intenciones.n de intenciones.�� funcifuncióón de seleccin de seleccióón de planes.n de planes.�� funcifuncióón de seleccin de seleccióón de eventos.n de eventos.�� funcifuncióón de seleccin de seleccióón de sustituciones.n de sustituciones.�� funcifuncióón para determinar la siguiente rama de un plan.n para determinar la siguiente rama de un plan.

��El estado de un agente es aquello que varEl estado de un agente es aquello que varíía con el tiempoa con el tiempo::�� Creencias del agente.Creencias del agente.�� Intenciones del agente.Intenciones del agente.�� Cola de eventos para ser procesados.Cola de eventos para ser procesados.

��Inicialmente el agente es dotado de unas creencias e Inicialmente el agente es dotado de unas creencias e intenciones y su percepciintenciones y su percepcióón le permite obtener eventos n le permite obtener eventos externos.externos.

Page 19: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

19

dMARS dMARS (IX)(IX)EjecuciEjecucióón Interpreten Interprete

�� El intEl intéérprete realiza un proceso crprete realiza un proceso cííclico:clico:��1.1. MonitorizaciMonitorizacióón del mundo y del estado interno actualizando n del mundo y del estado interno actualizando la cola de eventos.la cola de eventos.��2.2. GeneraciGeneracióón de nuevos deseos viendo que planes pueden n de nuevos deseos viendo que planes pueden ser disparados de acuerdo a los nuevos eventos.ser disparados de acuerdo a los nuevos eventos.��3.3. Seleccionar del conjunto de nuevos planes uno de ellos. Se Seleccionar del conjunto de nuevos planes uno de ellos. Se genera un plan genera un plan instanciadoinstanciado..��4.4. Colocar el nuevo plan Colocar el nuevo plan instanciadoinstanciado como una nueva intencicomo una nueva intencióón n o en la pila de una intencio en la pila de una intencióón anterior.n anterior.��5.5. Seleccionar una intenciSeleccionar una intencióón del conjunto de intenciones n del conjunto de intenciones activas y ejecutar un nuevo paso del plan situado en la cabeza activas y ejecutar un nuevo paso del plan situado en la cabeza de la pila de la intencide la pila de la intencióón. n.

�� Si el paso a realizar es un acciSi el paso a realizar es un accióón entonces ejecutarla. n entonces ejecutarla. �� Si el paso es un Si el paso es un subobjetivosubobjetivo, entonces se genera un evento , entonces se genera un evento

interno.interno.

dMARS dMARS (X) (X) Procesado de eventosProcesado de eventos

�� El procesado de eventos es como sigue:El procesado de eventos es como sigue:

1.1. Si hay eventos en la cola se selecciona el 1Si hay eventos en la cola se selecciona el 1ºº (mediante la (mediante la funcifuncióón de seleccin de seleccióón)n)

2.2. Se determina el conjunto de planes aplicables y se Se determina el conjunto de planes aplicables y se selecciona uno solo para crear la instancia de plan selecciona uno solo para crear la instancia de plan correspondiente. correspondiente.

3.3. Si el evento es externo se crearSi el evento es externo se crearáá una nueva intenciuna nueva intencióón. n. Por otra parte, si el evento es interno la instancia del plan Por otra parte, si el evento es interno la instancia del plan se coloca en la pila de la intencise coloca en la pila de la intencióón que genern que generóó el evento.el evento.

Page 20: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

20

dMARS dMARS (XI) (XI) EjecuciEjecucióón de intencionesn de intenciones

�� La ejecuciLa ejecucióón de una intencin de una intencióón es como sigue:n es como sigue:

1.1. El primer paso consiste en seleccionar la intenciEl primer paso consiste en seleccionar la intencióón a n a ejecutar (funciejecutar (funcióón de seleccin de seleccióón de intenciones).n de intenciones).

2.2. Dentro de la intenciDentro de la intencióón seleccionada se identifica la n seleccionada se identifica la instancia de plan a ejecutar, (cabeza de la pila de la instancia de plan a ejecutar, (cabeza de la pila de la intenciintencióón).n).

3.3. Se selecciona la rama de la instancia de plan Se selecciona la rama de la instancia de plan seleccionada. Se pasa a ejecutar dicha rama.seleccionada. Se pasa a ejecutar dicha rama.

dMARS dMARS (XII) (XII) EjecuciEjecucióón de intencionesn de intenciones

�� El movimiento entre estados de una instancia se El movimiento entre estados de una instancia se realiza segrealiza segúún el resultado de la ejecucin el resultado de la ejecucióón de la n de la rama seleccionada. rama seleccionada.

�� Si la rama tiene Si la rama tiene ééxito se pasa al siguiente estado xito se pasa al siguiente estado apuntado por la rama. apuntado por la rama.

�� Si falla habrSi falla habráá que borrar dicha rama e intentar otra si es que borrar dicha rama e intentar otra si es posible.posible.

Page 21: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

21

dMARS dMARS (XIII) (XIII) EjecuciEjecucióón de intencionesn de intenciones

�� La ejecuciLa ejecucióón de una rama puede llevar a 4 casos n de una rama puede llevar a 4 casos (funci(funcióón del contenido de dicha rama): n del contenido de dicha rama):

�� Es una acciEs una accióón n externaexterna, se ejecuta inmediatamente. , se ejecuta inmediatamente. �� Si la rama tiene Si la rama tiene ééxito se pasa al siguiente estado de la instancia. xito se pasa al siguiente estado de la instancia. �� Si la rama falla se borra dicha ramaSi la rama falla se borra dicha rama

�� Es una acciEs una accióón n internainterna, la base de datos debe ser modificada , la base de datos debe ser modificada de acuerdo a la accide acuerdo a la accióón. Una accin. Una accióón interna siempre es exitosa.n interna siempre es exitosa.

�� Es un objetivo tipo Es un objetivo tipo preguntapregunta, lo que se hace es ver si el , lo que se hace es ver si el entorno aplicado al objetivo puede ser unificado con el conjuntoentorno aplicado al objetivo puede ser unificado con el conjuntode creencias. de creencias.

�� Es un objetivo tipo Es un objetivo tipo alcanzaralcanzar, si el objetivo puede ser unificado , si el objetivo puede ser unificado con las creencias el resto del plan es unificado y la rama tienecon las creencias el resto del plan es unificado y la rama tieneééxito. xito.

�� Posteriormente, el ciclo global volverPosteriormente, el ciclo global volveríía a iniciarse.a a iniciarse.

dMARS dMARS (XIV) (XIV) EjecuciEjecucióón de intencionesn de intenciones

�� El El ééxitoxito de un plan se produce cuando una rama de un plan se produce cuando una rama que ha tenido que ha tenido ééxito en su ejecucixito en su ejecucióón llega a un estado n llega a un estado final.final.�� Si por el contrario se llega a un estado con mSi por el contrario se llega a un estado con máás s ramificaciones se pasarramificaciones se pasaríía a intentar ejecutar una a a intentar ejecutar una rama del nuevo estado.rama del nuevo estado.�� A partir de que el plan haya tenido A partir de que el plan haya tenido ééxito nos xito nos podemos encontrar con dos casos:podemos encontrar con dos casos:

�� Que queden mQue queden máás planes en la intencis planes en la intencióón del plan finalizado.n del plan finalizado.�� No quedan mNo quedan máás planes en la intencis planes en la intencióón del plan finalizado:n del plan finalizado:

�� entonces la intencientonces la intencióón ha tenido n ha tenido ééxito y se elimina.xito y se elimina.

Page 22: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

22

Conclusiones FinalesConclusiones Finales�� Numerosos artNumerosos artíículos han ido apareciendo culos han ido apareciendo

sobre agentes BDI. sobre agentes BDI. �� Podemos ver dos lPodemos ver dos lííneas:neas:

1.1. Para la Para la formalizaciformalizacióónn de estas nociones se ha de estas nociones se ha empleado diferentes lempleado diferentes lóógicas. gicas.

2.2. ImplementacionesImplementaciones de agentes BDI, se han de agentes BDI, se han realizado asumiendo simplificaciones. realizado asumiendo simplificaciones. �� Las actitudes mentales son estructuras de datos Las actitudes mentales son estructuras de datos �� El empleo de planes aumenta la velocidadEl empleo de planes aumenta la velocidad

�� Debido a las simplificaciones las Debido a las simplificaciones las implementaciones carecen de base implementaciones carecen de base ttééoricaorica. .

Conclusiones FinalesConclusiones Finales�� CrCrííticas sobre los agentes BDI:ticas sobre los agentes BDI:

�� El El porquporquéé de dichas tres actitudes (creencias, de dichas tres actitudes (creencias, deseos e intenciones) deseos e intenciones) �� compromisos, compromisos, capacidades, obligaciones, eleccicapacidades, obligaciones, eleccióón.n.

�� La La utilidadutilidad de las lde las lóógicas BDI gicas BDI multimulti--modal se ha modal se ha puesto en entredicho, puesto en entredicho, �� poca relevancia desde poca relevancia desde el punto de vista prel punto de vista prááctico.ctico.

Page 23: Arquitectura BDI - upv.es · 2 Introducción (I) En la arquitectura BDI el agente es visto como un agente racional con un conjunto de actitudes mentales. Creencias, Deseos e Intenciones.

23

ReferenciasReferencias�� [Bratman87] [Bratman87] BratmanBratman, M. E., Israel, D. J., Pollack, M. E.: Toward an architecture f, M. E., Israel, D. J., Pollack, M. E.: Toward an architecture for or

resourceresource--bounded agents. bounded agents. Technical report CSLITechnical report CSLI--8787--104104. . CenterCenter for the Study of for the Study of Language and Language and InformationsInformations, SRI and Stanford University, 1987., SRI and Stanford University, 1987.

�� [[RaoRao and Georgeff95] and Georgeff95] GeorgeffGeorgeff, M., , M., RaoRao A. BDI Agents: From Theory to Practice. En A. BDI Agents: From Theory to Practice. En Proceedings of the First International Conference on MultiProceedings of the First International Conference on Multi--Agents Systems (ICMASAgents Systems (ICMAS--95), 95), San Francisco, San Mateo, USA, 1995.San Francisco, San Mateo, USA, 1995.

�� [[RaoRao and Georgeff91] and Georgeff91] GeorgeffGeorgeff, M., , M., RaoRao A. A. ModelingModeling Rational Agents within a BDIRational Agents within a BDI--Architecture. En Proceedings of the Second International ConfereArchitecture. En Proceedings of the Second International Conference on Principles of nce on Principles of Knowledge Representation and Reasoning, Morgan Knowledge Representation and Reasoning, Morgan KaufmannKaufmann, San Mateo, CA, 1991., San Mateo, CA, 1991.

�� [M[Müüller96] ller96] MMüüllerller, J. The Design of Intelligent Agents: A Layered Approach. LNAI , J. The Design of Intelligent Agents: A Layered Approach. LNAI Vol. Vol. 1177, Springer 1177, Springer VerlagVerlag, 1996, 1996

�� [Emerson90] Emerson, E. Temporal and Modal Logic. En J. [Emerson90] Emerson, E. Temporal and Modal Logic. En J. Vab LeeuwenVab Leeuwen, editor, , editor, HanbookHanbook of Theoretical Computer Science, volume B. of Theoretical Computer Science, volume B. ElsevierElsevier Science, 1990.Science, 1990.

�� [Wooldridge95] [Wooldridge95] WooldridgeWooldridge, M.; Jennings, N. R.; , M.; Jennings, N. R.; ““Intelligent Agents: Theory and PracticeIntelligent Agents: Theory and Practice””, , The Knowledge Engineering Review, vol. 10 (2) pp. 115The Knowledge Engineering Review, vol. 10 (2) pp. 115--152, 1995.152, 1995.

�� [d'Inverno97] [d'Inverno97] d'Invernod'Inverno, M. , M. KinnyKinny, D. Luck, M. , D. Luck, M. WooldridgeWooldridge, M. A Formal Specification of , M. A Formal Specification of dMARSdMARS. Fourth International Workshop on Agent Theories, Architectures. Fourth International Workshop on Agent Theories, Architectures, and , and Languages, ATAL'97, 1997Languages, ATAL'97, 1997

�� [Dennet87] [Dennet87] DennetDennet, D.C. The Intentional Stance. The MIT Press, Cambridge, MA, 198, D.C. The Intentional Stance. The MIT Press, Cambridge, MA, 1987.7.