Hace unos años, los agentes inteligentes eran la gran promesa de la inteligencia artificial. Pero esa promesa, al igual que ha pasado históricamente con la propia inteligencia artificial, parece que no ha podido hacerse realidad. Y la razón de ese fracaso, en mi opinión es que la propia inteligencia artificial no ha avanzado lo suficiente, no el paradigma de agente inteligente.
Según la wikipedia, un agente inteligente es (a grandes rasgos) una entidad que observa y actúa en un entorno para intentar alcanzar unos objetivos. Los agentes inteligentes hay que entenderlos más cómo un paradigma de diseño que cómo una solución a un problema. Y entendidos como un paradigma de diseño, son innegablemente útiles, ya que sirven para modelar un programa siguiendo un comportamiento inspirado en el de los seres vivos. También sirven para implementar la noción de agente situado en un entorno, que permite definir los límites en el sistema y así mejorar el rendimiento nuestro agente: no es necesario diseñar un agente que opere en cualquier entorno, sino uno que lo haga en el entorno que hemos definido. Lo importante para diseñar el agente no es sólo los objetivos, sino el entorno y la interacción con el mismo.
Sin embargo, el hecho de usar este paradigma no ayuda a resolver por sí mismo los problemas. Hay otro factor importante: a veces se plantea un problema en términos de agentes inteligentes y se espera que el simple planteamiento en estos términos sirva para resolver el problema. La realidad es que el problema es complejo de resolver empleando cualquier paradigma, el problema es complejo en términos absolutos, da igual cómo lo resolvamos.
Los agentes son una forma de modelar una solución problema, que ayudan en la división de problemas complejos y en la comunicación entre distintas entidades. Sin embargo mi opinión es que no mejoran por sí mismos la inteligencia del sistema. Podrían mejorar la inteligencia global por agregación de varias entidades inteligentes, apareciendo un comportamiento complejo por emergencia (varias mentes sencillas cooperando en paralelo en el mismo problema). Pero en general, si los agentes no son lo suficientemente inteligentes, es difícil que su inteligencia colectiva mejore lo suficiente por emergencia.
Así que mientras no mejoren los algoritmos en bruto de la inteligencia artificial, no creo que mejore la capacidad de los agentes inteligentes. Es por eso que si la inteligencia artificial no ha terminado de tener éxito, tampoco los agentes inteligentes lo tendrán.
Al final la realidad es que necesitamos otras técnicas de inteligencia artificial cómo el aprendizaje automático, las redes neuronales, redes bayesianas, o los motores de reglas. Quizá tengamos que descubrir algo nuevo, cómo por ejemplo, la memoria jerárquica temporal de numenta.
Lo que sí creo que facilitan los agentes inteligentes, aunque desconozco si se está utilizando o no, es la implementación de sistemas mixtos. El uso de varias técnicas se puede aunar utilizando agentes inteligentes, al usar los objetivos del agente cómo criterio unificador. Por ejemplo, en el caso de perseguir unos objetivos u otros se puede emplear unas técnicas de inteligencia artificial u otras. O se podrían mezclar los resultados de diferentes técnicas aplicadas al mismo problema, evaluando los resultados de cada técnica en vista de los objetivos del agente.
Éste es el sentido más apropiado que veo al diseño de aplicaciones mediante agentes, la unificación de distintas técnicas de inteligencia artificial, pero en cualquier caso los agentes están limitados por la capacidad de las distintas técnicas de inteligencia artificial.
Quizá cuándo se consiga dar ése salto de calidad, es posible que la emergencia de un comportamiento agregado de agentes nos lleve a otro nivel de inteligencia artificial colectiva más avanzada, pero por ahora es especulación.