2 Agentes Inteligentes

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 89

Agentes Inteligentes

Profesor: Héctor Soza P.


Agentes

Históricamente, fuera de la Inteligencia Artificial, el


término agente ha sido usado con dos acepciones

Primero, a partir de Aristóteles y hasta nuestros días,


en filosofía el término agente se ha referido a una
entidad que actúa con un propósito dentro de un
contexto social
Agentes

Segundo, la noción legal de agente, como la


persona que actúa en beneficio de otra con un
propósito específico, bajo la delegación limitada de
autoridad y responsabilidad

Esta noción estaba ya presente en el derecho


romano y ha sido ampliamente usada en economía
Agentes

En el contexto de la computación, el concepto de agente


se consolida como una solución a las demandas actuales:
ubicuidad, interconexión, inteligencia y delegación

Esto se debe a que tenemos una diversidad de dispositivos


de cómputo distribuidos en nuestro entorno e
interconectados
Los agentes emergen como la herramienta para delegar
adecuadamente nuestro trabajo y abordar esta
problemática desde una perspectiva más familiar para
usuarios, programadores y diseñadores
Agentes Inteligentes

En este contexto hay muchas definiciones de agente

Un agente es cualquier cosa capaz de percibir su


medioambiente con la ayuda de sensores y actuar
en ese medio utilizando actuadores

Un agente es un sistema computacional capaz de


actuar de manera autónoma para satisfacer sus
objetivos y metas, mientras se encuentra situado
persistentemente en su medio ambiente
Agentes Inteligentes
Agente
Percepciones
Sensores M
e
d
i
o

A
? m
b
i
e
Acciones n
Actuadores t
e
Agentes Inteligentes
Agentes Inteligentes

Un agente humano tiene ojos, oídos y otros órganos


sensoriales además de manos, piernas, boca y otras
partes del cuerpo para actuar
Agentes Inteligentes

Un agente robot recibe pulsaciones del teclado,


archivos de información y paquetes vía red a modo de
entradas sensoriales y actúa sobre el medio con
mensajes en el monitor, escribiendo ficheros y
enviando paquetes por la red
Agentes Inteligentes

El término percepción se utiliza en este contexto


para indicar que el agente puede recibir entradas en
cualquier instante

La secuencia de percepciones de un agente refleja


el historial completo de lo que el agente ha recibido
Agentes Inteligentes

En general, un agente tomará una decisión en un


momento dado dependiendo de la secuencia
completa de percepciones hasta ese instante

En términos matemáticos se puede decir que el


comportamiento del agente viene dado por la
función del agente que proyecta una percepción
dada en una acción
Ejemplo de Agente

El antiguo daemon de Xwindows llamado xbiff está


situado en un ambiente UNIX

Vigila constantemente el buzón de su usuario para


avisarle cuando llegan mensajes nuevos a través de
una interfaz gráfica
Ejemplo de Agente

Es discutible concebir un daemon de sistema


operativo como un agente, pero tal sistema cumple
con la definición consensual de agente

Es más, este agente se las arregla para identificar a su


usuario, encontrar su buzón electrónico en la red,
buscar mensajes nuevos y comunicar al usuario la
presencia de éstos
Agente racional

Si bien hemos presentado al xbiff como un agente, no


hemos dicho que se trate de una entidad inteligente

Se dice que un agente es racional si hace lo correcto

Una primera aproximación a la definición de lo


“correcto” consiste en asumir que una acción correcta
es aquella que causa que el agente tenga un mayor
éxito
Agente racional
Se debe considerar que la racionalidad NO ES
omnisciencia, clarividencia ni es exitosa
necesariamente
La racionalidad se puede ver como un éxito esperado,
tomando como base lo que se ha percibido
Agente racional

En todos los casos de posibles percepciones, un agente


racional deberá emprender todas aquellas
acciones que favorezcan obtener el máximo de su
medida de rendimiento, basándose en las
evidencias aportadas por la secuencia de
percepciones y en todo conocimiento incorporado
en tal agente
Medida de rendimiento

Para cada conjunto de percepciones, el agente


toma la acción que maximiza su rendimiento
basado en la información de la percepción y su
propio conocimiento implícito

Medida del desempeño


Evalúa el cómo actúa el agente: o sea ¿qué tan
exitoso ha sido un agente?
Debe ser una medida objetiva
Medida de rendimiento

