Deep Blue, el ordenador con una sola misión: ganar al humano

Deep Blue processor

Los años 90 supusieron un antes y después en el mundo de la informática. Los ordenadores llegaron de forma masiva a los hogares y se introdujo Internet en nuestras casas, pero también se produjeron algunos hitos históricos. Uno de ellos fue Deep Blue.

Los más jóvenes tal vez no lo reconozcáis, e igualmente tampoco os sonará el nombre de Garry Kasparov, el que es considerado el mejor jugador de ajedrez de la historia. Pues resulta que Deep Blue, desarrollado por IBM, batió a Kasparov en 1.997 tras un primer intento el año anterior que finalizó en empate. Con esta victoria — no exenta de polémicas — muchos cambiaron su visión de la informática y comprobaron que los límites de esta tecnología aún no se habían alcanzado. ¿Qué importancia tuvo Deep Blue en el mundo de la informática?



La necesidad de batir al ser humano

Decíamos que los ordenadores personales empezaron a asentarse en nuestros hogares en la década de los 80, pero no fue hasta los 90 cuando realmente tuvieron una aceptación masiva. Ordenadores sencillos que nos facilitaban el trabajo y empezaban a apostar por ciertas formas de ocio y entretenimiento digital.

El ajedrez es uno de los juegos de mesa más clásicos, y es un habitual a la hora de explicar ciertos conceptos en informática

=> Recibir por Whatsapp las noticias destacadas

El ajedrez, uno de los ‘juegos de mesa’ históricamente más clásicos, tiene una fuerte base matemática y, de hecho, es uno de los ejemplos más habituales a la hora de explicar ciertos algoritmos y técnicas. Un tablero con un número de casillas finitas, ciertos movimientos admitidos y una motivación con unas reglas bien definidas: el jaque mate.

Desde los primeros momentos de la informática moderna allá por los 50 ya se entreveía un reto: que los ordenadores pudiesen batir al ser humano. Algo palpable en operaciones básicas (un ordenador tiene una capacidad de cálculo superior a la de cualquier humano, al menos en términos de velocidad de ejecución de las operaciones) pero mucho más difícil de comprobar en operaciones complejas, como por ejemplo puede ser el ajedrez. ‘Hagamos un ordenador que pueda batir al mejor jugador de ajedrez del mundo’.

Deep Blue software Garry Kasparov en medio de una partida de ajedrez contra… (vía Computer History Museum)

Debemos remontarnos a 1.985 para recordar a ChipTest, el precursor de Deep Blue. Fue desarrollado como un proyecto de la Universidad Carnegie Mellon de Pittsburgh en Pensilvania, Estados Unidos, aunque no mucho más tarde, en 1.989, tuvo una evolución en Deep Thought, más potente y eficaz aunque aún lejos de poder batir a los grandes jugadores del mundo. El mismo Kasparov compitió dos veces con Deep Thought, ganando él las dos.

Que los ordenadores compitiesen con seres humanos en una partida de ajedrez no era algo nuevo. La Association for Computing Machinery basada en Estados Unidos tuvo en marcha entre 1.970 y 1.994 el North American Computer Chess Championship, un campeonato para determinar el ‘mejor computador de ajedrez’ que ahora sigue vigente de forma internacional bajo el World Computer Chess Championship. Si echáis un vistazo a las listas de ganadores veréis que tanto ChipTest como Deep Thought fueron los campeones en algunos años.

IBM se interesó por el equipo que desarrolló los dos sistemas y lo contrató en 1.989 para que comenzasen el desarrollo de una nueva máquina con el potencial — tanto tecnológico como presupuestario — de la compañía americana. Se basaron en Deep Thought para crear Deep Blue, con ese nuevo nombre en honor a big blue — la gigante azul — que es como se conoce a la empresa popularmente.

Minimax y el “autoaprendizaje” del software

En Deep Blue el hardware es importante, pero el software es fundamental.

