¿Artificial e inteligente?

El desarrollo de comportamientos realistas aplicados a diversas ramas científicas a ha sido una constante en el ámbito de la informática. Desde las investigaciones en el campo de la microbiología hasta las redes neuronales, se ha pretendido emular de forma digital comportamientos propios de la naturaleza y el ser humano. El ocio interactivo ha pretendido emular estos procesos a baja escala con desigual éxito, y tras muchos avances en los diferentes campos del proceso creativo parece que se ha dejado de lado esta faceta en pos de otras demandadas por el mercado y que no son del gusto de todos. 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.

¿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 como inteligente en el momento en el que no sepamos 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 en mente con la primera definición.

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 ya almacenada. Además, una vez que le confirmemos al programa la veracidad de sus conclusiones, estas serán guardadas 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 mucho, “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 autonivelado 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. Uno de los juegos de los últimos años que comenzó a aplicar esto de forma coherente fue Left4Dead y su modo director, que modificaba la cadencia de aparición de enemigos y su tipo según cómo estuviéramos 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 el hecho de poder preveer los próximos 40 movimientos siguientes al realizado y decidir cual era la estrategia correcta en base a calcular cual es la acción más beneficiosa. No es lo mismo deducir que decidir.

“Karpov me hacía así el fackyu con el dedo”

Sobre bots y npcs

Una vez realicé un experimento con un amigo. En los tiempos del florecimiento masivo de Internet en los hogares españoles allá por el año 2002, 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 hace ya unos lustros. 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 con 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 acción 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 condicionantes básicos de cualquier lenguaje imperativo. “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 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 una buena herramienta 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.

“Enemigo: Te viste de torero -> Bajar dificultad a fácil”

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 donde cada fantasma tenía un comportamiento y nivel de 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 o sucedáneos 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 cualquiera que nada más comenzar la partida sabían de antemano nuestra posición ignorando la 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.

“Gizmo Goes to Ibiza”

La magia de todo esto radicaba comprobar como a partir de un huevo salía un recién nacido que solo piensa en comer y dormir y que posteriormente podía desarrollar infinitas formas de ser y ver cómo 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, pues a través de la maquinaria que se nos presenta en el entorno de juego podemos incluso hacer híbridos 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 en el 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. 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 lo suficientemente eficientes una miríada de soldados ante un aprendiz de salvador del mundo cualquiera.

Anuncios

