You are on page 1of 39

1

Agentes
Inteligencia Artificial - -- - 2014
2
Un agente es un sistema que est situado en algun ambiente, y que
es capaz de realizar acciones autnomas en ese ambiente, para
cumplir sus objetivos de diseo. Para que un agente sea
inteligente de ser proactivo, reactivo y tener habilidad social.
Wooldridge & Jennings
Qu es un ugente?
2
3
Un agente autnomo es un sistema computacional que
habita un ambiente, percibe y acta autnomamente
en ese ambiente, y de este modo realiza un conjunto de
tareas para las cuales fue diseado
Pattie Maes
Qu es un ugente?
4
Qu es un ugente?
Un agente es todo aquello que puede considerarse
que percibe su ambiente mediante sensores y que responde o acta
en tal ambiente por medio de efectores
Russell & Norvig

5
Qu es un Agente?
percibe?
acta sobre el ambiente?
Es autnomo?
Tiene habilidad social?
Autonoma: Capacidad que tiene un agente de aprender de su
experiencia y modificar su comportamiento en tiempo de ejecucin
6
CuI es Iu diferenciu entre
Agente y progrumu?
!
7
CuI es Iu diferenciu entre
Agente y progrumu?
8
CuI es Iu diferenciu entre
Agente y obgeto?

9
Objeto decirHolaAlaGente()
Decir Hola a la gente
Hola Gente!
Un agente controla sus estados y
comportamiento y es
autnomo
Una clase controla
sus estados
CuI es Iu diferenciu entre
Agente y obgeto?
10
Percibir: E_o percepcion
Acciones A~{oI, oZ, ,, on}
Medido de performonce U:E
Agente RucionuI
Hocer Io correcfo
Acercorse o sus objefivos de diseo
Agente =
Hola!

11
Cual es la medida de
performance?
como describir
el xito?
Cuando es mas
exitoso?
Agente RucionuI
U:E
12
Agente RucionuI

13
Agente RucionuI
A
Percepcin: posicion, esfodo-hobifocion Por ej. [A, sucio]
Acciones: irI;q, irDer, Iimpior, opogor
Funcin Agente:
Aspirudoru(pos, esfodo) devoIver occion
Si esfodo ~ sucio entonces devoIver Iimpior
sino si pos ~ A devoIver irDer
sino si pos ~ 8 devoIver irI;q.
Cmo definimos
U: E ??
14
Agente RucionuI
A
Un Agenfe PocionoI eIige Io occion que moximice Io medido de performonce dodo
Io secuencio de percepciones hosfo eI momenfo.
Medido de performonce (U: E ):
I pfo por hobifocion ospirodo en eI fiempo T7
I pfo por hobifocion ospirodo en codo efopo T menos I por movimienfo7
PenoIi;or si hoy mos de I hobifociones sucios7

