Ciencia Ficción vs Inteligencia Artificial ¿Qué tal una partidita de Ajedrez, Dr. Falken?

Friday, 27 October 2017

Ciencia Ficción vs Inteligencia Artificial ¿Qué tal una partidita de Ajedrez, Dr. Falken?


Escrito por Fran Ramírez (@cyberhadesblog), Investigador en Eleven Paths y escritor del libro "Microhistorias: anecdotas y curiosidades de la historia de la informática". 

En este nuevo artículo hablaremos de una película que unifica dos de los temas más de moda hoy día, la Inteligencia Artificial y la Seguridad Informática: “Juegos de Guerra” (WarGames). 


Figura 1. Cartel original de la película. Fuente Wikipedia.

Esta película se estreno en 1983, justo en el comienzo la expansión del ordenador personal a los hogares y marcó a toda una generación. Por aquella época, más o menos 1983-84, el IBM PC ya llevaba dos años en el mercado, pero en los hogares europeos el ordenador que estaba de moda era el ZX Spectrum, con su lenguaje BASIC como estandarte. Muchos adolescentes de aquella época querían emular las aventuras del protagonista con su ordenador personal.

¡Aviso! spoilers a continuación ...

La historia tiene como actor principal a un joven norteamericano de clase media llamado David Lightman (interpretada en la película por el genial Mathew Broderick) aficionado a los ordenadores. Tal era su afición, que había llegado a dominar esta nueva tecnología lo que le convertía en un hacker en potencia, llegando incluso a crear un dispositivo sintetizador de voz para su ordenador. Por cierto, ese ordenador era un IMSAI 8080, un poco antiguo para la época (ya había máquinas mucho más potentes como por ejemplo el Apple II, Apple Macintosh o el ya mencionado IBM PC) pero era resultón para el cine debido a su colorido diseño. Era imposible no sentirse identificado (sobre todo los adolescentes geek de la época, como el que escribe este post) con David cuando aparecían escenas de su dormitorio lleno de cables, módems y aparatos electrónicos, sin olvidar también cuando antes de ir al colegio, se pasaba por la sala de recreativos a echar unas partidas al clásico arcade Galaga.


Pero David era también un chico rebelde en clase, además de un poco vago (con ambas características también se identificaban muchos jóvenes de la época) así que para evitar tener que estudiar algunas asignaturas, encontró un método para cambiar las notas conectándose remotamente con el servidor de la escuela. La verdad que el método no era nada de otro mundo ya que simplemente utilizaba la contraseña original de acceso porque sabía el lugar exacto donde estaba escrita en un despacho del colegio. Gracias a esta habilidad de cambiar las notas conoce a Jennifer, la chica guapa de la clase y es aquí cuando comienza una relación entre ellos, el sueño de cualquier geek ;)

Un día, David recibe en casa una revista de informática en la que se anuncia una serie de videojuegos espectaculares que saldrán al mercado en unos meses. Por supuesto, David no podía esperar tanto así que utiliza su flamante módem (acoplador acústico, más bien y también un poco anticuado para la época) para intentar localizar el número de teléfono que le diera acceso a la empresa que desarrollaba el juego. Para ello tendría que llamar a número aleatorios (miles, ya que sólo tenía el prefijo de la zona) y ver si recibía alguna respuesta de un ordenador a su llamada. Después de algunos días (no quiero ni imaginar la factura de teléfono, aunque David le confiesa a Jennifer “hay formas de no pagar”, y es aquí donde se cierra el círculo mostrándonos también su rama phreaker). Finalmente, aparece una conexión un poco sospechosa, no se identifica y tampoco conseguir acceder pero sí consigue listar una serie de juegos y entre ellos hay uno llamado “El Laberinto de Falken”.

Aquí empieza la investigación para poder deducir la contraseña de acceso basándose en su única pista, “Falken”. Resulta que Falken era un experto en Inteligencia Artificial (supuestamente fallecido) y finalmente consigue acceder al sistema utilizando como contraseña el nombre de su hijo (también fallecido): Joshua. Realmente, Joshua es un superordenador militar (encargado del lanzamiento de misiles nucleares intercontinentales) llamado WOPR (War Operation Plan Response) y el acceso que había descubierto David no es más que una puerta trasera (backdoor) de acceso a él. Recordemos que toda esta trama ocurre en plena guerra fría entre EEUU y Rusia con una tensión máxima sobre una posible guerra nuclear. Y claro, a David no se le ocurre otra cosa que elegir el juego “Guerra Termonuclear Global” de la lista de juegos que obtiene una vez accede al sistema.