Esta medida depende de:


Del grado de éxito alcanzado
Secuencia de percepciones
Conocimiento acerca del medio
Acciones que puede emprender
Ejemplo de medida de rendimiento

 En el Segundo Torneo Nacional de Robots


Limpiadores 2005 (Xalapa, Veracruz, México), el
desempeño del agente fue establecido por un estándar
externo al agente, especificado mediante la fórmula de
evaluación diseñada por los organizadores:
Ejemplo de medida de rendimiento

PT es el puntaje total


El primer término evalúa la capacidad del agente

Para ello el piso a limpiar, rectangular, se divide


conceptualmente en celdas, en que CLi es la i-ésima
celda limpiada con éxito, o si se prefiere toma valor uno
si la celda se limpió, y cero en caso contrario

DAi es el valor de dificultad de acceso a la i-ésima celda


limpiada
Ejemplo de medida de rendimiento

El segundo término evalúa la persistencia del agente:


TMAX es el tiempo máximo de la prueba y TOPER es
el tiempo que el robot se mantuvo en operación

Si el robot trabaja durante toda la prueba no es


penalizado, si no la puede terminar, si lo es
Agente racional

Es necesario precisar que la racionalidad de un agente


se define en relación con el éxito esperado dado lo
que el agente ha percibido

Esto es, no podemos exigir a un agente que tome en


cuenta lo que no puede percibir, o haga lo que sus
efectores no pueden hacer
Agente racional

Por lo tanto, la racionalidad de un agente a un tiempo


dado depende de:

1. La medida de desempeño que define el estándar de


éxito

2. La secuencia de percepciones del agente, esto es,


todo lo que el agente halla percibido hasta el tiempo
dado
Agente racional

3. El conocimiento del agente sobre el medio


ambiente en el que está situado

4. La habilidad del agente, esto es, las acciones que el


agente puede llevar a cabo con cierta destreza
Agente racional

Un agente racional ideal es aquel que para toda


secuencia de percepciones posible, selecciona y ejecuta
una acción que se espera maximice la medida de
desempeño, con base en la información que proveen
su percepción y conocimiento sobre el ambiente

Entonces, es posible describir un agente por medio de


una tabla con las acciones que el agente toma en
respuesta a cada posible secuencia de percepciones
Agente racional

Esta tabla se conoce como el mapeo percepción-


acción

Por lo tanto un mapeo ideal describe a un agente ideal


y define el diseño de un agente ideal

A la búsqueda de un mecanismo que aproxime este


mapeo ideal, se le conoce como el problema de
selección de acción
Ejemplo de mapeo ideal

En el caso del daemon xbiff el mapeo ideal es muy


sencillo
Si el buzón contiene al menos un mensaje con la
etiqueta “nuevo”, desplegar el icono de mensaje nuevo

En cualquier otro caso, desplegar el icono de mensajes


leídos
Tipos de Agentes Inteligentes

Existen distintos tipos de agentes dependiendo de su


utilidad y del entorno en que trabajan

Además poseen distintas propiedades según su


actuación

Veamos las siguientes láminas:


Ejemplos de Agentes Inteligentes
Agentes
Medio ambiente

Por medio ambiente, entendemos el espacio donde


un agente, o un grupo de ellos, se encuentra
situado

Se considera que no es necesario que los agentes


tengan implementaciones robóticas porque los
ambientes virtuales, como los sistemas operativos y el
web, son igualmente válidos que el mundo real
Medio ambiente

Existen diferentes tipos de ambientes:

Observable versus parcialmente observable: si los


sensores de un agente le permiten percibir el estado
completo del ambiente en cada punto en el tiempo,
decimos que el ambiente es observable

Un ambiente es efectivamente observable si los


sensores del agente detectan todos los aspectos
relevantes para decidir que acción debe llevarse a cabo
Medio ambiente

Un ambiente puede ser parcialmente observable


debido a la imprecisión y el ruido en los sensores; o
bien porque algunos aspectos del ambiente caen fuera
del rango de lectura de los sensores
Medio ambiente

Determinista versus Estocástico: si el próximo


estado del ambiente está determinado por la acción
que ejecuta el agente, se dice que el ambiente es
determinista

Si otros factores influyen en el próximo estado del


