El desarrollo de comportamientos realistas por parte de máquinas ha sido una constante en la historia de los videojuegos y la aplicación de la informática al estudio en diferentes campos. Desde las investigaciones en el campo de la microbiología o las redes neuronales se ha pretendido emular de forma binaria comportamientos propios de la naturaleza y el ser humano. El ocio interactivo ha intentado emular estos procesos a baja escala con desigual éxito, y tras muchos avances en los diferentes campos del proceso creativo de cualquier título, parece que se ha dejado de lado esta faceta en pos de otras que demanda el mercado y no son del gusto de todos. Pero para poder entendernos mejor hay que hacer un pequeño viaje por todos estos menesteres tan propios de la ciencia ficción pero que sin duda llevan ya muchos años en boca de científicos y algún que otro visionario creativo.
¿Cómo definiría uno lo que es la inteligencia artificial? Así, a pelo y generalizando el concepto, Alan Turing, un señor que será bien conocido por los informáticos y telecos que se encuentren en la sala, definía la inteligencia de una máquina como su capacidad para aparentar de forma ilusoria y pasar por inteligente a ojos de un ser humano. Es decir, que se puede considerar a un ser ficticio inteligente en el momento en el que no supiéramos diferenciar si es una máquina o una persona cuando interactuamos con él. Si nos ponemos racionales y haciendo uso de su definición formal, la inteligencia artificial es la rama de la ciencia informática dedicada al desarrollo de agentes racionales no vivos, pero como ya de por sí el nombre y mis limitados conocimientos en dicho campo me impiden meterme en dilemas éticos de cara a una explicación válida, vamos a quedarnos con la que estipuló nuestro amigo Turing.
Sistemas expertos y maestros del ajedrez:
Uno de los subcampos del estudio de la IA que más ayuda ha reportado al hombre ha sido el de los sistemas expertos, que no son más que programas capaces de tomar decisiones en base a la información externa que se le proporcione con la única ayuda de una abrumadora velocidad de procesamiento y una base de datos capaz de elegir respuestas ante cualquier impulso dado. Este tipo de software ha sido usado de forma experimental en campos como la medicina, de forma que otorgándole al programa el cuadro médico del paciente, sus constantes vitales y otros tantos parámetros fisiológicos es capaz de deducir la dolencia o padecimiento que sufre. Todo el sistema no es más que el resultado una consulta que gestiona infinidad de variables y que retorna una respuesta predefinida y almacenada en él. Además, una vez que le confirmemos al programa la veracidad de sus conclusiones las almacenará como una respuesta válida y la próxima vez que se presenten unos síntomas parecidos a estos, los tomará como principal posibilidad. En definitiva y entrecomillándolo, “aprende” con la experiencia.
Empezando a dar alguna pincelada con respecto a las conclusiones que están por venir, podríamos asociar este tipo de resoluciones a los sistemas de autolevel que poseen algunos videojuegos. En ellos, durante los primeros compases de juego, se evalúan nuestras capacidades según nuestra pericia con el control, daño recibido y otras tantas variables acordes al género que tratemos, recomendándonos un modo de dificultad u otro. Véase el ejemplo de Left4Dead y su modo director, que modificará la cadencia de aparición de enemigos y su tipo según cómo estemos jugando.
En un grupo aparte estan las conocidas máquinas jugadoras que se especializan en un juego determinado. Véase el conocido caso de Deep Blue, el super ordenador de IBM que fue capaz de vencer al campeón del mundo de ajedrez Kasparov en 1996. Con una potencia de procesamiento capaz de calcular 200 millones de posiciones por segundo, basaba su potencial en que era capaz de preveer los próximos 40 movimientos al realizado y decidir cual era la estrategia correcta en base a calcular cual es la acción más beneficiosa. Y es que no es lo mismo deducir que decidir, y si no que se lo digan a Zapatero.
Sobre bots y npcs:
Una vez realicé un experimento con un amigo. En los tiempos del florecimiento de internet en las casas españolas, invité a un par de colegas a jugar en mi casa al Quake en red, práctica que ya habíamos realizado unas cuantas veces en los cibers que tanto se estilaban la pasada década. La gracia del asunto era que en realidad lo que les puse por delante no eran jugadores reales, sino bots controlados por la máquina, siendo el primer Quake quien inició la carrera de estos personajillos que se hacían pasar por humanos para que practicásemos en casita en mapas multiplayer. El caso es que mis colegas se tragaron completamente que estaban jugando con otras personas, lo cual demuestra que hace ya mucho tiempo que esa frontera se puede quebrantar fácilmente aunque con un análisis minucioso se puedan revelar tales suplantaciones.
Todavía estamos muy lejos de que seres artificiales sean capaces de interactuar con nosotros en los videojuegos de una forma totalmente funcional y autosuficiente, pero algoritmos procedurales que funcionen de una forma humana a ojos del jugador existen y han ido perfilándose hasta cotas que rozan comportamientos bastante realistas, aunque actualmente, con el segundo boom multimedia del medio, se esten invirtiendo todos los esfuerzos en apartados gráficos más que en rutinas de comportamiento para que la máquina sea un digno competidor y no se empotre contra muros o se vaya de cañas cuando nos alejamos un poco, que casos como esos hay a montones.
Un claro ejemplo de la simpleza de dichos aspectos en el mercado actual se puede palpar de forma directa en juegos como Dragon Age: Origins. En él, podemos asignar reacciones predefinidas a factores externos para nuestros personajes en un flexible sistema personalizable basado en los condicionantes primarios de la programación declarativa: El si/entonces. “Si te ataca un enemigo a distancia, lánzale una bola de fuego”, “si tu nivel de vida desciende a menos del 50% tómate una poción curativa”. Este sistema tan simplón a la vez que completo hace que si nos curramos un buen abanico de interacciones podamos desentendernos de ellos y centrarnos solo en nuestro monigote. Tal nivel de autosuficiencia es equiparable al de los propios enemigos que reaccionan de similar forma, por lo que si nos ponemos en el papel de los programadores, con un buen frontend se puede crear la IA de cada enemigo en menos de cinco minutos, y en fin… puede valer para salir del paso, pero en muchos casos deja al jugador con ganas de desafíos más motivadores, aunque ya estamos acostumbrados a estos menesteres y por desgracia no nos fijamos tanto en estas cosas como en otros aspectos.
La prehistoria de la no inteligencia:
Más por las limitaciones impuestas por el hardware que por la simpleza de los desarrolladores, los primeros “enemigos” a los que nos enfrentábamos en videojuegos no seguían pautas modificables en tiempo real, sino que se comportaban ateniendose a unos patrones predefinidos que no variaban hiciésemos lo que hiciésemos. Es el caso de los matamarcianos, cuyas mecánicas se han mantenido casi intactas desde sus inicios por mera tradición, esas naves que siguen siempre las mismas rutas y lo único que tenemos que hacer es esquivarlas era la única muestra de pseudohumanidad que podíamos sentir. A lo sumo podían sorprendernos con algún “random” puesto por ahí que les hiciera moverse en alguna dirección aleatoria, pero pocas peras más se le podían pedir al olmo a finales de los 70.
Uno de los primeros juegos que realmente proponía reacciones concretas a nuestros movimientos fue Pac-Man y sus fantasmas persecutores. Utilizando una heurística simplísima, cada fantasma tenía un comportamiento y “agresividad” diferente que se modificaba a medida que nos movíamos por el laberinto. Así, mientras unos intentaban atraparnos siguiéndonos por el camino más corto, otros se dedicaban a utilizar los túneles, a hacer algunos rodeos tontos o incluso ir a su bola para ver si por casualidad se cruzaban en nuestro camino.
Más tarde se estandarizó el uso de máquinas de estado finito. Ahora los enemigos podían variar sus acciones de forma transitoria según estímulos externos. Pongamos un ejemplo conocido por todos, los soldaditos de Metal Gear Solid y demás juegos de la saga. Mientras no les molestemos, se dedicarán a patrullar su zona de forma cíclica. Si por un casual nos ven, nos perseguirán por el camino más corto y al alcanzar cierta distancia nos dispararán con sus armas. Si nos matan volverán a hacer patrulla, pero si no, estarán un minuto buscándonos desesperadamente. Si en ese lapso de tiempo nos vuelven a encontrar, volverán a atacarnos, o si no, se resignarán y proseguirán con la guardia. El soldado tiene tres estados diferentes que irán variando según una serie de patrones. El siguiente esquema aclara el proceso, además de promover mi escasa habilidad con el PowerPoint.
No es baladí el hecho de haber mencionado un juego actual cuando en el párrafo anterior estaba hablando de títulos de hace más de dos décadas, y aunque las mecánicas jugables de los juegos de Kojima no han variado demasiado por su propia idiosincrasia, es un caso revelador para demostrar lo poco que ha cambiado la forma de dotar de inteligencia a los enemigos a lo largo de los años, y quien dice enemigos dice contrincantes deportivos. Para suplir las carencias de un sistema de estados tan propenso a fallar, siempre ha sido una constante el otorgar ventajas a la máquina para esconder dichas carencias. ¿Quién no ha acabado hasta los mismísimos de que por mucho que vayamos en cabeza en un Need for Speed y realicemos vueltas perfectas, tengamos a escasos metros al segundo clasificado sin despegarse ni un momento incluso cuando su vehículo tiene menor potencia? ¿O nadie recuerda esos ejércitos enemigos de un Command & Conquer o Warcraft cualquier que nada más comenzar la partida sabían de antemano nuestra posición ignorando la salomónica niebla de batalla?
En el país de los ciegos…
Ante este panorama tan desolador, unos pocos decidieron experimentar más allá de lo que se podía ver con propuestas que a veces no llegaron a tener toda la repercusión que deberían, pero que sin duda fueron todo un hito en el desarrollo de videojuegos y una toma de referencia para la industria en proyectos posteriores.
Antes de que Peter Molyneux empezase a chochear, ya había hecho sus pinitos en este campo a través de sus “god games”: Dungeon Keeper, Populous y Black & White, especialmente en la segunda parte de este último. En ella, encarnábamos a un dios que debía convencer a las masas para que le venerasen. El propio comportamiento de los feligreses según nuestras acciones ya era digno de mención, pero lo más interesante radicaba en el comportamiento de nuestros representantes en la tierra, una serie de animales gigantes que no podíamos controlar de forma directa, pero que gracias a una serie de simples herramientas podían aprender a valerse por si mismas, alimentarse, defenderse de los dioses enemigos y ayudar (o atemorizar) al pueblo según las enseñanzas que le hubiéramos instruido.
Will Wright también supo revolucionar la pseudo inteligencia digital lúdica (lamento el chorizo conceptual) con sus universales Sims. En un acercamiento algo más cercano a los patrones de comportamiento de los algoritmos genéticos (aunque muy muy pero muy en la distancia), se encuentran los protagonistas de estos simuladores de metavida que tienen sus propios gustos y hábitos, y que dependiendo de nuestra forma de educarlos triunfarán en la vida o serán unos despojos sociales. A efectos prácticos, estos ejemplos no son más que tamagotchis con muchas opciones y variables con un aprendizaje limitado y cuadriculado acorde a las exigencias del público al que va dirigida la experiencia.
Pero si de verdad queremos juguetear con un auténtico simulador de vida virtual, la única alternativa viable y asequible está en la creación del experto en vida artificial Steve Grand, Creatures. El juego, lanzado en 1996, nos ponía en el papel de tutores e instructores de unas criaturas llamadas Norms con no pocas similitudes a un gremlin incluso en la dualidad de su carácter. Pero no nos confundamos, aquí no estamos hablando de máquinas de estado finito ni de algoritmos declarativos que buscan una respuesta a un estímulo definido. Grand desarrolló una auténtica red neuronal digital a baja escala de forma que los bichos tenían sus constantes vitales y una capacidad de aprendizaje definida por un código genético que podía ser heredado por sus hijos. Sus hábitos alimenticios y aptitudes sociales se regían íntegramente por nuestra forma de educarlos y su arbol genealógico hasta el punto de tener que enseñarles a hablar e incluso, poniéndonos teológicos, hacerles discernir entre el bien y el mal.
La magia de todo esto era comprobar como de un huevo salía un recién nacido que solo piensa en comer y dormir, podíamos desarrollar infinitas formas de ser y ver como interactuaban entre ellos. Por suerte, el legado de Creatures ha quedado patente en la red, y a través de la web Creature Labs podemos descargarnos una versión perfeccionada del juego con la que jugar a ser verdaderos dioses, y es que a través de la maquinaria que se nos presenta en el entorno de juego, podemos incluso hacer cruces y trastear con el código genético de las criaturitas dando lugar a híbridos que ya digo, podrían pasar por el resultado de un atracón nocturno de doritos por parte de Gizmo.
Sin novedad al frente:
Mientras prosigamos en este sinsentido de la mejora de gráficos hasta sobrepasar el tan de moda uncanny valley, no se centrará la industria en mejorar la inteligencia de los implicados digitales en un videojuego, y es que el hábito no hace al monje, y por mucho que tengamos texturas fotorealistas y movimientos capturados gracias a las técnicas más punteras, si los enemigos siguen quedándose almidonados al atascarse tras un muro y lo más revolucionario que puede realizar es hablar con sincronización labial, vamos a seguir como en los tiempos del Pac man, y aunque hace 24 años ya le ganó un ordenador a Kasparov jugando al ajedrez con una potencia de cálculo insultantemente menor a la de por ejemplo las tarjetas gráficas actuales, todavía no son eficientes una miríada de soldados ante un aprendiz de salvador del mundo como podríamos ser nosotros a los mandos de un pad.
No pido que se implanten sistemas de redes neuronales o procesos con nodos de 40 acciones de profundidad al próximo GTA, pero sí remarcar el hecho de que una vez más y al igual que en otras tantas facetas de la industria, se anteponen las nimiedades que entran por los ojos a esos asuntos que verdaderamente hacen de un juego una obra de arte y un ingenio del diseño y la implementación. Y si Molyneux dice que el futuro de la interacción con seres digitales está en el niño que presentó en el Project Natal, vamos a tener que seguir poniéndoles revistas guarrindongas a los soldados del Metal Gear para poder esquivarlos durante otros 20 años.