15
Agente RucionuI
A
PocionoIidod r omniscienfe
- percepciones pueden no proveer fodo Io informocion necesorio
PocionoIidod r percepcion exfrosensorioI
- Io occion puede no ser Io que se espero
PocionoIidod r exifol
PocionoIidod expIorocion, oprendi;oje, oufonomo.
16
RELACIN ENTRE
SECUENCIA DE PERCEPCIN Y ACCIONES
Si {p1 pZ ,, pn} megorAccin{A}
Lu cIusificucin como megorAccin ser determinudu
por Ios obgetivos deI ugente,
Obgetivo: monfener Io hobifocion o Z0"C
Si T-hobifocion < Z0"C encender
Agente RucionuI
^
17
Agente y percepciones
1
2
3
4
1 2 3 4
Percibir([99,2,0,99])
ok ok
Percibir([99,0,1,0])
ok
Percibir([99,0,1,0])
2 tipos de informacin:
Cmo evoluciona el entorno independientemente del agente?
Cmo se modifica el ambiente por las acciones del agente?
Percepcin: [izq, der, arriba, abajo] Donde: 99=pared; 0= vaca; 1= comida; 2= enemigo
urribu urribu
18
Sensor de nivel de
Agua en el tanque
Percepcin(5 volt)
Interpretar percepcin
interprete
BC
CantidadAguaDelTanque=15 lt
Lu percepcin que eI ugente recibe
debe ser interpretudu y trunsformudu
en conocimiento puru eI ugente
Agente y percepciones
10
19
Diseur un Agente
{PEAS=Performunce; Environment; Actuutors; Sensors}
Medidu de Performunce = ?
Ambiente = ?
Acciones = ?
Sensores = ?
20
Diseur un Agente
{PEAS=Performunce; Environment; Actuutors; Sensors}
Medidu de Performunce = seguridud; destino; combustibIe; IeguI ?
Ambiente = cuIIes de Stu fe; uutopistu; cIimu; peutones; trfico?
Acciones = uceIerur; frenur; girur; hubIur; detenerse?
Sensores = video; SPS; veIocmetro; sensor combustibIe; , ?
11
21
Diseur un Agente
{PEAS=Performunce; Environment; Actuutors; Sensors}
Medidu de Performunce = seguridud; destino; combustibIe; IeguI ?
Ambiente = cuIIes de Stu fe; uutopistu; cIimu; peutones; trfico?
Acciones = uceIerur; frenur; girur; hubIur; detenerse?
Sensores = video; SPS; veIocmetro; sensor combustibIe; , ?
Progromo deI ogenfe: ImpIemenfor f :P^ A
Autonomu~ osocior o Ios occiones uno medido de performonce
agente = arquitectura + programa
DecirIe que hocer sin decir cmo
22
Ambiente: representa la situacin problemtica que el agente
debe resolver.
El ambiente se analiza desde el punto de vista del agente y no
cmo este es realmente.
La visin que tiene el agente de su ambiente influencia en el
diseo del mismo.
Existen diferentes clasificaciones de ambientes.
EI Agente y su Ambiente
12
23
TotaImente observabIe vs. ParcIaImente observabIe:
DetermInIstIco vs. EstocastIco:
estado + accIn nuevo estado
sucIo + IImpIar IImpIo
EpIsdIco vs. SecuencIaI:
epIsodIo
I
= estado + accIn
EstatIco vs. DInamIco
DIscreto vs. ContInuo
Agente nIco vs. MuItIagente (cooperan o compIten)
?
EI Agente y su Ambiente
24
Qui;
Auto-robot
poker
Damas
adversarIo contInuo estocastIco ParcIaImente
observabIe
1
25
Qui;
Auto-robot
poker
Damas
adversarIo contInuo estocastIco ParcIaImente
observabIe
26
AGENTE PERCEPCIN ACCIONES OBJETIVOS AMBIENTE
Sistemas de
Diagnstico
Mdico
Sntomas,
resultados de
estudios, respuestas
del paciente
Preguntas,
Estudios,
Tratamientos
Paciente Sano,
Mnimo Costo
Paciente,
Hospital
Sistema
Analizador de
Imgenes
Satelitales
Pixels de
intensidad y
color variado
Imprimir una
catego-
rizacin de
la escena
Categoriza-
cin correcta
Imgenes de
Satlites
Robot para
tomar partes
Pixels de
distinta
intensidad
Tomar partes
y ordenarlas
en el empa-
quetamiento
Colocar las
partes co-
rrectamente
Cinta trans-
portadora con
las partes
Controlador
de una
refinera
Lecturas de
temperatura,
presin y caudal
Abrir y cerrar
vlvulas, etc.
Maximizar pureza,
minimizar costos,
seguridad
Refinera
Tutor
interactivo de
idioma
Palabras
tipeadas
Imprimir
ejercicios,
sugerencias,
correcciones .
Maximizar el
puntaje del estu-
diante en los
examenes
Conjunto de
estudiantes
Refinera
1!
27
Agente Percepciones Acciones Objetivos Ambiente
Conductor
de Taxi
cmaras,
velocmetro,
sonar,
micrfono
acelerar,
frenar,
doblar,
etc.
seguro,
rpido,
maximizar
beneficios
rutas,
vehculos,
peatones,
clientes
funcin AGENTE (percepcin) retorna accin
static: memoria; la memoria del agente acerca del mundo
memoria Actualizar-Memoria (memoria, percepcin)
action Elegir-Mejor-Accin (memoria)
memoria Actualizar-Memoria (memoria, accin)
retornar accin
El agente recibe una sola percepcin
El agente decidir si requiere, o no, construir en su memoria la SP.
Progromo de Agenfe: Esfrucfuro bosico
28
SimuIudor deI Ambiente
Ambiente
Percepcin
actualizar
accin
EI
1
29
funcin Ejecutar-Ambiente (estado, fn-actualizacin, agentes,
terminacin, fn-perfomance)
retorna accin
variables locales: ponderaciones, un elemento por agente
repetir
por cada agente en agentes hacer
Percep [agente] Obt-Percep(agente, estado)
fin
por cada agente en agentes hacer
Accin[agente]Programa[agente](Percep[agente])
fin
estado fn-actualizacin(acciones, agentes, estados)
ponderaciones fn-perfomance(ponderaciones, agentes,
estado)
hasta terminacin (estado)
retornar ponderaciones.
Esquemo de un Progromo que SimuIo Ambienfes
30
Considerar los siguientes agentes:
1) robot jugador de ftbol
2) asistente de procesador de texto
3) controlador de mquina expendedora de productos
3 33 3
2 22 2
1 11 1
AmbIente AmbIente AmbIente AmbIente Meta]ObjetIvo Meta]ObjetIvo Meta]ObjetIvo Meta]ObjetIvo AccIones AccIones AccIones AccIones PercepcIones PercepcIones PercepcIones PercepcIones
EI Agente y su Ambiente
1
31
Considerar los siguientes agentes:
1) robot jugador de ftbol
2) asistente de procesador de texto
3) controlador de mquina expendedora de productos
EI Agente y su Ambiente
MaquIna
expendedora
MaquIna IIena
sIempre
Reponer
producto, avIsar
cuando vacIo
CantIdad de
productos
3 33 3
Texto Texto correcto SugerencIas,
correccIones
PaIabras
escrItas
2 22 2
Cancha de
ItboI
Hacer goI Correr, patear Ia
peIota
PosIcIn en Ia
cancha
1 11 1
AmbIente AmbIente AmbIente AmbIente Meta]ObjetIvo Meta]ObjetIvo Meta]ObjetIvo Meta]ObjetIvo AccIones AccIones AccIones AccIones PercepcIones PercepcIones PercepcIones PercepcIones
32
Considerar los siguientes agentes:
1) robot jugador de ftbol
2) asistente de procesador de texto
3) controlador de mquina expendedora de productos
EI Agente y su Ambiente
MaquIna
expendedor
a
Texto
Cancha de
ItboI
AmbIente AmbIente AmbIente AmbIente
3 33 3
2 22 2
1 11 1
DIscreto DIscreto DIscreto DIscreto Est Est Est Esta aa atIco tIco tIco tIco EpIs EpIs EpIs EpIs dIco dIco dIco dIco DetermInIsta DetermInIsta DetermInIsta DetermInIsta AccesIbIe AccesIbIe AccesIbIe AccesIbIe
1
33
Considerar los siguientes agentes:
1) robot jugador de ftbol
2) asistente de procesador de texto
3) controlador de mquina expendedora de productos
EI Agente y su Ambiente
MaquIna
expendedora
Texto
Cancha de
ItboI
AmbIente AmbIente AmbIente AmbIente
S NO NO S S 3 33 3
S S S S S 2 22 2
NO NO NO NO NO 1 11 1
DIscret DIscret DIscret DIscret
o oo o
Est Est Est Esta aa atIco tIco tIco tIco EpIs EpIs EpIs EpIs dIco dIco dIco dIco DetermInIsta DetermInIsta DetermInIsta DetermInIsta AccesIbIe AccesIbIe AccesIbIe AccesIbIe
34
Tipos de ogenfes
1) Agente reactivo/reflejo/reflexivo simple
2) Agente reactivo basado en modelos
3) Agente basado en objetivos
4) Agente basado en utilidad
5) Agente que aprende
1
35
funcin Agente-Reflexivo-Simple (percepcin) retorna accin
static: reglas; un conjunto de reglas condicin-accin
estado Interprete-Entrada ( percepcin )
regla Selector-Regla ( estado , reglas )
accin Accin-de-la-Regla [ regla ]
retornar accin
I) Agenfe PefIejo SimpIe
Si auto-delante est frenado entonces frenar
Reglas condicin-accin
36
I) Agenfe PefIejo SimpIe
1^
37
I) Agenfe PefIejo SimpIe
38
I) Agenfe PefIejo SimpIe
20
39
Agente-termostato
Agente refIego simpIe
Cmo decide este agente qu accin emprender?
40
Agente-termostato
Agente refIego simpIe
Cmo decide este agente qu accin emprender?
SI (sensor-temperatura < temperatura-deseada)
ENTONCES accin-elegida(prender)
21
41
funcin Agente-Reflexivo-Estado (percepcin) retorna accin
static: estado; descripcin del estado actual del Ambiente
reglas; un conjunto de reglas condicin-accin
accin; la accin ms reciente
estado Actualiza-Estado ( estado, accin, percepcin )
regla Selector-Regla ( estado , reglas )
accin Accin-de-la-Regla [ regla ]
retornar accin
siguiente: I x percepcin I
Z) Agenfe PefIejo bosodo en modeIos
42
Z) Agenfe PefIejo bosodo en modeIos
Los sensores no dan acceso a una descripcin completa del
estado del mundo.
Percibir(pared)
. . .
Percibir(pared)
. . .
22
43
Z) Agenfe PefIejo bosodo en modeIos
Los sensores no dan acceso a una descripcin completa del
estado del mundo.
En algunos problemas el agente necesita mantener
internamente algo de informacin acerca del estado del mundo
(ambiente),
44
Z) Agenfe PefIejo bosodo en modeIos
Los sensores no dan acceso a una descripcin completa del
estado del mundo.
En algunos problemas el agente necesita mantener
internamente algo de informacin acerca del estado del mundo
(ambiente),