En la parte del harware, Deep Blue era un importante supercomputador para la época. Estaba formado por 30 procesadores IBM Power2 de 120 MHz., con otros 480 coprocesadores específicamente diseñados para esta máquina y con la finalidad ejecutar operaciones relacionadas con el ajedrez. Deep Blue fue diseñado específicamente para batir a Kasparov y permitía valorar 100 millones de jugadas por segundo en su primera versión.

Deep Blue processor Así eran los coprocesadores de apoyo de Deep Blue (vía Computer History Museum)

El software, decíamos, es fundamental. Diseñado por IBM, la compañía se basó en un algoritmo minimax para ‘maximizar las ganancias y minimizar las pérdidas’ de cada jugada, con la finalidad de ir mejorando la partida — a su favor — en cada nuevo movimiento.

Deep Blue software Fotografía de la interfaz del software de Deep Blue (vía Computer History Museum)

En Deep Blue es fundamental el software, centrado en el algoritmo minimax, y las posibilidades de autoaprendizaje

Junto con el algoritmo minimax, que nunca ha llegado a distribuirse de forma pública y seguirá en alguna caja fuerte de IBM, también fue fundamental el autoaprendizaje del software. A través de alguna de las múltiples técnicas existentes, los desarrolladores del proyecto sentaron las bases del algoritmo y le propusieron 700.000 de las mejores partidas de ajedrez de la historia, de forma que Deep Blue aprendió las técnicas utilizadas en ellas para poder aplicarlas en los enfrentamientos futuros.

Deep Blue vs. Garry Kasparov

Más de diez años después de que empezase a desarrollarse ChipTest fue cuando se dio por finalizado Deep Blue, al menos en su primera iteración. Los primeros enfrentamientos Deep Blue – Garry Kasparov sucedieron entre el 10 y 17 de febrero de 1.996, en un juego al mejor de seis partidas. El resultado fue favorable al jugador ruso que ganando 3 partidas, empató dos y perdió una, dando un global de 4-2 (las tablas cuentan como ½). Sin embargo, fue la primera vez que un ordenador ganó al campeón del mundo.

Kasparov vs. Deep Blue Imagen de una de las partidas Kasparov vs. Deep Blue (AP, vía Wired)

Tras esta derrota los ingenieros de IBM mejoraron el equipo evolucionando tanto hardware como software, duplicando su capacidad de proceso a las 200.000 jugadas por segundo y evolucionando el algoritmo minimax. Un año después se jugó la revancha, denominada así — rematch — oficialmente y que tuvo lugar entre el 3 y el 11 de mayo de 1.997 con las siguientes partidas:

  • Partida 1, 3 de mayo, 45 movimientos: victoria para Kasparov (DB 0 – K 1)
  • Partida 2, 4 de mayo, 44 movimientos: victoria para Deep Blue (DB 1 – K 1)
  • Partida 3, 6 de mayo, 48 movimientos: tablas (DB ½ – K 1½)
  • Partida 4, 7 de mayo, 56 movimientos: tablas (DB 1 – K 2)
  • Partida 5, 10 de mayo, 49 movimientos: tablas (DB 2½ – K 2½)
  • Partida 6, 11 de mayo, 19 movimientos: victoria para Deep Blue (DB 3½ – K 2½)

La información sobre las jugadas efectuadas en las dos partidas puede consultarse en Wikipedia con todos los detalles, aunque en Youtube también hay muchos vídeos que emulan las diferentes partidas. Por ejemplo, el siguiente es el vídeo que corresponde a la partida 6 del rematch:

La mano humana tras Deep Blue: la polémica

Si bien la primera partida finalizó sin grandes alardes — al fin y al cabo era lo esperado: el hombre le ha ganado a la máquina —, el rematch generó con una gran polémica motivada por Kasparov.

En la primera partida del rematch, en la jugada 44, Kasparov pensó que había una “inteligencia superior” controlando a Deep Blue

En la jugada 44 de la primera partida del juego de revancha, el movimiento de Deep Blue motivó la creencia en Kasparov de que había una inteligencia superior en esa jugada concreta y, con ella, alguien trastocando a Deep Blue. Las normas definían que, si bien IBM sí podía alterar el estado del computador en los tiempos entre cada una de las seis partidas, nadie podía modificar su estado en medio del juego.

