Los Agentes y su entorno
Universidad Nacional “José Faustino Sánchez Carrión”
Facultad de Ingeniería Industrial, Sistemas e Informática
Escuela Profesional de Ingeniería Informática Agente (Diccionario RAE):
Que obra o tiene virtud de obrar.
Persona que actúa en representación de otro (agente artístico, comercial,
inmobiliario, de seguros, de bolsa, etc).
Un agente es cualquier cosa capaz de percibir su medioambiente con la ayuda de
sensores y actuar en ese medio utilizando actuadores.
Sistemas Inteligentes
Sesión 02 Un agente es un sistema conformado por hardware y/o software que basa su
comportamiento en las percepciones que tiene del medio ambiente mediante
sus sensores y en las reglas de comportamiento incorporadas en el software.
Ing. CIP Renzo I. Vergara Quiche Agentes software (softbots): Aplicaciones informáticas con capacidad para
decidir cómo deben actuar para alcanzar sus objetivos
renzovergaraq@[Link]
Agentes inteligentes: Agentes software que pueden funcionar fiablemente en un
entorno rápidamente cambiante e impredecible
Ejemplos: Labores diarias realizadas en internet, Comprar por internet (la tienda en
casa), Sistema de diagnóstico médico, Análisis de imágenes satelitales, Robot ensamblador
de partes, Controlador de una refinería
Tipificando a un agente Agente
ENTRADAS Procesos INTERNOS
Sensor del ambiente Conoce
Comprensión/
intencionalidad
Ve
Oye Razona
Toca
Gusta
Huele
Comportamiento
SALIDAS
Agente según Wooldridge - 1995 Reactivo
Un agente es un sistema de computación capaz de actuar de Si se garantiza que el ambiente de un programa es fijo, este
no necesita preocuparse por su propio éxito o fracaso el
forma autónoma y flexible en un entorno, entendiendo
programa simplemente se ejecuta ciegamente.
por flexible que sea:
Ejemplo ambiente fijo: Un compilador
– Reactivo: El agente es capaz de responder a cambios en el entorno El mundo real no es fijo: las cosas cambian y la información
en que se encuentra situado. es incompleta. La mayoría de los ambientes interesantes
son dinámicos.
– Pro-activo: El agente debe ser capaz de intentar cumplir sus El software para dominios dinámicos es difícil de construir:
propios planes u objetivos. los programas deben tener en cuenta la posibilidad de
falla preguntarse a sí mismos si vale la pena realizar una
– Social: Debe poder comunicarse con otros agentes mediante algún acción.
tipo de lenguaje de comunicación de agentes. Un sistema reactivo es aquel que mantiene una interacción
constante con su ambiente, y responde a los cambios que
ocurren en este (en un tiempo es que la respuesta es útil)
1
Pro-Activo Habilidad Social
El mundo real es un ambiente multi-agente: no podemos ir
Reaccionar ante un ambiente es fácil (por ejemplo:
por ahí tratando de alcanzar metas sin tomar en cuenta a
reglas estímulo-respuesta)
los otros.
Pero, generalmente queremos agentes que hagan
Algunas metas sólo pueden ser alcanzadas con la
cosas por nosotros.
cooperación de otros.
Esto requiere: comportamientos orientados a metas
Lo mismo ocurre con muchos ambientes computacionales,
Pro-actividad = generar y tratar de alcanzar metas; no ejemplo: Internet.
guiarse solamente por los eventos; tomar la iniciativa
La habilidad social en agentes es la habilidad de
Reconocer oportunidades. interactuar con otros agentes (y posiblemente con
humanos) por medio de algún tipo de lenguaje de
comunicación de agentes, y quizás cooperar con otros.
Otras Propiedades de Agentes - Franklin Otras Propiedades de Agentes – Navaja
suiza de Parunak
Continuidad Temporal: se considera un agente un proceso sin fin, ejecutándose
continuamente y desarrollando su función.
Autonomía: un agente es completamente autónomo si es capaz de actuar
basándose en su experiencia, es capaz de adaptarse aunque el entorno cambie
severamente. Una definición menos estricta de autonomía sería cuando el agente
percibe el entorno.
Sociabilidad: permite a un agente comunicar con otros agentes o incluso con otras
entidades.
Racionalidad: el agente siempre realiza “lo correcto” a partir de los datos que
percibe del entorno.
Reactividad: un agente actúa como resultado de cambios en su entorno. En este
caso, un agente percibe el entorno y esos cambios dirigen el comportamiento del
agente.
Pro-actividad: un agente es pro-activo cuando es capaz de controlar sus propios
objetivos a pesar de cambios en el entorno.
Adaptatividad: está relacionado con el aprendizaje que un agente es capaz de
realizar y si puede cambiar su comportamiento basándose en ese aprendizaje.
Movilidad: capacidad de un agente de trasladarse a través de una red telemática.
Veracidad: asunción de que un agente no comunica información falsa a propósito.
Benevolencia: asunción de que un agente está dispuesto a ayudar a otros agentes
si esto no entra en conflicto con sus propios objetivos.
Otras propiedades de Agentes - Nwana Buen comportamiento:
¿Qué es un agente racional?
En cada posible secuencia de percepciones, un agente racional deberá
emprender aquella acción que supuestamente maximice su medida de
rendimiento, basándose en las evidencias aportadas por la secuencia de
percepciones y en el conocimiento que el agente mantiene almacenado
Considerar:
Ser Racional (maximiza el rendimiento esperado) no significa ser
omnisciente(maximiza el resultado real)
Ser Racional no es ser clarividente
Ser Racional ideal entra en conflicto con el PRR (Principio de Racionalidad
Restringida).
Un agente es algo que razona, un agente informático debe tener otros atributos
que los distingan de los “programas convencionales” (dotados de controles
autónomos, perciban su entorno, que persistan durante un periodo de tiempo
prolongado, que se adapten a los cambios, y que sean capaces de alcanzar objetivos
diferentes”.
Un Agente Racional es aquel que actúa con la intención de alcanzar el
mejor resultado o, cuando hay incertidumbre, el mejor resultado esperado
2
De qué depende la Racionalidad La naturaleza del entorno de trabajo
Ejemplo: REAS de un agente “taxista automático”
Rendimiento: Seguro, rápido, legal, viaje confortable, maximización del beneficio
Entorno: Carreteras, otro tráfico, peatones, clientes
Actuadores: Dirección, acelerador, freno, señal, bocina, visualizador
Sensores: Cámaras, sonar, velocímetro, GPS, tacómetro, visualizador de la
aceleración, sensores del motor, teclado
Ejemplo: PAMA de un agente “taxista automático”
Percepciones: Video, acelerómetro, instrumental del tablero, sensores del motor,
teclado
La medida de rendimiento que define el criterio de éxito
Acciones: gestión del volante, acelerar y frenar, bocina, hablar/graficar
Cuánto conoce el agente del ambiente en que opera
Metas: seguridad, llegar a destino, maximizar ganancias, obedecer las leyes,
Las acciones que el agente esté en condiciones de realizar satisfacción del cliente
La secuencia de percepciones - todo lo que el agente ha percibido hasta Ambiente: calles urbanas, avenidas, tráfico, peatones, clima, tipo de cliente
ahora (gestión de la memoria).
Otros ejemplos de REAS
Propiedades de los entornos de trabajo
Accesible (totalmente observable) / Inaccesible
(parcialmente observable)
Si los sensores proporcionan todo lo que hay que saber sobre el estado
completo del ambiente - necesario para elegir una acción - entonces el
ambiente es accesible al agente. Esos ambiente resultan convenientes,
ya que liberan al agente de la tarea de mantener actualizado su
inventario del mundo.
Determinístico / No-determinístico (estocástico)
Si el estado siguiente del ambiente está determinado plenamente por el
estado presente del mismo, y por la acción del agente - se trata de un
ambiente determinístico. Así el agente escapa de la incertidumbre.
Episódico / No-episódico (secuencial)
Un ambiente episódico implica que los episodios siguientes no dependen
de las acciones que ocurrían en episodios previos (como en las clásicas
cadenas de Markov). Esto le autoriza al agente que no se deba
preocupar por la planificación de lo que puede ocurrir.
Propiedades de los entornos de trabajo
Ejemplos de los entornos de trabajo
Estático / Dinámico
Será estático todo ambiente que no cambie mientras el agente está
pensando. No tiene importancia el tiempo que se usa en pensar y no
necesita monitorear el mundo mientras piensa. El tiempo carece de valor
mientras se computa una buena estrategia. En el otro caso será
dinámico.
Discreto / Continuo
Discreto - con escaso número de percepciones y acciones en el
ambiente.
Continuo - el otro caso.
Sin adversario / con adversarios racionales
Sin adversario - ausencia de otros agentes racionales adversarios: la
consecuencia es que el agente se libera de la preocupación de la
estrategia de dichos adversarios en el mismo juego.
Los ambientes ingenieriles suelen ser sin adv ersario.
Los ambientes sociales y económicos aumentan en su complejidad por la
presencia de interacciones entre uno o más adversarios (por ejemplo en
la Bolsa).
3
Tipos de Agentes
Estructura de los Agentes
No Bien informados de lo que pasa
Tabla-intensivos
para encontrar la acción siguiente usar una tabla en memoria del
tipo “secuencia de percepciones”/acción. Se trata de una tabla
bastante voluminosa para repetir la acción ya experimentada antes.
Agentes reactivo simple
se basan en reglas condición/acción y se implementan con un
sistema de PRODUCCIÓN. Carecen de memoria referente a estados
pasados del mundo.
Bien informados de lo que pasa
Agentes reactivo simple con memoria
con un estado interno usado para seguirle la pista a los estados
pasados del mundo.
Agentes meta-intensivos
El cometido de la IA es el diseño de un Programa de Agente: una función que permita
además de disponer de información sobre el estado, tienen una clase
implantar el mapeo del agente para pasar por el “sandwich” de percepciones a de información sobre la meta que describe situaciones deseables.
acciones. Este programa se ejecutará en algún tipo de dispositiv o de cómputo, al que se Agentes de este tipo tienen bajo consideración eventos del futuro.
denominará arquitectura (puede ser una computadora sencilla o hardware especial). En Utilidad-intensivos
algunos ámbitos se utilizan agentes de software (o robots de software o softbots).
basan su decisión en la teoría axiomática clásica de la utilidad para
actuar racionalmente.
Agente = arquitectura + programa
Agente reactivo simple Agente reactivo simple con estado interno
sensores sensores
Cómo es el mundo Estado Cómo es el mundo
en este momento ? en este momento ?
Cómo evoluciona el mundo ?
Qué producen mis acciones ?
Qué acción debo Reglas de condición-acción
Qué acción debo
Reglas de condición-acción emprender en este
emprender en este
momento ? momento ?
efectores
efectores
Agentes basado en metas Agentes basado en utilidad
sensores sensores
Estado Cómo es el mundo Estado Cómo es el mundo
en este momento ?
en este momento ?
Cómo evoluciona el mundo ? Cómo evoluciona el mundo ?
Qué sucedería si Qué sucedería si
emprendo la acción A ? Qué producen mis acciones ?
emprendo la acción A ?
Qué producen mis acciones ?
Qué tan a gusto me
Utilidad encontraré en tal
estado ?
Qué acción debo Qué acción debo
Metas
emprender en este emprender ahora ?
momento ?
efectores efectores
4
Agentes que aprenden En conclusión:
Un agente percibe y actúa en un cierto ambiente, posee una dada arquitectura
y está implementado a través de un programa de agente.
Nivel de actuación
Un agente ideal (omnisciente) siempre elige aquella acción mediante la cual se
maximiza su logro esperado, sujeta a la secuencia de percepciones recibida
hasta ese momento.
Critica Sensor
Un agente autónomo usa su experiencia propia en lugar de usar conocimiento
incorporado por su diseñador referente al ambiente.
Un programa de agente mapea la ruta entre percepción y acción y actualiza el
Retroalimentación
Medio Ambiente
estado interno de dicho agente.
Un agente reflejo (o reactivo) responde de inmediato a las percepciones.
cambios
Elemento de Elemento Un agente meta-intensivo (o basado en metas) actúa de tal manera de obtener
aprendizaje de actuación el logro de su meta internalizada.
conocimiento
Un agente utilidad – intensivo (o basado en utilidad) maximiza su propia función
Objetivos a de utilidad.
aprender Poder representar el conocimiento (y a veces lograr que ese conocimiento
pueda ser legible por el humano) es importante para que el diseño tenga éxito.
Generador de
Actuadores Los ambientes cambian y se presentan como dramáticamente más difíciles para
problema
unos agentes que para otros. Los más difíciles son los ambientes inaccesibles, no-
determinísticos, no-episódicos, dinámicos y continuos. Un ambiente fácil es el
representado por un robot encargado de hacer tostadas.