Frenar Luz freno encendida


Pasar auto Auto-enfrente
Mantener velocidad Auto-enfrente y auto-
atrs
accin Estado
2
45
Actualizar esta informacin interna acerca del estado
requiere que se codifiquen dos tipos de conocimientos:
i. la informacin acerca de como evoluciona el mundo
independientemente del agente
(por ej.: los otros vehculos en la autopista)
ii. la informacin acerca de como las acciones del
agente afectan al mundo
(por ej.: que ocurre cuando ejecute la accin de
pasarse de carril en la autopista)
modelo
Z) Agenfe PefIejo bosodo en modeIos
46
Agente-termostato
Cmo decide este agente qu accin emprender?
Agente refIego busudo en modeIo
2!
47
Agente-termostato
Agente refIego busudo en modeIo
SI (siguiente(estado-temperatura,sensor-temperatura)<temperatura-deseada)
ENTONCES (accin-elegida(prender))
Cmo decide este agente qu accin emprender?
48
El agente necesita informacin sobre el objetivo que persigue, el
cual describe las situaciones deseables.
El programa del agente puede combinar la informacin sobre
objetivo y el resultado de las acciones posibles para seleccionar la
accin necesaria para alcanzar el objetivo.
3) Agenfe bosodo en objefivos
Posibles acciones:
Ir-a-(a)
Ir-a-(b)
Ir-a-(c)
Cual es mejor?
(a)
(b)
(c)
El resultado de la accin
ir-a-(b) lo deja ms
cerca del objetivo.
2
49
El agente necesita informacin sobre el objetivo que persigue, el
cual describe las situaciones deseables.
El programa del agente puede combinar la informacin sobre
objetivo y el resultado de las acciones posibles para seleccionar la
accin necesaria para alcanzar el objetivo.
Este agente considera dos aspectos:
i. Que ocurre si ejecuta tal o cual accin?
ii.Cunto ms lo complace cada accin?
Esta informacin no se utiliza explcitamente en los agentes
reflexivos, ya que el programador ha pre-procesado las acciones
correctas para cada caso.
3) Agenfe bosodo en objefivos
50
En eI ejempIo deI Toxisfo:
Un agente reflexivo frena cuando observa encendidas las
luces de freno del vehculo que va delante de l.
Un agente dirigido por objetivos, en principio razonar que
si observa encendidas las luces de freno del auto que va delante:
Su objetivo es no chocar analiza las posibles acciones:
disminuir la velocidad
frenar
Si comienza a llover, el agente puede actualizar su conocimiento
acerca de cuan bien trabajarn sus frenos; esto provocar
automticamente que se adapte el comportamiento a las nuevas
condiciones.
Para el agente reflexivo, deberamos re-escribir un gran nmero
de reglas condicin-accin ante cambios del dominio.
Cual lo acerca a su objetivo?
2
51
Agente-termostato
Agenfe bosodo en objefivo
Cmo decide este agente qu accin emprender?
52
Agente-termostato
Agenfe bosodo en objefivo
objetivo: 25C < estado-temperatura < 30C
estado-temperatura = actualizar(sensor-temperatura)
secuencia-acciones = buscar-secuencia-acciones(estado-temperatura, objetivo)
accin= primera(secuencia-acciones)
Bsqueda
Planificacin