Este superordenador WOPR parece estar programado utilizando las técnicas de IA implementadas por el Dr. Falken que se parecen mucho a las técnicas de Aprendizaje Reforzado o Reiforcement Learning (RL). Básicamente, Joshua estaba programado para jugar continuamente a muchos juegos de estrategia, para ir aprendiendo y optimizando sus jugadas. Desde las damas, pasando por el Ajedrez hasta otra una simulación a escala real de una guerra termonuclear. Digamos que tenía su propio Gym de OpenAI. El RL se basa en determinar las acciones en un entorno (analizándolo) para obtener la recompensa máxima posible (objetivo). Esta técnica también se estudia en otras disciplinas como la Teoría de Juegos, por ejemplo. El famoso AlphaGo de Google utilizaba técnicas de Machine Learning y árboles de decisión además de redes neuronales. Pero básicamente, como Joshua, aprendía jugando una y otra vez hasta dominar el juego.

Recordemos que Machine Learning y la IA no son algo nuevo. En 1950 nuestro admirado Alan Turing ya escribió en 1950 su famoso “Computing Machinery and Intelligence”. Por otro lado, en 1952, Arthur Samuel escribió el primer programa de aprendizaje basándose en el juego de las damas. El ordenador IBM sobre el que se ejecutaba el programa, mejoraba en cada partida. Tampoco hay que olvidar que la primera red neuronal fue creada por Frank Rosenblant en 1957.  Entonces ¿qué ha pasado para que ahora sólo se hable de Machine Learning e IA?, básicamente sólo una cosa: ahora tenemos la capacidad de cálculo necesaria para poner en prácticas todas esas teorías de hace más de 40 años y a la vez, perfeccionarlas con otras nuevas.

Volviendo a la película, antes hemos hablado que David eligió el juego de Guerra Termonuclear Global. Lo que no sabía es que estaba activando una simulación muy real, hasta el punto que incluso los mismos militares no sabían distinguirla. Ellos pensaban que estaban entrando en una guerra real y por lo tanto, estaban preparados para el contraataque (llegando a declarar incluso DEFCON 1). Después de muchas aventuras, David y su compañera Jennifer, por fin llegan al centro de mando del NORAD en compañía del Dr. Falken (que no estaba muerto, había cambiado totalmente de identidad para pasar desapercibido).

Dr. Falken intenta convencer a Joshua para que pare el juego, pero este se niega a terminarlo, quiere obtener su recompensa (objetivo final para cualquier agente de IA programado para resolver un problema). Justo en ese momento, Joshua empieza a ejecutar miles de simulaciones desde diferentes puntos de vista. Una vez atacando primero, contraatacando, atacando desde otros países aliados etc. En todas ellas, el resultado es el mismo: no hay recompensa. No existe ganador. Como moraleja final, Joshua aprende la mejor lección para este juego de guerra: el mejor movimiento es no jugar. 

Quizás este podría ser un método para enseñarle un poco de filosofía o de humanidad a un futuro agente de Inteligencia Artificial. Las recompensas no siempre son positivas o negativas. En definitiva, habría que enseñarles a empatar, a crear un nuevo estado que mostrara a la IA que a veces, incluso perdiendo, se puede ganar a largo plazo. Hasta ahora estamos entrenando a las IA a ganar siempre, a obtener el máximo de recompensa, y tiene lógica ya que eso se traduce en la consecución final de un objetivo. Pero a lo mejor ha llegado el momento de enseñar también a las máquinas a no tener que ganar siempre, que a veces el objetivo se consigue simplemente, no realizando ningún movimiento.

No te pierdas otros artículos Ciencia Ficción vs IA:
Ciencia Ficción vs Inteligencia Artificial: HAL 9000 "Doctor, no entiendo a los humanos"
Ciencia Ficción vs Inteligencia Artificial: Saturno 3, "Héctor, robot malo, el perro no se come"

No comments:

Post a Comment