ambiente, éste es estocástico
Medio ambiente

El carácter estocástico del ambiente captura dos


nociones importantes:

1. El hecho de que los agentes tienen una esfera de


influencia limitada, es decir, en el mejor de los casos
tienen un control parcial de su ambiente

2. El hecho de que las acciones de un agente pueden


fallar y no lograr el resultado deseado por el agente
Medio ambiente

Por ello, es más sencillo construir agentes en


ambientes deterministas

Si el ambiente es determinista, excepto para las


acciones de otros agentes, se dice que el ambiente es
estratégico
Medio ambiente

Episódico versus Secuencial: en un ambiente


episódico, la experiencia de un agente puede evaluarse en
rondas

Las acciones se evalúan en cada episodio o ronda, esto es,


la calidad de la acción en los episodios subsecuentes, no
depende de las acciones ocurridas en episodios previos

Un programa que juega ajedrez está en un ambiente


secuencial
Medio ambiente

Estático versus Dinámico: si el ambiente puede


cambiar mientras el agente se encuentra deliberando,
se dice que es dinámico; de otra forma, se dice
estático

Si el ambiente no cambia con el paso del tiempo, pero


si lo hace con las acciones del agente si lo hace, se dice
que el ambiente es semi-dinámico
Medio ambiente

Discreto versus Continuo: si hay un número limitado


de posibles estados del ambiente, distintos y claramente
definidos, se dice que el ambiente es discreto; de otra
forma se dice que es continuo

Es más fácil construir agentes en ambientes discretos,


porque los computadores también son sistemas discretos
y aunque es posible simular sistemas continuos con el
grado de precisión deseado, una parte de la información
disponible se pierde al hacer esta aproximación
Medio ambiente

Individual versus Multi-Agente:

Un agente considerará a otra entidad como un agente


si su desempeño depende del comportamiento de esa
entidad

La clave aquí es el concepto de interacción que da


lugar a ambientes competitivos y cooperativos
Medio ambiente

Esta categorización sugiere que es posible encontrar


diferentes clases de ambientes

Cada ambiente, o clase de ambientes, requiere de alguna


forma agentes diferentes para que estos tengan éxito

La clase más compleja de ambientes corresponde a


aquellos que son inaccesibles, no episódicos, dinámicos,
continuos y multi-agente, lo que desgraciadamente
corresponde a nuestro ambiente cotidiano
Ejemplos de entorno de trabajo de un agente
Construcción de un agente

El trabajo consiste en diseñar un programa de agente, o


sea una función que implemente la selección de acción

Asumimos que tal programa se ejecutará en algún


dispositivo de cómputo, identificado como la
arquitectura del agente

La arquitectura de un agente puede ser un simple


computador, o puede incluir dispositivos hardware
especiales, como cámaras de vídeo, sonares, etc.
Construcción de un agente

Además, la arquitectura puede proveer software que


funcione como el sistema operativo del agente, por
ejemplo, que facilite la interacción del programa de
agente con la computadora donde se ejecuta, de forma
que el agente pueda ser programado a un nivel más
alto

La siguiente expresión resume la relación entre agente,


arquitectura y programa:
agente = arquitectura + programa
Construcción de un agente

Arquitectura: pone al alcance del programa las


percepciones obtenidas mediante los sensores, lo
ejecuta y alimenta el efector con acciones elegidas
por el programa conforme se van generando

Programa: es un algoritmo que recibe las percepciones


del agente y genera una secuencia de acciones
Construcción de un agente

La función que describe el comportamiento de un


agente se puede presentar en forma de tabla

Dado un agente, con el que se quiera experimentar, se


puede, en principio, construir esta tabla teniendo en
cuenta todas las secuencias de percepción y
determinando qué acción lleva a cabo el agente en
respuesta a esas percepciones
Construcción de un agente

La función del agente se implementa mediante el


programa del agente

Es importante diferenciar estas dos ideas: la función


del agente es una descripción matemática abstracta; el
programa del agente es una implementación completa,
que se ejecuta sobre la arquitectura del agente
Ejemplo: aspiradora

La aspiradora puede percibir en qué cuadrante se


encuentra y si hay suciedad en él

Puede elegir si se mueve hacia la izquierda, derecha,


aspirar la suciedad o no hacer nada