Cmo decide este agente qu accin emprender?


2
53
4} Agente busudo en utiIidud
54
Un objetivo slo distingue entre un estado de xito y fracaso.
Una medida de perfomance ms general debera permitir
comparar diferentes estados del Mundo (o secuencia de
estados), de acuerdo a cuan exitoso sera el agente si los alcanza.
Usar cuando:
existen objetivos conflictivos (velocidad, seguridad)
varios objetivos que no puedan alcanzarse con certeza
4} Agente busudo en utiIidud
Funcin UtiIidud:
U: E
2
55
Crtica: mecanismo de retroalimentacin que analiza la manera de actuar
Aprendizaje: incorpora nuevas reglas basadas en el conocimiento obtenido por la
experiencia. (por ej. cmo evoluciona el mundo, que hacen sus acciones, etc)
Generador de problemas: sugerir acciones que lo lleven a tener nuevas experiencias.
Acciones mejores a largo plazo
} Agente que uprende
56
} Agente que uprende
Formas de aprendizajes:
Supervisado
No Supervisado
Por refuerzo
2^
57
El objetivo del agente-aspiradora:
Ejercicio: definir un Agenfe-ospirodoro
hab1 hab2
suciedad
Agente-aspiradora
Sensores:
- sucio/limpio (1/0), posicin (h1, h2)
Actuadores:
- aspirar
- moverse
- apagarse
Qu pasa si el mundo
es completamente observable?
58
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe refIejo-
simpIe
- Acciones: irH1, irH2 aspirar, apagarse
-Percepcin: (estadoPosicion, posicin)
- Toma de decisiones: reglas IF-THEN
0
59
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe refIejo-
simpIe
- Acciones: irH1, irH2 aspirar, apagarse
- percepcin (sucia, h1)
- Toma de decisiones: reglas IF-THEN (basada en percepcin)
-IF sucia THEN aspirar
-IF limpia ^ h1 THEN irH2
-IF limpia ^ h2 THEN irH1
- y el apagarse?
60
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe refIejo-
simpIe
Este mundo es determinstico?
Que pasa si el aspirar no aspira TODA la suciedad existente?
1
61
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe refIejo-
simpIe bosodo en modeIo
-Toma de decisiones: reglas IF-THEN
-IF estado(pos,sucio) THEN aspirar
-IF estado(pos, limpio) ^ en(h1) THEN irH2
- IF estado(H1, limpio) AND estado(H2, limpio) THEN
apagarse
Qu pasa si no sabe cuntas habitaciones hay?
Estado agente:
Posicin actual
Estado habitaciones (sucio/limpio)
62
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe bosodo en
objefivo
- Toma de decisiones?
- Estado interno o modelo del mundo?
- Objetivo?
- Lleg al objetivo?
2
63
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe bosodo en
objefivo
- Toma de decisiones: bsqueda, planificacin, sistema de reglas
- Objetivo: ambas habitaciones limpias
- Posibles estados que satisfacen el objetivo:
- Evaluar si lleg al objetivo
- Secuencia de acciones para alcanzar el objetivo: Aspirar, irH2, aspirar
Cmo son las acciones ahora?
64
Ejercicio: definir un Agenfe-ospirodoro como un ogenfe bosodo en
objefivo
Posibles estados que satisfacen el objetivo:
Acciones:
Aspirar:
habitacin-sucia habitacin-limpia
irH1
en h1
IrH2
en h2
Llegu al objetivo?
Si( (en h1 o h2) y limpia-h1 y limpia-h2)
Entonces
xito!

