En inteligencia artificial, un agente inteligente ( IA ) es un agente que percibe su entorno , toma acciones de forma autónoma para alcanzar objetivos y puede mejorar su rendimiento con el aprendizaje o la adquisición de conocimientos . Un agente inteligente puede ser simple o complejo: un termostato u otro sistema de control se considera un ejemplo de agente inteligente, al igual que un ser humano , al igual que cualquier sistema que cumpla con la definición, como una empresa , un estado o un bioma . [1]
Los principales libros de texto sobre IA definen la "inteligencia artificial" como el "estudio y diseño de agentes inteligentes", una definición que considera que el comportamiento orientado a objetivos es la esencia de la inteligencia. Los agentes orientados a objetivos también se describen utilizando un término tomado de la economía , " agente racional ". [1]
Un agente tiene una "función objetivo" que encapsula todos los objetivos de la IA. Un agente de este tipo está diseñado para crear y ejecutar cualquier plan que, una vez completado, maximice el valor esperado de la función objetivo. [2] Por ejemplo, un agente de aprendizaje por refuerzo tiene una "función de recompensa" que permite a los programadores moldear el comportamiento deseado de la IA, [3] y el comportamiento de un algoritmo evolutivo está determinado por una "función de aptitud". [4]
Los agentes inteligentes en inteligencia artificial están estrechamente relacionados con los agentes en economía , y se estudian versiones del paradigma del agente inteligente en la ciencia cognitiva , la ética y la filosofía de la razón práctica , así como en muchos modelos sociocognitivos interdisciplinarios y simulaciones sociales por computadora .
Los agentes inteligentes suelen describirse esquemáticamente como un sistema funcional abstracto similar a un programa informático. Las descripciones abstractas de los agentes inteligentes se denominan agentes inteligentes abstractos ( AIA ) para distinguirlos de sus implementaciones en el mundo real. Un agente inteligente autónomo está diseñado para funcionar en ausencia de intervención humana. Los agentes inteligentes también están estrechamente relacionados con los agentes de software (un programa informático autónomo que realiza tareas en nombre de los usuarios).
Inteligencia artificial: un enfoque moderno [5] [6] [2] define un "agente" como
"Todo aquello que pueda ser visto como algo que percibe su entorno a través de sensores y actúa sobre ese entorno a través de actuadores"
Se define un "agente racional" como:
"Un agente que actúa de manera de maximizar el valor esperado de una medida de desempeño basándose en la experiencia y el conocimiento pasados".
También define el campo de la "investigación en inteligencia artificial" como:
"El estudio y diseño de agentes racionales"
Padgham y Winikoff (2005) coinciden en que un agente inteligente está situado en un entorno y responde de manera oportuna (aunque no necesariamente en tiempo real) a los cambios en el entorno. Sin embargo, los agentes inteligentes también deben perseguir objetivos de manera proactiva, flexible y robusta. [a] Los desiderata opcionales incluyen que el agente sea racional y que sea capaz de realizar análisis de creencias, deseos e intenciones . [7]
Kaplan y Haenlein definen la inteligencia artificial como “la capacidad de un sistema para interpretar correctamente datos externos, aprender de dichos datos y utilizar esos aprendizajes para lograr objetivos y tareas específicos mediante una adaptación flexible”. [8] Esta definición está estrechamente relacionada con la de agente inteligente.
Filosóficamente, esta definición de inteligencia artificial evita varias líneas de crítica. A diferencia de la prueba de Turing , no se refiere de ninguna manera a la inteligencia humana. Por lo tanto, no hay necesidad de discutir si se trata de inteligencia "real" o "simulada" (es decir, inteligencia "sintética" o "artificial") y no indica que dicha máquina tenga una mente , conciencia o entendimiento verdadero (es decir, no implica la " hipótesis de IA fuerte " de John Searle). Tampoco intenta trazar una línea divisoria nítida entre comportamientos que son "inteligentes" y comportamientos que son "no inteligentes"; los programas solo necesitan ser medidos en términos de su función objetiva.
Más importante aún, tiene una serie de ventajas prácticas que han ayudado a hacer avanzar la investigación de la IA. Proporciona una forma fiable y científica de probar programas; los investigadores pueden comparar directamente o incluso combinar diferentes enfoques para problemas aislados, preguntándose qué agente es el mejor para maximizar una determinada "función objetivo". También les da un lenguaje común para comunicarse con otros campos, como la optimización matemática (que se define en términos de "objetivos") o la economía (que utiliza la misma definición de " agente racional "). [9]
Un agente al que se le asigna una "función objetivo" explícita se considera más inteligente si realiza acciones consistentemente que maximicen con éxito su función objetivo programada. El objetivo puede ser simple ("1 si la IA gana un juego de Go , 0 en caso contrario") o complejo ("Realizar acciones matemáticamente similares a las que tuvo éxito en el pasado"). La "función objetivo" encapsula todos los objetivos que el agente se ve obligado a cumplir; en el caso de los agentes racionales, la función también encapsula las compensaciones aceptables entre el logro de objetivos en conflicto. (La terminología varía; por ejemplo, algunos agentes buscan maximizar o minimizar una " función de utilidad ", "función objetivo" o " función de pérdida "). [6] [2]
Los objetivos pueden definirse explícitamente o inducirse. Si la IA está programada para el " aprendizaje de refuerzo ", tiene una " función de recompensa " que fomenta algunos tipos de comportamiento y castiga otros. Alternativamente, un sistema evolutivo puede inducir objetivos utilizando una " función de aptitud " para mutar y replicar preferentemente los sistemas de IA con puntajes altos, de manera similar a cómo evolucionaron los animales para desear de manera innata ciertos objetivos, como encontrar comida. [10] Algunos sistemas de IA, como el vecino más cercano, en lugar de razonar por analogía, generalmente no reciben objetivos, excepto en la medida en que los objetivos estén implícitos en sus datos de entrenamiento. [11] Dichos sistemas aún pueden evaluarse si el sistema sin objetivos se enmarca como un sistema cuyo "objetivo" es lograr su tarea de clasificación estrecha. [12]
Los sistemas que tradicionalmente no se consideran agentes, como los sistemas de representación del conocimiento, a veces se incluyen en el paradigma al enmarcarlos como agentes que tienen como objetivo (por ejemplo) responder preguntas con la mayor precisión posible; el concepto de "acción" se extiende aquí para abarcar el "acto" de dar una respuesta a una pregunta. Como extensión adicional, los sistemas impulsados por el mimetismo pueden enmarcarse como agentes que optimizan una "función objetivo" en función de cuán cerca la IA logra imitar el comportamiento deseado. [6] [2] En las redes generativas adversarias de la década de 2010, un componente "codificador"/"generador" intenta imitar e improvisar la composición de texto humano. El generador intenta maximizar una función que encapsula cuán bien puede engañar a un componente "predictor"/"discriminador" antagónico. [13]
Aunque los sistemas de IA simbólica suelen aceptar una función de objetivo explícita, el paradigma también se puede aplicar a las redes neuronales y a la computación evolutiva . El aprendizaje de refuerzo puede generar agentes inteligentes que parecen actuar de maneras destinadas a maximizar una "función de recompensa". [14] A veces, en lugar de establecer la función de recompensa para que sea directamente igual a la función de evaluación de referencia deseada, los programadores de aprendizaje automático utilizarán la modelación de recompensa para dar inicialmente a la máquina recompensas por el progreso incremental en el aprendizaje. [15] Yann LeCun afirmó en 2018: "La mayoría de los algoritmos de aprendizaje que la gente ha ideado consisten esencialmente en minimizar alguna función objetivo". [16] El ajedrez AlphaZero tenía una función objetivo simple; cada victoria contaba como +1 punto y cada derrota contaba como -1 punto. Una función objetivo para un coche autónomo tendría que ser más complicada. [17] La computación evolutiva puede desarrollar agentes inteligentes que parecen actuar de maneras destinadas a maximizar una "función de aptitud" que influye en la cantidad de descendientes que se le permite dejar a cada agente. [4]
El formalismo matemático de AIXI se propuso como un agente de máxima inteligencia en este paradigma. [18] Sin embargo, AIXI es incomputable . En el mundo real, una IA está limitada por un tiempo finito y recursos de hardware, y los científicos compiten para producir algoritmos que puedan lograr puntuaciones progresivamente más altas en pruebas de referencia con el hardware existente. [19]
Un programa de agente simple se puede definir matemáticamente como una función f (llamada "función de agente") [20] que asigna cada posible secuencia de percepciones a una posible acción que el agente puede realizar o a un coeficiente, elemento de retroalimentación, función o constante que afecta las acciones eventuales:
La función del agente es un concepto abstracto, ya que podría incorporar varios principios de toma de decisiones, como el cálculo de la utilidad de opciones individuales, la deducción sobre reglas lógicas, la lógica difusa , etc. [21]
El agente del programa, en cambio, asigna cada percepción posible a una acción. [22]
Utilizamos el término percepción para referirnos a las entradas perceptivas del agente en un instante determinado. En las siguientes figuras, un agente es cualquier cosa que pueda considerarse que percibe su entorno a través de sensores y actúa sobre ese entorno a través de actuadores.
Russell y Norvig (2003) agrupan a los agentes en cinco clases según su grado de inteligencia y capacidad percibidas: [23]
Los agentes reflejos simples actúan únicamente en función de la percepción actual , ignorando el resto del historial de percepción. La función del agente se basa en la regla condición-acción : "si condición, entonces acción".
Esta función del agente solo funciona cuando el entorno es completamente observable. Algunos agentes reflejos también pueden contener información sobre su estado actual, lo que les permite ignorar las condiciones cuyos actuadores ya están activados.
Los bucles infinitos suelen ser inevitables para los agentes reflejos simples que operan en entornos parcialmente observables. Si el agente puede aleatorizar sus acciones, puede ser posible escapar de los bucles infinitos.
Un agente basado en modelos puede manejar entornos parcialmente observables. Su estado actual se almacena dentro del agente y mantiene algún tipo de estructura que describe la parte del mundo que no se puede ver. Este conocimiento sobre "cómo funciona el mundo" se denomina modelo del mundo, de ahí el nombre de "agente basado en modelos".
Un agente reflejo basado en modelos debe mantener algún tipo de modelo interno que dependa del historial de percepciones y, por lo tanto, refleje al menos algunos de los aspectos no observados del estado actual. El historial de percepciones y el impacto de la acción en el entorno se pueden determinar utilizando el modelo interno. Luego, elige una acción de la misma manera que el agente reflejo.
Un agente también puede utilizar modelos para describir y predecir los comportamientos de otros agentes en el entorno. [24]
Los agentes basados en objetivos amplían aún más las capacidades de los agentes basados en modelos al utilizar información sobre "objetivos". La información sobre objetivos describe situaciones deseables. Esto proporciona al agente una forma de elegir entre múltiples posibilidades y seleccionar la que alcance un estado objetivo. La búsqueda y la planificación son los subcampos de la inteligencia artificial dedicados a encontrar secuencias de acciones que logren los objetivos del agente.
Los agentes basados en objetivos sólo distinguen entre estados objetivo y estados no objetivo. También es posible definir una medida de lo deseable que es un estado en particular. Esta medida se puede obtener mediante el uso de una función de utilidad que asigna un estado a una medida de la utilidad del estado. Una medida de desempeño más general debería permitir una comparación de diferentes estados del mundo según lo bien que satisfagan los objetivos del agente. El término utilidad se puede utilizar para describir lo "feliz" que es el agente.
Un agente racional basado en la utilidad elige la acción que maximiza la utilidad esperada de los resultados de la acción, es decir, lo que el agente espera obtener, en promedio, dadas las probabilidades y utilidades de cada resultado. Un agente basado en la utilidad tiene que modelar y hacer un seguimiento de su entorno, tareas que han implicado una gran cantidad de investigación sobre la percepción, la representación, el razonamiento y el aprendizaje.
El aprendizaje tiene la ventaja de permitir a los agentes operar inicialmente en entornos desconocidos y volverse más competentes de lo que su conocimiento inicial les permitiría por sí solo. La distinción más importante es entre el "elemento de aprendizaje", responsable de realizar mejoras, y el "elemento de desempeño", responsable de seleccionar acciones externas.
El elemento de aprendizaje utiliza la retroalimentación del "crítico" sobre el desempeño del agente y determina cómo se debe modificar el elemento de desempeño, o "actor", para que funcione mejor en el futuro. El elemento de desempeño, que antes se consideraba el agente en su totalidad, recibe las percepciones y decide las acciones.
El último componente del agente de aprendizaje es el "generador de problemas", encargado de sugerir acciones que conduzcan a experiencias nuevas e informativas.
Weiss (2013) define cuatro clases de agentes:
En 2013, Alexander Wissner-Gross publicó una teoría relativa a la libertad y la inteligencia para agentes inteligentes. [25] [26]
Los agentes inteligentes pueden organizarse jerárquicamente en múltiples "subagentes". Los subagentes inteligentes procesan y realizan funciones de nivel inferior. En conjunto, el agente inteligente y los subagentes crean un sistema completo que puede lograr tareas o metas difíciles con comportamientos y respuestas que muestran una forma de inteligencia.
En general, se puede construir un agente dividiendo el cuerpo en sensores y actuadores, de modo que funcione con un sistema de percepción complejo que toma la descripción del mundo como entrada para un controlador y envía comandos al actuador. Sin embargo, a menudo es necesaria una jerarquía de capas de controlador para equilibrar la reacción inmediata deseada para tareas de bajo nivel y el razonamiento lento sobre objetivos complejos de alto nivel. [27]
"Agente inteligente" también se utiliza a menudo como un término vago, a veces sinónimo de " asistente personal virtual ". [28] Algunas definiciones del siglo XX caracterizan a un agente como un programa que ayuda a un usuario o que actúa en nombre de un usuario. [29] Estos ejemplos se conocen como agentes de software , y a veces a un "agente de software inteligente" (es decir, un agente de software con inteligencia) se le denomina "agente inteligente".
Según Nikola Kasabov , los sistemas de IA deberían presentar las siguientes características: [30]
Hallerbach et al. analizaron la aplicación de enfoques basados en agentes para el desarrollo y validación de sistemas de conducción automatizada a través de un gemelo digital del vehículo bajo prueba y una simulación de tráfico microscópica basada en agentes independientes. [31] Waymo ha creado un entorno de simulación de múltiples agentes, Carcraft, para probar algoritmos para automóviles autónomos . [32] [33] Simula interacciones de tráfico entre conductores humanos, peatones y vehículos automatizados. El comportamiento de las personas es imitado por agentes artificiales basados en datos del comportamiento humano real. La idea básica de utilizar modelos basados en agentes para comprender los automóviles autónomos se discutió ya en 2003. [34]