La polémica estaba servida y creció cuando Deep Blue derrotó finalmente a Kasparov al finalizar las seis partidas. IBM dio la callada por respuesta cuando le pidieron los registros — logs — de la partida y no mencionó la razón de esa jugada que llamó la atención del campeón ruso.

Quince años más tarde de que se produjese la partida, ingenieros de IBM han reconocido que el problema fue debido a un bug en el software de IBM. Concretamente la jugada fue motivada por una vía de escape especificada en el algoritmo, y que el ordenador devuelve como resultado final en caso de que se hayan producido algún tipo de incongruencia o fallo en el estudio de las diferentes jugadas posibles.

Deep Blue fue el más conocido, pero hay más

Empezábamos comentado que el ajedrez es uno de los juegos de mesa con base matemática más importantes de la historia, y por tanto su implementación en un sistema informático es completamente viable. La dificultad está en su complejidad, que deberá ser interpretada por el ordenador y su inteligencia artificial.

Pero no es el único. Arimaa es un juego de mesa ideado en 2.002 pensando tanto en su uso por humanos como en su implementación en ordenadores y con un reto abierto para el que pueda crear una inteligencia artificial que bata a los mejores jugadores del juego. De él existen múltiples simuladores e inteligencias artificiales disponibles, y curiosamente desde 2.004 hay tres grandes torneos relacionados: humanos contra humanos, humanos contra máquinas, y máquinas contra máquinas. En su página web oficial podéis consultar las reglas, torneos y toda la documentación asociada.

Tablero Arimaa Tablero de Arimaa

También Go, juego de mesa procedente de China cuyo origen se remonta al año 548 a.C., tiene múltiples retos en el mundo informático. Hay mucha literatura al respecto (en Wikipedia puede leerse una amplia lista de modos de afrontarlo), pero una vez más la problemática se encuentra en escoger y desarrollar el algoritmo idóneo para batir al ser humano.

Deep Blue fue un hito de los años 90, y su reto con Garry Kasparov puede considerarse más como una estrategia de marketing que de un producto real. No cabe duda de que tecnológicamente ha sido de gran importancia para la industria, situando el límite que por entonces tenía las capacidades informáticas frente a la mente humana.

Por supuesto no ha sido el único computador que se ha enfrentado a humanos. Junior es otro gran conocido desarrollado ya en el siglo XX, pero sin duda alguna Watson también de IBM tuvo una gran relevancia.

IBM Watson

Las principales capacidades de Watson están más cercanas del lenguaje que de la matemática de Deep Blue. Fue desarrollado entre 2004 y 2011, año en el que participó en el concurso de preguntas y respuestas americano Jeopardy!, con la tarea de leer la pregunta, entenderla y buscar la mejor respuesta asociada a ella.

Para resolver este problema tenía una base de datos local de 200 millones de páginas que ocupaban 4 TB de espacio, y lo hacía utilizando un total de 90 servidores independientes con un procesador IBM Power7 de ocho núcleos a 3,5 GHz. con cuatro hilos cada uno de ellos. La memoria RAM se alza hasta 16 TB, una cifra increíble a pesar del entorno más profesional del equipo.

Watson superó a sus rivales y ganó el primer premio. En 2013 se anunció su reorientación hacia la ciencia y la medicina gracias a sus capacidades de interpretación del lenguaje natural y autoaprendizaje del entorno y los problemas afrontados.

Deep Blue, al contrario, tuvo una vida muy diferente a la que actualmente tiene Watson. Fue desmantelado y no volvió a utilizarse jamás, más allá de separarse los dos racks que lo formaban para enviarlos al National Museum of American History y al Computer History Museum de Estados Unidos, donde actualmente posan para el público más geek que pueda reconocerlos y tomar una captura de estas importantes piezas históricas.

Deep Blue software Fotografía del inicio de la primera partida del ‘rematch’ (vía Computer History Museum)

Imagen de portada | Computer History Museum

Fuente: xataka.com