65
Nuestro agente Nuestro agente Nuestro agente Nuestro agente
tacto ultrasnico color
66
Nuestro agente: sensores Nuestro agente: sensores Nuestro agente: sensores Nuestro agente: sensores
Problemas:
!
67
Nuestro agente: sensores Nuestro agente: sensores Nuestro agente: sensores Nuestro agente: sensores
Detecta los colores: negro, rojo, amarillo, azul y verde
Problemas: mala iluminacin
Detecta si el botn est o no presionado
68
Nuestro agente: Actuadores Nuestro agente: Actuadores Nuestro agente: Actuadores Nuestro agente: Actuadores
Movimientos:
Delante
vl=vr
Girar derecha:
vl >vr vl =0 y vr =0 vl= + vr=-

69
Nuestro agente: Puertos Nuestro agente: Puertos Nuestro agente: Puertos Nuestro agente: Puertos
Motores
Sensores
70
Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI n nn n
Dos posibles acciones: preguntar y hacer
Preguntar: a los sensores cuales son los valores
Sensor ultrasnico: getDistance()
Sensor color: getColor()
Sensor tacto: isPressed()
Hacer: rdenes a los motores
forware()
backware()
setSpeed()
Stop()

71
Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI n nn n
Ejemplo:
Ir hacia delante: ir hacia atrs:
Motor.A.forware() Motor.A.backware()
Motor.B.forware() Motor.B.backware()
Doblar a la derecha: (siempre que el motor de la derecha est conectado al puerta B)
Motor.A.setSpeed(300)
Motor.B.setSpeed(100)
72
Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI n nn n
Ejemplo:
Sensar distancia:
UltrasonicSensor us = new UltrasonicSensor(SensorPort.S2);
if(us.getDistance() < 15)
Sensar color:
ColorSensor cs = new ColorSensor(SensorPort.S2);
Color.RED == cs.getColorID();
Sensar choque:
TouchSensor ts = new TouchSensor(SensorPort.S4);
ts.isPressed();

73
Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI Nuestro agente: programacI n nn n
Ejemplo: seguir la lnea rojo
public class LineaRoja {
public LineaRoja() throws InterruptedException {
ColorSensor cs = new
ColorSensor(SensorPort.S2);
Motor.A.setSpeed(500);
Motor.B.setSpeed(500);
Motor.A.forward();
Motor.B.forward();
while(true){
if (!(Color.RED == cs.getColorID())) {
Motor.B.backward();
Thread.sleep(200);
}
Motor.B.forward();
}
}
}
74
Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador

75
Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador
Programa de agente a simular
76
Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador Nuestro agente: eI sImuIador
Crear
ambiente
Inicializar
Posicin
robot
Comenzar
/terminar
simulacin
^
77
Nuestro agente: eI SImuIador Nuestro agente: eI SImuIador Nuestro agente: eI SImuIador Nuestro agente: eI SImuIador

You might also like