Un agente es cualquier cosa capaz de percibir su medioambiente con la ayuda de sensores y actuar en ese medio utilizando actuadores. Un agente humano tiene ojos, oídos y otros órganos sensoriales además de manos, piernas, boca y otras partes del cuerpo para actuar. 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.
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. En general, un agente tomara una decisión en un momento dado dependiendo de la secuencia completa de percepciones hasta ese instante. Si se puede especificar qué decisión tomará un agente para cada una de las posibles secuencias de percepciones, entonces se habrá explicado más o menos todo lo que se puede decir de un agente. 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.
Un agente racional es aquel que hace lo correcto; en términos conceptuales, cada elemento de la tabla que define la función del agente se tendría que rellenar correctamente. 0bviamente, hacer lo correcto es mejor que hacer algo incorrecto. Las medidas de rendimiento incluyen los criterios que determinan el éxito en el comportamiento del agente. Cuando se sitúa un agente en un medio, este genera una secuencia de acciones de acuerdo con las percepciones que recibe. Esta secuencia de acciones hace que su hábitat pase por una secuencia de estados. Si la secuencia es la deseada, entonces el agente habrá actuado correctamente.
La racionalidad es un momento determinado depende de cuatro factores:
1. La medida de rendimiento que define el criterio de éxito.
2. El conocimiento del medio en el que habita acumulado por el agente.
3. Las acciones que el agente puede llevar a cabo.
4. La secuencia de percepciones del agente hasta este momento.
Esto nos lleva a la definición del 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.
Es necesario tener cuidado al distinguir entre racionalidad y omnisciencia. Un agente omnisciente conoce el resultado de su acción y actúa de acuerdo con él; sin embargo, en realidad la omnisciencia no es posible.
Llevar a cabo acciones con la intención de modificar percepciones futuras, en ocasiones proceso denominado recopilación de información, es una parte importante de la racionalidad.
La definición propuesta implica que el agente racional no sólo recopile información, sino que aprenda lo máximo posible de lo que está percibiendo. La configuración inicial del agente puede reflejar un conocimiento preliminar del entorno, pero a medida que el agente adquiere experiencia éste puede modificarse y aumentar.
Se dice que un agente carece de autonomía cuando se apoya más en el conocimiento inicial que le proporciona su diseñador que en sus propias percepciones. Un agente racional debe ser autónomo, debe saber aprender a determinar cómo tiene que compensar el conocimiento incompleto o parcial inicial.
En la discusión de la racionalidad de un agente aspiradora simple, hubo que especificar las medidas de rendimiento, el entorno, y los actuadores y sensores del agente. Todo ello forma lo que se llama el entorno de trabajo, para cuya denominación se utiliza el acrónimo REAS (Rendimiento, Entorno, Actuadores, Sensores). En el diseño de un agente, el primer paso debe ser siempre especificar el entorno de trabajo de la forma más completa posible.
El trabajo de la IA es diseñar el programa del agente que implemente la función del agente que proyecta las percepciones en las acciones. Se asume que este programa se ejecutará en algún tipo de computador con sensores físicos y actuadores, lo cual se conoce como arquitectura:
Agente = arquitectura + programa
Obviamente, el programa que se elija tiene que ser apropiado para la arquitectura. Si el programa tiene que recomendar acciones como “Caminar”, la arquitectura tiene que tener piernas. En general, la arquitectura hace que las percepciones de los sensores estén disponibles para el programa, ejecuta los programas, y se encarga de que los actuadores pongan en marcha las acciones generadas.
Los programas de los agentes reciben sólo la percepción actual como entrada porque no hay nada más disponible en el entorno; si las acciones del agente dependen de la secuencia completa de percepciones, el agente tendría que recordar las percepciones.
En lo resta de esta sección se presentan los cuatro tipos básicos de programas para agentes que encarnan los principios que subyacen en casi todos los sistemas inteligentes.
1. Agentes reactivos simples: Estos agentes seleccionan las acciones sobre la base de las percepciones actuales, ignorando el resto de las percepciones históricas.
2. Agentes reactivos basados en modelos: Estos agentes son los que hacen uso de un modelo del mundo, este modelo nos brinda la información sobre cómo es que evoluciona el mundo independientemente del agente, y de cómo es que afecta al mundo las acciones del agente.
3. Agentes basados en objetivos: Estos agentes nos demuestran que el hecho de conocer sobre el estado actual del mundo no es suficiente para decidir qué hacer, por lo que estos agentes están hacen su selección de acciones basadas en objetivos.
4. Agentes basados en utilidad: Estos agentes nos demuestran que las metas por si solas no son realmente suficientes para generar comportamiento de calidad, ya que las metas solo proporcionan una cruda distinción binaria entre estados, mientras que una medida de eficiencia mas general debería permitir una comparación entre estados del mundo diferentes de acuerdo al nivel exacto del estado al que el agente alcanza cuando se llega a un estado u otro.
Agentes que aprenden
Turing considero la idea de construir maquinas inteligentes, el método que él propuso fue el de construir maquinas que aprendan y posteriormente enseñen. En muchas áreas de IA este es un método utilizado para crear sistemas de estado de arte. El aprendizaje tiene la ventaja de permitir operar a los agentes en entornos inicialmente desconocidos y volverse competentes conforme pasa el tiempo a partir de su conocimiento inicial.
Un agente que aprende puede ser dividido en cuatro componentes conceptuales:
1. Una crítica: indica al elemento de aprendizaje que tal lo está haciendo el agente con respecto a un nivel de actuación fijo.
2. Un elemento de aprendizaje: responsable de desarrollar mejoras.
3. Un elemento de desempeño: responsable de seleccionar las acciones externas con base en las percepciones.
4. Un generador de problemas: responsable de sugerir acciones que le conduzcan a experiencias con nueva información.
En la siguiente imagen se observa el modelo general para agentes que comprenden.