1. INTELIGENCIA ARTIFICIAL
Clase #2 :
Agentes Inteligentes
Dr. Wladimir Rodríguez
Postgrado en Computación
ULA
wladimir@ula.ve
2. Información General
• Profesor: Wladimir Rodríguez
• e-mail: wladimir@ula.ve
• Horario: Lunes 8-12
• Página WEB:
• http://www.pgcomp.ula.ve/DISTANCIA/
INTELIGENCIA/index.html
• Libro Texto:
• Stuart Russell y Peter Norvig, “Inteligencia
Artificial: Un enfoque moderno”, Prentice
Hall, 1996. (http://aima.cs.berkeley.edu)
Dr. Wladimir Rodriguez 2 Inteligencia Artificial
3. Agenda
• Introducción
• ¿Qué es un Agente Inteligente?
• Estructura de los Agentes Inteligentes
• Agentes de Reflejo Simple
• Agentes Bien Informados
• Agentes Basados en Metas
• Agentes Basados en Utilidad
• Ambientes
Dr. Wladimir Rodriguez 3 Inteligencia Artificial
9. ¿Qué tan bueno es un Agente?
• Se necesita una medida de desempeño:
• Objetiva / Subjetiva
• Cuantitativa / Cualitativa
• Tiempo de Evaluación (durante o después)
• Mejor / Peor / Promedio
• La racionalidad de un agente depende de:
• Rendimiento
• Percepciones recibidas
• Conocimiento interno del agente
• Las acciones que el agente pueda hacer
Dr. Wladimir Rodriguez 9 Inteligencia Artificial
10. ¿Qué tan bueno es un Agente?
• Un agente racional ideal:
• Para todos los un agenteposibles secuencias de
percepciones,
casos de
racional deberá emprender
todas aquellas acciones que favorezcan obtener el
máximo de su medida de rendimiento, basandose en
las evidencias aportadas por la secuencia de
percepciones y en todo el conocimiento incorporado
en tal agente
Dr. Wladimir Rodriguez 10 Inteligencia Artificial
11. Mapeo Percepciones/Acciones
• Un mapeo especifica la acción que un agente
debe tomar en respuesta a una secuencia de
percepciones.
• Puede ser en forma de tabla
• Planes universales
• Casos (indexados)
• Pueden ser en forma de funciones
• Comportamiento estimulo / respuesta
• Algoritmos de varios tipos.
(ejemplo de la raíz cuadrada del texto)
Dr. Wladimir Rodriguez 11 Inteligencia Artificial
12. Tipos de Agentes
Agente Perceptos Acciones Objetivos Entorno
Sistema de Preguntas,
Síntomas, signos, Sanar,
diagnóstico pruebas, Paciente, hospital
respuestas minimizar costes
medico tratamientos
Sistema de
Clasificar la Clasificación Imágenes de
análisis de Pixels
escena correcta satelite
imágenes
Agarrar partes
Robot de Colocación Cinta deslizante
Pixels colocarlas en
recolección correcta con las partes
recipientes
Medidas de Maximizar
Controlador de Abrir y cerrar
presión, pureza, Refinería
refinería válvulas ...
temperatura producción
Preguntas, Maximizar la
Palabras Conjunto de
Tutor interactivo ejercicios, puntuación en un
tecleadas estudiantes
sugerencias ... test
Dr. Wladimir Rodriguez 12 Inteligencia Artificial
13. ¿Qué es un Agente Inteligente?
• Un agente inteligente es cualquier cosa que
pueda
• percibir un mundo perceptual en queyesté anidado
(“ambiente”) mediante SENSORES
• actuar sobre ese mundo mediante EFECTORES (o
actuadores)
• sinónimo de ambiente es “espacio de problema”
• sinónimo de agente inteligente es “operador que
transforma un input en output dentro del espacio de
problema”
Dr. Wladimir Rodriguez 13 Inteligencia Artificial
14. ¿Qué es un Agente Inteligente?
• META de la Inteligencia Artificial Diseñar
un agente inteligente/racional que opere o actúe
adecuadamente en sus ambientes.
• Discusión sobre “adecuadamente”
• Fijar alguna medida del buen éxito
• Tener en cuenta el PRR Principio de Racionalidad
Restringida de Herbert Simon
Dr. Wladimir Rodriguez 14 Inteligencia Artificial
15. ¿Qué es un Agente Racional?
• Pensante racionalmente
• Captura de un proceso racional correcto
• Proceso “ Irrefutable”
• Metodología
• Desarrollar un modelo formal - LÓGICA FORMAL -
que siempre conduzca a la respuesta correcta
• Implementar ese modelo
• Cómo sabemos si lo hicimos bien
• cuando podemos probar que el razonamiento
programado fue correcto
• la lógica de primer orden fue completa
Dr. Wladimir Rodriguez 15 Inteligencia Artificial
16. ¿Qué es un Agente Racional?
• Actuante racionalmente
• Actuar de forma de lograr las metas deseadas
• “El enfoque del agente racional” - a ser encarado en
esta disciplina.
• Imagine usted mismo como se hacen las decisiones
correctas
• a veces pensando racionalmente (enfoque europeo)
• otras teniendo reflejos racionales (enfoque truqués)
Dr. Wladimir Rodriguez 16 Inteligencia Artificial
17. Estructura de los Agentes
• Como todos los agentes tienen una estructura
básica o mínima o esquelética igual, se puede
investigar cuál es ella.
function Skeleton-Agent(percept) returns action
function Skeleton-Agent(percept) returns action
static: memory, the agent's memory of the world
static: memory, the agent's memory of the world
memory ¨ Update-Memory(memory, percept)
memory ¨ Update-Memory(memory, percept)
action ¨ Choose-Best-Action(memory)
action ¨ Choose-Best-Action(memory)
memory ¨ Update-Memory(memory, action)
memory ¨ Update-Memory(memory, action)
return action
return action
Dr. Wladimir Rodriguez 17 Inteligencia Artificial
18. Agente Basado en Tablas
• Dada una percepción, simplemente buscar la
respuesta.
• Parece simple, pero existen algunos problemas:
• Combinatoria: problemas reales requieren de tablas
muy grandes
• Tablas son difíciles de crear
function Table-Driven-Agent(percept) returns action
function Table-Driven-Agent(percept) returns action
static: percepts, aasequence, initially empty
static: percepts, sequence, initially empty
table, aatable indexed by percept sequences, initially fully specified
table, table indexed by percept sequences, initially fully specified
append percept to the end of percepts
append percept to the end of percepts
action ¨ LookUp(percepts, table)
action ¨ LookUp(percepts, table)
return action
return action
Dr. Wladimir Rodriguez 18 Inteligencia Artificial
19. Agentes Reflejo Simple
• Las reglas condición / acción tienen la forma
• IF condición THEN acción
• Aparear regla con la percepción a partir de un
conjunto completo de reglas
ENTONCES especificar acción a tomar.
• Peligro puede ser de poco alcance.
Dr. Wladimir Rodriguez 19 Inteligencia Artificial
21. Agente Reflejo Simple
function Simple-Reflex-Agent(percept) returns action
function Simple-Reflex-Agent(percept) returns action
static: rules, aaset of condition-action rules
static: rules, set of condition-action rules
state ¨ Interpret-Input(percept)
state ¨ Interpret-Input(percept)
rule ¨ Rule-Match(state, rules)
rule ¨ Rule-Match(state, rules)
action ¨ Rule-Action[rule]
action ¨ Rule-Action[rule]
return action
return action
Dr. Wladimir Rodriguez 21 Inteligencia Artificial
22. Agente Reflejo con Estado
• Incluye memoria extendiendo el horizonte de
tiempo del agente.
• Peligro: la información almacenada puede no ser
valida.
• Un agente reflejo con un estado interno. Opera
encontrando una regla cuya condición coincida
con la situación actual y luego procede a
efectuar la acción que corresponda a la regla
Dr. Wladimir Rodriguez 22 Inteligencia Artificial
23. Agente Reflejo con Estado
Dr. Wladimir Rodriguez 23 Inteligencia Artificial
24. Agente Reflejo con Estado
function Reflex-Agent-With-State(percept) returns action
function Reflex-Agent-With-State(percept) returns action
static: rules, aaset of condition-action rules
static: rules, set of condition-action rules
state, aadescription of the current world
state, description of the current world
state ¨ Update-State(state, percept)
state ¨ Update-State(state, percept)
rule ¨ Rule-Match(state, rules)
rule ¨ Rule-Match(state, rules)
action ¨ Rule-Action[rule]
action ¨ Rule-Action[rule]
state ¨ Update-State(state, action)
state ¨ Update-State(state, action)
return action
return action
Dr. Wladimir Rodriguez 24 Inteligencia Artificial
25. Agente Basado en Metas
• Metas
• Ayudan al agente a decidir las acciones correctas.
• Información sobre la deseables. al agente a
describir situaciones
meta ayuda
• Si la meta no es inmediatabúsqueda y planeación.
realizar algún proceso de
a una acción es necesario
Dr. Wladimir Rodriguez 25 Inteligencia Artificial
26. Agente Basado en Metas
• La toma de decisiones no es tan directa como en
un agente reactivo.
• Considera la forma en que cambiará el mundo.
• Es más flexible para adaptarse
• Ej. Agente que conduce
Dr. Wladimir Rodriguez 26 Inteligencia Artificial
27. Agente Basado en Metas
Dr. Wladimir Rodriguez 27 Inteligencia Artificial
28. Agente Basado en Metas
Input percept
Input percept
state ¨ Update-State(state, percept)
state ¨ Update-State(state, percept)
goal ¨ Formulate-Goal(state, perf-measure)
goal ¨ Formulate-Goal(state, perf-measure)
search-space ¨ Formulate-Problem (state, goal)
search-space ¨ Formulate-Problem (state, goal)
plan ¨ Search(search-space , ,goal)
plan ¨ Search(search-space goal)
while (plan not empty) do
while (plan not empty) do
action ¨ Recommendation(plan, state)
action ¨ Recommendation(plan, state)
plan ¨ Remainder(plan, state)
plan ¨ Remainder(plan, state)
output action
output action
end
end
Dr. Wladimir Rodriguez 28 Inteligencia Artificial
29. Ejemplo de Agente Basado en
Metas
• El robot debe
mantener el objetivo
en la mira
• La trayectoria del
objetivo no es
conocida de
antemano
• El robot no sabe de
antemano todos los
obstáculos
• Se debe actuar
rapidámente robot target
•
Dr. Wladimir Rodriguez 29 Inteligencia Artificial
30. Agente Basado en Utilidad
• Las metas no son suficientes para generar un
comportamiento de calidad.
• Las utilidades sirven para distinguir la
preferencia de un estado a otro.
• La utilidad mapea un estado a un número real
• Debe considerarse las metas conflictivas y las
metas inciertas.
Dr. Wladimir Rodriguez 30 Inteligencia Artificial
31. Agente Basado en Utilidad
Dr. Wladimir Rodriguez 31 Inteligencia Artificial
33. Ambiente
• Accesible vs inaccesible
• Sensores detectan toda la información
• Determinista vs no determinista
• El siguiente estado depende sólo del anterior y de la
acción actual
• Episódico vs no episódico
• Existen episodios con percepciones y acciones
Dr. Wladimir Rodriguez 33 Inteligencia Artificial
34. Ambiente
• Estático vs dinámico
• El ambiente no cambia mientras el agente delibera
• Discreto vs continuo
• Existe un número limitado de percepciones y
acciones
Dr. Wladimir Rodriguez 34 Inteligencia Artificial
35. Características de los Ambientes
Accesible Determinista Estático Discreto
Solitario No Si Si Si
Backgammon Si No Si Si
Manejar Taxi No No No No
Compras
No No No No
Internet
Diagnóstico
No No No No
Médico
Dr. Wladimir Rodriguez 35 Inteligencia Artificial
36. Programa Básico para el
Ambiente
procedure Run-Environment(state, Update-Fn, agents, termination)
procedure Run-Environment(state, Update-Fn, agents, termination)
input: state, the initial state of the environment
input: state, the initial state of the environment
Update-Fn, function to modify the environment
Update-Fn, function to modify the environment
agents, aaset of agents
agents, set of agents
termination, aapredicate to test when we are done
termination, predicate to test when we are done
repeat
repeat
for each agent in agents do
for each agent in agents do
Percept[agent] ¨ Get-Percept(agent, state)
Percept[agent] ¨ Get-Percept(agent, state)
end
end
for each agent in agents do
for each agent in agents do
Action[agent] ¨ Program[agent](Percept[agent])
Action[agent] ¨ Program[agent](Percept[agent])
end
end
state ¨ Update-Fn(actions, agents, state)
state ¨ Update-Fn(actions, agents, state)
until termination(state)
until termination(state)
Dr. Wladimir Rodriguez 36 Inteligencia Artificial
37. Simulador de Ambiente
function Run-Eval-Environment(state, Update-Fn, agents,
function Run-Eval-Environment(state, Update-Fn, agents,
termination, Performance-Fn) returns scores
termination, Performance-Fn) returns scores
local : :scores, aavector the same size as agents, initially all 00
local scores, vector the same size as agents, initially all
repeat
repeat
for each agent in agents do
for each agent in agents do
Percept[agent] ¨ Get-Percept(agent, state)
Percept[agent] ¨ Get-Percept(agent, state)
end
end
for each agent in agents do
for each agent in agents do
Action[agent] ¨ Program[agent](Percept[agent])
Action[agent] ¨ Program[agent](Percept[agent])
end
end
state ¨ Update-Fn(actions, agents, state)
state ¨ Update-Fn(actions, agents, state)
scores ¨ Performance-Fn(scores, agents, state)
scores ¨ Performance-Fn(scores, agents, state)
until termination(state)
until termination(state)
return scores
return scores
Dr. Wladimir Rodriguez 37 Inteligencia Artificial
38. Resumen
• Un agente es algo que percibe y actúa en un
ambiente.
• Un agente ideal es aquel que siempre emprende
la mejor acción
• Los agente de reflejo responden de inmediato a
las percepciones
• Los agentes basados en reglas actúan en función
del logro de una meta.
Dr. Wladimir Rodriguez 38 Inteligencia Artificial
39. Resumen
• Los agentes basados en la utilidad se esfuerzan
por maximizar una función de evaluación.
• El ambiente en el cual se encuentra los agentes
pueden variar dramáticamente.
Dr. Wladimir Rodriguez 39 Inteligencia Artificial