Una función muy simple para el agente vendría dada


por: si la cuadrícula en la que se encuentra está sucia,
entonces aspirar, de otra forma cambiar de cuadrícula
Ejemplo: aspiradora
Ejemplo: aspiradora
Ejemplo: aspiradora
Programas de los agentes

La estructura de un programa considera que el agente


recibe las percepciones actuales como entradas de los
sensores y devuelven una acción a los actuadores

Por ejemplo, la figura siguiente muestra un programa


de agente muy sencillo que almacena la secuencia de
percepciones y después las compara con las secuencias
almacenadas en la tabla de acciones para decidir qué
hacer
Programas de los agentes
Programas de los agentes

La tabla representa explícitamente la función que


define el programa del agente

Para construir un agente racional de esta forma, los


diseñadores deben realizar una tabla que contenga las
acciones apropiadas para cada secuencia posible de
percepciones
Programas de los agentes

 Intuitivamente se puede apreciar por qué la propuesta


de dirección mediante una tabla para la construcción de
agentes está condenada al fracaso

Sea P el conjunto de posibles percepciones y T el


tiempo de vida del agente (el número total de
percepciones que recibirá)

La tabla de búsqueda contendrá entradas


Programas de los agentes

 Por ejemplo la tabla de búsqueda del ajedrez (un


fragmento pequeño del mundo real) tiene por lo
menos entradas

Entonces el desafío clave de la IA es encontrar la


forma de escribir programas, que en la medida de lo
posible, reproduzcan un comportamiento racional a
partir de una pequeña cantidad de código en vez de a
partir de una tabla con un gran número de entradas
Agentes reactivos simples

El tipo de agente más sencillo es el agente reactivo simple

Este tipo de agente selecciona las acciones sobre la base de


las percepciones actuales ignorando el resto de las
percepciones históricas

Por ejemplo, el agente aspiradora cuya función de agente se


presenta en la siguiente figura es un agente reactivo simple
porque toma sus decisiones sólo con base en la localización
actual y si ésta está sucia
Ejemplo: aspiradora
Agentes reactivos simples

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 siguiente presenta la estructura de este


programa general de forma esquemática, mostrando
cómo las reglas de condición-acción permiten al agente
generar la conexión desde las percepciones a las acciones
Agentes reactivos simples
Agentes reactivos simples

Se usan rectángulos para denotar el estado interno


actual del proceso de toma de decisiones del agente y
óvalos para representar la información base utilizada
en el proceso

El programa del agente, que es muy simple, se muestra


en la siguiente figura
Agentes reactivos simples
Agentes reactivos simples

La función INTERPRETAR-ENTRADA genera una


descripción abstracta del estado actual a partir de la
percepción, y la función REGLA-COINCIDENCIA
devuelve la primera regla del conjunto de reglas que
coincide con la descripción del estado dada

Hay que tener en cuenta que la descripción en términos


de reglas y coincidencias es puramente conceptual; las
implementaciones reales pueden ser tan simples como
colecciones de puertas lógicas implementando un circuito
booleano
Agentes reactivos simples

Los agentes reactivos simples tienen la admirable


propiedad de ser simples pero poseen una inteligencia
muy limitada

Solo funcionará si se puede tomar decisión correcta


sobre la base de la percepción actual, lo cual es posible
sólo si el entorno es totalmente observable
Agentes reactivos simples

Los bucles infinitos son a menudo inevitables para los


agentes reactivos simples que operan en algunos
entornos parcialmente observables

Salir de los bucles infinitos es posible si los agentes


pueden seleccionar sus acciones aleatoriamente
Agentes reactivos basados en modelos

Este tipo de agente debe mantener algún tipo de


estado interno que dependa de la historia percibida y
que de ese modo refleje por lo menos alguno de los
aspectos no observables del estado actual

La actualización de la información del estado interno


según pasa el tiempo requiere codificar dos tipos de
conocimiento en el programa del agente
Agentes reactivos basados en modelos

Primero, se necesita alguna información acerca de


cómo evoluciona el mundo independientemente del
agente

Segundo, se necesita más información sobre cómo


afectan al mundo las acciones del agente (modelo del
mundo)
Agentes reactivos basados en modelos

La figura siguiente muestra la estructura del agente


reactivo simple con estado interno