14 comentarios

  1. Interesante artículo. :)

    Y en cuanto a lo de los juegos de coches tienes mucha razón, algo parecido a lo del NFS pasa en el Forza 3 (lo se, soy un cansino con el Forza), que decían que los rivales aprenden de tu manera de conducir para intentar adelantarte y lo que hacen es que cuando van delante frenan como nenazas y cuando van detrás frenan como demonios, así que para adelantarlos tienes que ir con mil ojos porque frenan 100 metros antes de donde se puede frenar y cuando van detrás tu frenas un poquito mal, que cuando vas detrás lo pasabas seguro, y los otros te meten un pasón a toda leche. Eso no es que aprendan es que frenal mal cuando van delante y frenan perfecto cuando te siguen. Menos mal que lo que si que no varían son las características de los coches que te siguen y no corren mas en las rectas. :)

    O el otro día jugando al Viking, que liberé a unos prisioneros y veo que no se van a una piedra de luz para teletransportarse al campamento y yo pensando que igual había enemigos cerca, me pongo a buscar y veo que uno se cayó por un puente roto y estaba tratando de volver pero corriendo contra la pared de roca que había bajo el puente, así que el colega corre que te corre y el resto esperándolo, al final es verdad que los Vikingos eran un poco brutos. X-D

  2. Me ha encantado el artículo ;)
    Hablando de L4D, llama la atención lo currada que está el tema del “director”, y sin embargo la estupidez de tus compañeros cuando son bots (superable por algunos “no bots” de la red) es desalentadora y frustrante.
    Por cierto, hablar de MGS como juego actual cuando el de PSX salió en Japón hace 12 años tampoco es XD

  3. @JuMaFaS El espíritu de los lemmings sigue muy presente en los títulos nextgen!

    @buchiyo Bueno, me refería a MGS y los siguientes, pero vamos, todos continúan la idea de los originales de MSX y no evolucionan apenas, pero es que la cosa está tan chunga que si te pones a dar el ejemplo de algún fps, la cosa se basa en que te ve el bicho y te empieza a disparar hasta que mueres tú o él. A lo mucho se cubren y tal, pero la mayoría de las veces tiene truco el tema y lo que usan son puntos de ruta. Esta materia está llena de cutrerío!

  4. @ElRosso
    Tienes razón, sustituye el “bicho” por alemán/ruso/moro/brasileño, y también hará lo mismo, y estamos hablando de uno de los 5 mejores del año pasado. ¡Saludos!

  5. Como siempre, peaso d’artículo, Rosso.

    “Empezando a dar alguna pincelada con respecto a las conclusiones que están por venir (…) 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.”

    Vale que L4D es la rehostia y tal, pero lo que me jode es que cualquier paquetilla digno de tal mención puede “jugar con la supuesta inteligencia del juego”, es decir: Puede jugar como el culo de mal a ratos para que después todo se torne un poco más fácil de lo normal. La verdad es que en cierto modo (aunque sé que no es el mismo caso), me recuerda al sistema de “deja que el juego de ese salto que tú no puedes realizar, by Miyamoto” que tan criticado ha sido recientemente. Yo personalmente sigo prefiriendo el sistema de toda la vida, el de los distintos niveles de dificultad, vamos.

    “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 (…) ¿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?”

    Dos casos que recuerdo de hace unos años son los de F-Zero SNES y Super Monaco GP MD. Mientras que F-Zero tenía en cuenta el hecho de que estuviéses haciendo una buena carrera distanciándote algo de tus perseguidores y por ende dándote un pequeño respiro si cometías un fallo (vale que no se podían cometer dos, pero ya era algo)… de Super Monaco GP no puedo decir lo mismo. Al principio del juego podías empezar con los Minarae (equivalentes a los Minardi de la época), y (LOL, y digo LOL porque un Minardi nunca conseguiría llegar a donde ahora voy a explicar) podías llegar en bastantes carreras a la segunda posición con dicho coche… pero JAMÁS podías adelantar al primero, el cual siempre mantenía la dichosa “distancia de seguridad” :/.

    “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.”

    Creo que es la mejor definición que he leído jamás sobre los Sims :D.

    No pido que se implanten sistemas de redes neuronales o procesos con nodos de 40 acciones de profundidad al próximo GTA (…) 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.

    La verdad es que sí, es triste lo que comentas del estúpido graphicworismo (toma palabro) actual y como se invierte en polladas visuales antes que en una verdadera inmersión de jugador/interacción con el entorno del juego, pero bueno, esto es como todo. La gente ve algo que les saca un “ooooh” visualmente y después se da cuenta de que es un señor CHOF cual anuncio de compresas.

    Con respecto a lo del niño del tío Pete: Jarl. Si el pobrecico pasaba del jugador como de la mierda cuando te llevabas un minuto sin hablarle XD… Mucho camino les queda por recorrer, muuucho.

    Un saludo.

  6. Creo que desde que llevo en la blogsfera no ha habido post que me haya enganchado como este, grande! Muy grande! Está bien hilvanado y no pierde la intensidad en ningún momento. Además es interesante como el solo (por cierto cosas de no leer las instrucciones…he descubierto el sistema de Ifs…else de Dragon Age)lo dicho.

    Ojalá hicieran como tu destacas juegos cuidando más la IA y menos los gráficos pues aveces nos olvidamos que la experiencia de juego no es solo un pixel bonito!

    Un saludo!

  7. @gamboi Esa triquiñuela de hacerse pasar por “mal jugador” sería facilmente solventable si una vez demostradas las habilidades del que juega, estas quedaran ya fijas en el baremo que las evaluase, y aunque luego juegue peor, siga manteniéndose ese nivel. Eso que comentas del L2D lo voy a comprobar in situ a ver si se puede engañar a la máquina tanto como dices, cosa que no me extrañaría… pero qué quieres que te diga, si hay gente que hace esas cosas, no sé cual es su concepto de diversión, esos son de los que se pasan los juegos con el god mode activao y tal!

    @laocoont Me honra muchísimo que un lector diga algo como lo que afirmas!

  8. Muy buen articulo, si señor.

    A modo de ejemplo ilustrativo diré que cuando salio el primer Driver para PSX soñaba con que en un futuro en juegos de ese tipo hubiera atascos y que los coches racionaran adecuadamente cuando pasaba la policía o una ambulancia. A día de hoy y pasados mas de 10 años desde aquel entonces tenemos unos gráficos infinitamente mejores pero aún no hay atascos ni el trafico es capaz de apartarse de una forma que no implique estrellar el coche con la pared más cercana…

  9. Excelente artículo. Has dado con un tema que todos ‘notábamos’ pero del que costaba darse cuenta. Claro, es normal, los gráficos han evolucionado pero los juegos, el código y sus algoritmos, hace que sigan siendo ‘los mismos juegos de siempre’.

    Han evolucionado los juegos tanto como los gráficos? yocreoqueno xDD

    Felicidades, como siempre.

  10. Lo que has dicho, las gráficas venden. Pero además está eso de los juegos MMO, que micro transacciones, que más sociales, etc todo por sacarte plata en ríos. Al menos yo juego un multiplayer con personas que conozco de hace tiempo (la única manera de disfruta un online), no me meto a jugar el Battleforge con un tipo llamado Leetz1337, para eso mejor juego contra la PC.

  11. Enorme artículo. Creo que no puedo añadir gran cosa a lo que han dicho el resto, salvo comentar que a mí también me hace mucha gracia que, ante la imposibilidad de mejorar la inteligencia artificial de los enemigos del juego, se recurra a las consabidas “trampas”. Antológico es el ejemplo del Need For Speed que comentas y que, ironías de la vida, también se utiliza con muy mala baba aunque de forma más discreta en otros juegos mucho más respetados por la crítica como Gran Turismo 3 (cito esta entrega porque la estoy jugando a ratos y es evidente que la máquina se adapta chuscamente a lo que nuestro bólido haga o a cómo lo equipemos…) o el polémico pero otrora alabado Pro Evolution Soccer. Hasta en su 5ª entrega, que es probablemente la más reconocida, el juego hace trampas con jugadores de equipos mierdosos que corren más que nuestros cracks, árbitros que no pitan faltas al contrario y a nosotros sí o esas jugadas en las que sabes que la máquina, sí o sí, meterá gol.

    En cualquier caso, y aunque opino en gran medida como tú, también es cierto que en muchos títulos no veo demasiado necesaria una inteligencia artificial alucinante, creo que hay sitio para todo tipo de productos, aunque sí es cierto que resulta ridículo muchas veces lo asimétrico que resulta el aspecto “técnico” de un juego (refiriéndonos siempre así, ironías de la industria, a los visuales y el sonido) frente al comportamiento gilipollesco de los enemigos.

    Qué grande, en serio, que grande es cada cosa que escribes. Voy a limpiarme un poco la lengua…

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s