You are on page 1of 25

Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias

Inteligencia Articial II
Arquitecturas y Programas Agente
Dr. Alejandro Guerra-Hernandez
Departamento de Inteligencia Articial
Facultad de Fsica e Inteligencia Articial
Universidad Veracruzana
aguerra@uv.mx
http://www.uv.mx/aguerra
Maestra en Inteligencia Articial 2013
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Arquitectura abstracta (Wooldridge, 2002)

El ambiente puede caracterizarse por medio de un conjunto


nito de estados discretos posibles, denido como:
E = e, e

, . . .

La competencia de un agente, se dene como el conjunto


nito de acciones que este puede ejecutar:
Ac = ,

, . . .

Una corrida de un agente en un ambiente se dene como una


secuencia nita de estados y acciones intercalados:
r = e
0

0
e
1

1
e
2

2
e
3

3


u1
e
u
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Corridas

Sea R el conjunto de todas las posibles secuencias nitas


sobre E y Ac.

Denimos R
Ac
como el subconjunto de las corridas que
terminan en una accion

y R
E
como el subconjunto de las corridas que terminan en un
estado del ambiente.

Para modelar el efecto de una accion en el ambiente, usamos


una funcion de transicion (Fagin et al., 1995):
: R
Ac
(E)

Si (r ) = para todo r R
Ac
, se dice que el sistema ha
terminado su corrida.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Ambiente y Agentes

Un ambiente se dene como una tripleta Env = E, e


0
,
donde E es el conjunto de los posibles estados del ambiente,
e
0
E es un estado inicial y es la funcion de transicion de
estados.

Los agentes se modelan como funciones que mapean corridas


que terminan en un estado del ambiente, a acciones:
Ag : R
E
Ac
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Sistema Agente

Un sistema agente es una tupla conformada por un agente y


un ambiente.

El conjunto de posibles corridas del agente Ag en el ambiente


Env se denota como R(Ag, Env)

Una secuencia de la forma: (e


0
,
0
, e
1
,
1
, e
2
, . . . ) representa
una corrida del agente Ag en el ambiente Env si y solo si
Env = E, e
0
, ;
0
= Ag(e
0
); y para u > 0:
e
u
((e
0
,
0
, . . . ,
u1
))
y

u
= Ag((e
0
,
0
, . . . , e
u
))
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Programa de agente

Puesto que nuestra tarea es implementar programas de


agente, podemos usar la formalizacion propuesta para denir
un programa de agente que acepte percepciones de su
ambiente y regrese acciones sobre este.
Agente basado en mapeo ideal
1: function Agente-Mapeo-Ideal(p) p es una percepci on.
2: percepciones percepciones p
3: acci on busca(percepciones, mapeo) mapeo predenido.
4: return acci on
5: end function
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Programa de ambiente

Un programa basico de ambiente ilustra la relacion entre este


y los agentes situados en el.
Ambiente
1: procedure Ambiente(e, , ags, n) e Estado incial del ambiente.
2: repeat
3: for all ag ags do ags Conjunto de agentes.
4: p(ag) percibir (ag, e)
5: end for
6: for all ag ags do
7: acci on(ag) ag(p(ag))
8: end for
9: e (

agags
acci on(ag)) Funci on de transici on.
10: until n(e) n Predicado de n de corrida.
11: end procedure
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Percepci on y acci on

Sea Per un conjunto no vaco de percepciones, la funcion


percibir/2 se dene como el mapeo del conjunto de estados
del ambiente E al conjunto de percepciones posibles Per :
percibir : E Per

La funcion accion/1 se dene entonces como el mapeo entre


conjuntos de percepciones y el conjunto de acciones posibles
del agente:
acci on : Per Ac

Un agente puede denirse ahora como la tupla:


Ag = percibir , acci on
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Propiedades de la percepci on

Sean e E y e

E, tal que e ,= e

pero
percibir (e) = percibir (e

). Desde el punto de vista del agente,


e y e

son indistinguibles.

Dados dos estados del ambiente e, e

E,
percibir (e) = percibir (e

) sera denotado como e e