Muestra cómo la percepción actual se combina con el


estado interno antiguo para generar la descripción
actualizada del estado actual

La figura posterior muestra el programa del agente


Agentes reactivos basados en modelos
Agentes reactivos basados en modelos
Agentes basados en objetivos

El conocimiento sobre el estado actual del mundo no


es siempre suficiente para decidir que hacer

Además de la descripción del estado actual, el agente


necesita algún tipo de información sobre su meta que
describa las situaciones que son deseables
Agentes basados en objetivos

El programa del agente se puede combinar con


información sobre los resultados de las acciones
posibles para elegir las acciones que permitan alcanzar
el objetivo

La figura siguiente muestra la estructura del agente


basado en objetivos
Agentes basados en objetivos
Agentes basados en objetivos

Búsqueda y planificación son los subcampos de la IA


centrados en encontrar secuencias de acciones que
permitan a los agentes alcanzar sus metas

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
Agentes basados en utilidad

Una alternativa a lo anterior es que el agente prefiera


un estado del mundo a otro porque es un estado que
tiene más utilidad que el otro para el agente

Una función de utilidad proyecta un estado (o una


secuencia de estados) en un número real que permite
tomar decisiones racionales en dos tipos de casos en los
que las metas son inadecuadas
Agentes basados en utilidad

Primero, cuando haya objetivos conflictivos, y solo se


puedan alcanzar algunos de ellos la función de utilidad
determina el equilibrio adecuado

Segundo, cuando haya varios objetivos por los que se


pueda guiar el agente, y ninguno de ellos se pueda
alcanzar con certeza, la utilidad proporciona un
mecanismo para ponderar la probabilidad de éxito en
función de la importancia de los objetivos
Agentes basados en utilidad
Agentes basados en utilidad

Un agente que posea una función de utilidad explícita


puede tomar decisiones racionales, y lo puede hacer
con la ayuda de un algoritmo de propósito general que
no dependa de la función específica de utilidad a
maximizar
Agentes que aprenden

Se trata de construir agentes que aprendan y después


enseñarles

En muchas áreas de la IA, este es ahora el método más


adecuado para crear sistemas novedosos

El aprendizaje permite que el agente opere en medios


inicialmente desconocidos y que sea más competente
que si sólo se utilizase el conocimiento inicial
Agentes que aprenden

Un agente que aprende se puede dividir en cuatro


componentes conceptuales, tal y como se muestra en
la siguiente figura

La distinción más importante entre el elemento de


aprendizaje y el elemento de actuación es que el
primero está responsabilizado de hacer mejoras y el
segundo se responsabiliza de la selección de acciones
externas
Agentes que aprenden
Agentes que aprenden

El elemento de actuación es lo que anteriormente se


había considerado como el agente completo: recibe
estímulos y determina las acciones a realizar

El elemento de aprendizaje se realimenta con las


críticas sobre la actuación del agente y determina
cómo se debe modificar el elemento de actuación
para proporcionar mejores resultados en el futuro
Agentes que aprenden

La crítica indica al elemento de aprendizaje qué tal


lo está haciendo el agente con respecto a un nivel de
actuación fijo

La crítica es necesaria porque las percepciones por sí


mismas no prevén una indicación del éxito del agente
Agentes que aprenden

El generador de problemas es el responsable de


sugerir acciones que lo guiarán hacia experiencias
nuevas e instructivas
Si el agente está dispuesto a explorar un poco, y llevar
a cabo algunas acciones que no sean totalmente
óptimas a corto plazo puede descubrir acciones
mejores a largo plazo

El trabajo del generador de problemas es sugerir estas


acciones exploratorias
Agentes que aprenden

En resumen, los agentes tienen una gran variedad de


componentes, y estos componentes se pueden
representar de muchas formas en los programas de
agentes, por lo que parece haber una gran variedad de
métodos de aprendizaje
Agentes que aprenden

Existe, sin embargo, una visión unificada sobre un


tema fundamental: el aprendizaje en el campo de los
agentes inteligentes puede definirse como el proceso
de modificación de cada componente del agente, lo
cual permite a cada componente comportarse más en
consonancia con la información que se recibe, lo que
por tanto permite mejorar el nivel medio de
actuación del agente
Agentes Inteligentes
Profesor: Héctor Soza P.

También podría gustarte