Upload
juan-carlos-jocop-arriola
View
212
Download
0
Embed Size (px)
Citation preview
Dr. Wladimir RodríguezPostgrado en Computación
INTELIGENCIA ARTIFICIALClase #2 :
Agentes Inteligentes
Dr. Wladimir Rodriguez Inteligencia Artificial2
• Profesor: Wladimir Rodríguez
• e-mail: [email protected]
• 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)
Información General
Dr. Wladimir Rodriguez Inteligencia Artificial3
• 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
Agenda
Dr. Wladimir Rodriguez Inteligencia Artificial4
Agente Inteligente
Dr. Wladimir Rodriguez Inteligencia Artificial5
• Sensores: Ojos (visión), orejas (oído), piel (tacto), lengua (gusto), nariz (olfato), sistema neuromuscular (propriocepción)
• Percepciones:
• Al más bajo nivel – señales eléctricas
• Después del preprocesamiento – objetos en el campo visual (posición, texturas, colores, …), flujos auditivos (tono, volumen, dirección),
• Eféctores: Brazos, dedos, ojos, lengua, ...
• Acciones: alzar el brazo, voltear, caminar, ...
Agente Humano
Dr. Wladimir Rodriguez Inteligencia Artificial6
Introducción
Dr. Wladimir Rodriguez Inteligencia Artificial7
• Percepciones: Localización y contenido, por ejemplo [A, Sucio]
• Acciones: Izquierda, Derecha, Aspirar, Hacer_Nada
Ambiente Aspiradora
Dr. Wladimir Rodriguez Inteligencia Artificial8
Agente Aspiradora
Secuencia de Percepciones Acción
[A, Limpio][A, Sucio][B, Limpio][B, Sucio][A, limpio] [A, Limpio][A, Limpio] [A, Sucio]...
DerechaAspirarIzquierdaAspirarDerechaAspirar...
Dr. Wladimir Rodriguez Inteligencia Artificial9
• 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
¿Qué tan bueno es un Agente?
Dr. Wladimir Rodriguez Inteligencia Artificial10
• Un agente racional ideal:
• Para todos los casos de posibles secuencias de percepciones, un agente 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
¿Qué tan bueno es un Agente?
Dr. Wladimir Rodriguez Inteligencia Artificial11
• 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)
Mapeo Percepciones/Acciones
Dr. Wladimir Rodriguez Inteligencia Artificial12
Tipos de Agentes
Agente Perceptos Acciones Objetivos Entorno
Sistema de diagnóstico
medico
Síntomas, signos, respuestas
Preguntas, pruebas,
tratamientos
Sanar,minimizar costes
Paciente, hospital
Sistema de análisis de imágenes
PixelsClasificar la
escenaClasificación
correctaImágenes de
satelite
Robot de recolección
PixelsAgarrar partes colocarlas en recipientes
Colocación correcta
Cinta deslizante con las partes
Controlador de refinería
Medidas de presión,
temperatura
Abrir y cerrar válvulas ...
Maximizar pureza,
producciónRefinería
Tutor interactivoPalabras tecleadas
Preguntas, ejercicios,
sugerencias ...
Maximizar la puntuación en un
test
Conjunto de estudiantes
Dr. Wladimir Rodriguez Inteligencia Artificial13
• Un agente inteligente es cualquier cosa que pueda
• percibir un mundo perceptual en que esté anidado (“ambiente”) mediante SENSORES y
• 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”
¿Qué es un Agente Inteligente?
Dr. Wladimir Rodriguez Inteligencia Artificial14
• 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
¿Qué es un Agente Inteligente?
Dr. Wladimir Rodriguez Inteligencia Artificial15
• 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
¿Qué es un Agente Racional?
Dr. Wladimir Rodriguez Inteligencia Artificial16
• 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)
¿Qué es un Agente Racional?
Dr. Wladimir Rodriguez Inteligencia Artificial17
• Como todos los agentes tienen una estructura básica o mínima o esquelética igual, se puede investigar cuál es ella.
Estructura de los Agentes
function Skeleton-Agent(percept) returns action static: memory, the agent's memory of the world memory ¨ Update-Memory(memory, percept) action ¨ Choose-Best-Action(memory) memory ¨ Update-Memory(memory, action) return action
function Skeleton-Agent(percept) returns action static: memory, the agent's memory of the world memory ¨ Update-Memory(memory, percept) action ¨ Choose-Best-Action(memory) memory ¨ Update-Memory(memory, action) return action
Dr. Wladimir Rodriguez Inteligencia Artificial18
• 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
Agente Basado en Tablas
function Table-Driven-Agent(percept) returns action static: percepts, a sequence, initially empty table, a table indexed by percept sequences, initially fully specified
append percept to the end of percepts action ¨ LookUp(percepts, table)return action
function Table-Driven-Agent(percept) returns action static: percepts, a sequence, initially empty table, a table indexed by percept sequences, initially fully specified
append percept to the end of percepts action ¨ LookUp(percepts, table)return action
Dr. Wladimir Rodriguez Inteligencia Artificial19
• 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 reglasENTONCES especificar acción a tomar.
• Peligro puede ser de poco alcance.
Agentes Reflejo Simple
Dr. Wladimir Rodriguez Inteligencia Artificial20
Agente Reflejo Simple
Dr. Wladimir Rodriguez Inteligencia Artificial21
Agente Reflejo Simple
function Simple-Reflex-Agent(percept) returns action static: rules, a set of condition-action rules
state ¨ Interpret-Input(percept) rule ¨ Rule-Match(state, rules) action ¨ Rule-Action[rule] return action
function Simple-Reflex-Agent(percept) returns action static: rules, a set of condition-action rules
state ¨ Interpret-Input(percept) rule ¨ Rule-Match(state, rules) action ¨ Rule-Action[rule] return action
Dr. Wladimir Rodriguez Inteligencia Artificial22
• 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
Agente Reflejo con Estado
Dr. Wladimir Rodriguez Inteligencia Artificial23
Agente Reflejo con Estado
Dr. Wladimir Rodriguez Inteligencia Artificial24
Agente Reflejo con Estado
function Reflex-Agent-With-State(percept) returns action static: rules, a set of condition-action rules state, a description of the current world
state ¨ Update-State(state, percept) rule ¨ Rule-Match(state, rules) action ¨ Rule-Action[rule] state ¨ Update-State(state, action) return action
function Reflex-Agent-With-State(percept) returns action static: rules, a set of condition-action rules state, a description of the current world
state ¨ Update-State(state, percept) rule ¨ Rule-Match(state, rules) action ¨ Rule-Action[rule] state ¨ Update-State(state, action) return action
Dr. Wladimir Rodriguez Inteligencia Artificial25
• Metas
• Ayudan al agente a decidir las acciones correctas.
• Información sobre la meta ayuda al agente a describir situaciones deseables.
• Si la meta no es inmediata a una acción es necesario realizar algún proceso de búsqueda y planeación.
Agente Basado en Metas
Dr. Wladimir Rodriguez Inteligencia Artificial26
• 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
Agente Basado en Metas
Dr. Wladimir Rodriguez Inteligencia Artificial27
Agente Basado en Metas
Dr. Wladimir Rodriguez Inteligencia Artificial28
Agente Basado en Metas
Input perceptstate ¨ Update-State(state, percept)goal ¨ Formulate-Goal(state, perf-measure)search-space ¨ Formulate-Problem (state, goal)plan ¨ Search(search-space , goal)while (plan not empty) do action ¨ Recommendation(plan, state) plan ¨ Remainder(plan, state) output actionend
Input perceptstate ¨ Update-State(state, percept)goal ¨ Formulate-Goal(state, perf-measure)search-space ¨ Formulate-Problem (state, goal)plan ¨ Search(search-space , goal)while (plan not empty) do action ¨ Recommendation(plan, state) plan ¨ Remainder(plan, state) output actionend
Dr. Wladimir Rodriguez Inteligencia Artificial29
• 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
•
Ejemplo de Agente Basado en Metas
targetrobot
Dr. Wladimir Rodriguez Inteligencia Artificial30
• 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.
Agente Basado en Utilidad
Dr. Wladimir Rodriguez Inteligencia Artificial31
Agente Basado en Utilidad
Dr. Wladimir Rodriguez Inteligencia Artificial32
Agente Aprendiz
Dr. Wladimir Rodriguez Inteligencia Artificial33
• 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
Ambiente
Dr. Wladimir Rodriguez Inteligencia Artificial34
• 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
Ambiente
Dr. Wladimir Rodriguez Inteligencia Artificial35
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 Internet
No No No No
Diagnóstico Médico
No No No No
Dr. Wladimir Rodriguez Inteligencia Artificial36
Programa Básico para el Ambiente
procedure Run-Environment(state, Update-Fn, agents, termination) input: state, the initial state of the environment Update-Fn, function to modify the environment agents, a set of agents termination, a predicate to test when we are done
repeat for each agent in agents do Percept[agent] ¨ Get-Percept(agent, state) end for each agent in agents do Action[agent] ¨ Program[agent](Percept[agent]) end state ¨ Update-Fn(actions, agents, state) until termination(state)
procedure Run-Environment(state, Update-Fn, agents, termination) input: state, the initial state of the environment Update-Fn, function to modify the environment agents, a set of agents termination, a predicate to test when we are done
repeat for each agent in agents do Percept[agent] ¨ Get-Percept(agent, state) end for each agent in agents do Action[agent] ¨ Program[agent](Percept[agent]) end state ¨ Update-Fn(actions, agents, state) until termination(state)
Dr. Wladimir Rodriguez Inteligencia Artificial37
Simulador de Ambiente
function Run-Eval-Environment(state, Update-Fn, agents,termination, Performance-Fn) returns scores
local : scores, a vector the same size as agents, initially all 0
repeat for each agent in agents do Percept[agent] ¨ Get-Percept(agent, state) end for each agent in agents do Action[agent] ¨ Program[agent](Percept[agent]) end state ¨ Update-Fn(actions, agents, state) scores ¨ Performance-Fn(scores, agents, state) until termination(state) return scores
function Run-Eval-Environment(state, Update-Fn, agents,termination, Performance-Fn) returns scores
local : scores, a vector the same size as agents, initially all 0
repeat for each agent in agents do Percept[agent] ¨ Get-Percept(agent, state) end for each agent in agents do Action[agent] ¨ Program[agent](Percept[agent]) end state ¨ Update-Fn(actions, agents, state) scores ¨ Performance-Fn(scores, agents, state) until termination(state) return scores
Dr. Wladimir Rodriguez Inteligencia Artificial38
• 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.
Resumen
Dr. Wladimir Rodriguez Inteligencia Artificial39
• 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.
Resumen