El ambiente es accesible para el agente, si y solo si [E[ = [ [


y entonces se dice que el agente es omnisciente.

Si [ [ = 1 entonces se dice que el agente no tiene capacidad


de percepcion, es decir, el ambiente es percibido por el agente
como si tuviera un estado unico.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Agentes reactivos

Los agentes reactivos, o reex, seleccionan sus acciones


basados en su percepcion actual del ambiente, ignorando el
resto de su historia perceptual.
Agente
percepcin accin
Ambiente
sensado
actuacin
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Agentes reactivos

Basados en reglas percepcion - accion.


Programa de agente reactivo
1: function Agente-Reactivo(e)
2: estado percibir (e)
3: regla selecci onAcci on(estado, reglas) reglas predenidas.
4: acci on acci onRegla(regla)
5: return acci on
6: end function
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Limitaciones de los agentes reactivos

Aunque hay otras maneras de implementar agentes reactivos


(arquitectura subsumida, redes de comportamiento, etc.),
todos comparten una limitacion formal: producen un
comportamiento racional, solo si la decision correcta puede
obtenerse a partir de la percepcion actual del agente.

Esto es, su comportamiento es correcto si, y solo si, el


ambiente es observable o efectivamente observable.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Estado interno

La forma mas eciente de enfrentar un ambiente inaccesible


es llevando un registro de lo percibido, de forma que el agente
tenga acceso mediante este registro, a lo que en cierto
momento ya no puede percibir.

Sea I el conjunto de estados internos posibles de un agente.


Redenimos la funcion accion para mapear estados internos a
acciones posibles:
acci on : I Ac

Una nueva funcion siguiente/2, mapea estados internos y


percepciones a estados internos. Se usa para actualizar el
estado interno del agente:
siguiente : I Per I
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Agentes con estado interno

Un agente con estado interno interactua con su ambiente


como se muestra.
Agente
percepcin accin
Ambiente
Estado
Siguiente
sensado
actuacin
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Programa de agente con estado

El programa de un agente con estado es muy parecido al de


un agente reactivo:
Programa de agente con estado
1: function Agente-Con-Estado(e) e E
2: p percibir (e)
3: estado siguiente(estado, p)
4: regla selecci onAcci on(estado, reglas) reglas predenidas.
5: acci on Acci onRegla(regla)
6: return acci on
7: end function
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Enfoque IA tradicional

El comportamiento racional puede obtenerse a partir de una


representacion simbolica del ambiente y el comportamiento
deseado.

El agente manipulara sintacticamente esta representacion para


actuar.

Llevada al extremo, esta aproximacion nos lleva a formular el


estado de un agente como un conjunto formulas logicas y la
seleccion de accion como demostracion de teoremas o
deduccion logica.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Agentes e inferencia

Sea L el conjunto de formulas bien formadas en la logica de


primer orden clasica.

El conjunto de bases de conocimiento en L se dene como


D = (L), es decir, el conjunto de conjuntos de fbf en L. Los
elementos de D se denotan ,
1
, . . .

El estado interno del agente es siempre un miembro de D. El


proceso de decision del agente especica mediante un
conjunto de reglas de inferencia .

Escribimos

si la fbf puede ser validada en .

Denimos la funcion siguiente/2 del agente como:


siguiente : D Per D
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Selecci on de accion como inferencia

La inferencia se usa para computar la selecci on de accion de


los agentes logicos:
Seleccion de accion para agente logico
1: function Selecci

on-Acci

on( : D, Ac) Ac Acciones.


2: for all a Ac do
3: if

ejecuta(a) then predenida.


4: return a
5: end if
6: end for
7: for all a Ac do
8: if

ejecuta(a) then
9: return a
10: end if
11: end for
12: return null
13: end function
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Metas

Las metas describen situaciones deseables para un agente, y


se denen como cuerpos de conocimiento.

Esta concepcion de las metas esta relacionada con el concepto


de espacio de estados de un problema compuesto por un
estado inicial del ambiente, e
0
E; por un conjunto de
operadores o acciones que el agente puede ejecutar para
cambiar de estado; y un espacio de estados deseables.

Implcita en la arquitectura del agente, esta su intencion de


ejecutar las acciones que el cree le garantizan satisfacer
cualquiera de sus metas. Esto se conoce en losofa como
silogismo practico.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Las metas de un agente

Especicacion basada en predicados:


: R 0, 1

Una corrida r R satisface la especicacion ssi (r ) = 1.

Un ambiente de tareas se dene entonces como el par


Env, .

Dado un ambiente de tareas, la siguiente expresion:


R

(Ag, Env) = r [r R(Ag, Env) (r )


denota el conjunto de todas las corridas del agente Ag en
el ambiente Env que satisfacen la tarea especicada
por .
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Metas y exito

Podemos expresar que un agente Ag tiene exito en el


ambiente de tareas Env, de dos maneras diferentes:

r R(Ag, Env) tenemos que (r ), lo que puede verse como


una especicacion pesimista de exito, puesto que el agente
tiene exito unicamente si todas sus corridas satisfacen ;

r R(Ag, Env) tal que (r ), lo cual es una version optimista


de la denicion de exito, puesto que especica que el agente
tiene exito si al menos una de sus corridas sasface .
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Utilidad

Una utilidad es un valor numerico que denota la bondad de un


estado del ambiente.

Implcitamente, un agente tiene la intencion de alcanzar


aquellos estados que maximizan su utilidad a largo termino.

La especicacion de una tarea en este enfoque corresponde


simplemente a una funcion utilidad u : E 1 la cual asocia
valores reales a cada estado del ambiente.

Por ejemplo, la utilidad para una corrida r de un agente ltro


de spam, puede denirse como:
u(r ) =
SpamFiltrado(r )
SpamRecibido(r )
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Agentes optimos

Si la funcion de utilidad u tiene alg un lmite superior, por ej.,


k k 1 tal que r R.u(r ) k, entonces es posible hablar
de agentes que maximizan la utilidad esperada.

Denamos P(r [Ag, Env), es evidente que:

r R(Ag,Env)
P(r [Ag, Env) = 1

Entonces el agente optimo Ag


opt
entre el conjunto de agentes
posibles AG en el ambiente Env esta denido como:
Ag
opt
= arg max
AgAG

r R(Ag,Env)
u(r )P(r [Ag, Env)
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Racionalidad acotada

Los agentes enfrentan limitaciones temporales y tienen


capacidades limitadas de deliberacion, por lo que propone el
estudio de una racionalidad acotada.

Stuart Russell et al., introducen el concepto de agente optimo


acotado, donde AG
m
representa el conjunto de agentes que
pueden ser implementados en una maquina m.

Esta conceptualizacion de agente racional nos dice las


propiedades del agente deseable Ag
opt
, pero no nos dice como
implementar tal agente.
Arquitectura Agentes Reactivos Agentes con estado Agentes logicos Agentes y metas Agentes y utilidad Referencias
Referencias
Fagin, R., Halpern, J. Y., Moses, Y., & Vardi, M. Y. (1995). Reasoning about
Knowledge. Cambridge, MA., USA: MIT Press.
Wooldridge, M. (2002). An Introduction to MultiAgent Systems. West Sussex,
England: John Wiley & Sons, LTD.

You might also like