INGENIERÍA EN SISTEMAS COMPUTACIONALES
UNIVERSIDAD YMCA
ESPÍRITU MENTE CUERPO
MATERIA:
INTELIGENCIA ARTIFICIAL PROFESOR LIC. JAIME ERICK LUNA ENRIQUEZ
[email protected] 01/10/2009
CUATRIMESTRE SEPTIEMBRE-DICIEMBRE DEL 2009
Agente Racional
Actuar racionalmente, el enfoque del “Agente”: • UN AGENTE RACIONAL ES AQUEL QUE ACTUA CON LA INTENCION DE ALCANZAR EL MEJOR RESULTADO. CUANDO HAY INCERTIDUMBRE, EL MEJOR RESULTADO ESPERADO. • Debe contar con la capacidad de percibir el entorno, representar el conocimiento, razonar y generar oraciones en lenguaje natural.
Agentes y REAS
Estructura de los Agentes •
¿Cómo trabaja un agente?
•
Agente = Estructura + Programa.
Programas de los Agentes: Los programas de los agentes tienen la misma estructura: reciben las percepciones actuales como entradas de los sensores y devuelven una acción a los actuadores A partir de este punto los programas de ejemplo del texto se escriben en un sencillo lenguaje de pseudocódigo:
Agente Aspiradora
• El desafío clave de la IA es encontrar la forma de escribir programas, que en la medida de lo posible, reproduzcan el comportamiento racional a partir de una pequeña cantidad de código en vez de a partir de una tabla.
Tipos Agentes Un agente es cualquier cosa capaz de percibir su medioambiente con la ayuda de sensores, “razonar” y actuar en ese medio utilizando actuadores. Hay 4 tipos básicos e agentes: - Agentes reactivos simples. - Agentes reactivos basados en modelos. - Agentes basados en objetivos. - Agentes basados en utilidad.
Agentes Reactivos Simples
•
El tipo de agente más sencillo es el agente reactivo simple. Estos agentes seleccionan sus acciones sobre la base de las percepciones actuales, ignorando el resto de las percepciones históricas, por ejemplo el agente aspiradora es un agente reactivo simple porque toma sus decisiones sólo con base en la localización actual y si ésta esta sucia.
Estructura el agente
•
•
Los humanos también tienen muchas de estas conexiones, algunas de las cuales son respuestas aprendidas (como en el caso de la conducción) y otras son reacciones innatas, como parpadear cuando algo se acerca al ojo.
Para construir un agente, una aproximación más general y flexible es la de construir primero un intérprete de propósito general para reglas de condición-acción y después crear conjuntos de reglas para entornos de trabajo específicos. La Figura 2.9 presenta la estructura de este programa :
Agente reactivo simple.
Agentes Reactivos Basados en Modelos • La forma mas efectiva que tienen los agentes para manejar la visibilidad parcial es el que estén basados en modelos. (Ej. Aspiradora aleatoria.) • El agente almacena un “estado interno”que depende de la historia percibida. • Por ejemplo para un problema de frenado, el estado interno es solo la fotografía anterior de la cámara, si las luces rojas traseras de los faros del auto de enfrente se prenden, la acción es frenar . • El estado interno se actualiza según pasa el tiempo, y requiere 2 tipos de conocimiento del agente, primero se necesita alguna información de cómo evoluciona el entorno y segundo, se necesita más información sobre cómo afectan al mundo las acciones del agente (Si doblo a la derecha puedo atropellar a alguien?)
Un agente reactivo basado en modelos:
Agentes Reactivos Basados en Objetivos
• No siempre el conocimiento sobre el estado actual del mundo es suficiente para decidir que hacer, por ejemplo, en un cruce de carreteras, el taxista puede doblar a la derecha, a la izquierda o seguir de frente, la dirección correcta depende de a dónde quiere ir el taxi. • Además del estado actual el agente requiere saber alguna información precisa sobre su META. • La siguiente figura muestra la arquitectura de un agente basado en objetivos y basado en modelos que almacena información del estado del mundo, así como de los objetivos que intenta alcanzar.
Agente basado en modelos y objetivos
Objetivos. •
En relación a la determinación de cómo llegar a la meta, a veces es directa, pero en otras ocasiones debemos de considerar que a veces el agente debe de tener en cuenta secuencias complejas para determinar que acción tomar para alcanzar el objetivo.
•
Estas consideraciones más complejas son la BUSQUEDA y la PLANIFICACION, que serán consideradas y cubiertas en capítulos aparte.
•
Aunque el agente basado en objetivos pueda parecer menos eficiente, es más flexible ya que el conocimiento que soporta su decisión está representado explícitamente y puede modificarse. Si comienza a llover. el agente puede actualizar su conocimiento sobre cómo se comportan los frenos y se adaptará automáticamente a las nuevas circunstancias.
Agentes Basados en Utilidad • Las metas por sí solas no son realmente suficientes para generar comportamiento de gran calidad en la mayoría de los entornos. Por ejemplo, hay muchas secuencias de acciones que llevaran al taxi a su destino (y por tanto a alcanzar su objetivo), pero algunas son más rápidas, seguras o más baratas que otras. • La “Función de utilidad” proyecta un estado o un conjunto de estados que arrojan un número real, como un indicador que representa un mayor o menor nivel de “felicidad”. • Cuando hay objetivos contradictorios, por ejemplo velocidad vs. Seguridad, la función debe determinar un equilibrio satisfactorio.
Un agente basado en Utilidad