Hace ya veinte años (en realidad casi 21) que se jugó uno de los últimos retos “hombre-máquina” de ajedrez. Hablamos del encuentro que enfrentó en 2003 a Garri Kaspárov, número uno del mundo, contra Deep Junior, por entonces uno de los mejores programas de ajedrez existentes. Tras la derrota que sufrió el campeón mundial en 1997 a manos del superordenador Deep Blue, ahora los enfrentamientos contra los jugadores humanos se centraban en ver si los programas podían superarles en ordenadores personales más o menos potentes. Por otra parte, aunque se podría pensar que los maestros temían hacer el ridículo si perdían estrepitosamente contra una máquina, quizás eso pasaba a segundo plano cuando detrás había un patrocinador que les ofrecía varios cientos de miles de dólares por jugar. Si alguien se perdió algo hasta llegar aquí, o no se quiere perder nada en lo que sigue, le remito a mi artículo “Ajedrez y ordenadores: el último duelo hombre-máquina”.
Deep Junior
Aunque Krámnik había entablado contra Deep Fritz en 2002, hay que decir que los estilos de juego de Deep Fritz y Deep Junior no se parecen mucho. Mientras que el primero responde a los cánones alemanes de seriedad y precisión en el cálculo, el segundo podríamos decir que es “un alma libre” capaz de inventarse sobre el tablero jugadas más propias de un genio como Mikhail Tal.
Junior (o Deep Junior, referido a la versión multiprocesador o multihilo del módulo), fue un programa que destacó siempre por algo novedoso para aquéllas épocas y que, históricamente, siempre se afirmó que una máquina nunca podría llegar a poseer: ¡la intuición! Obviamente no nos referimos a esta característica como una capacidad cognitiva propia de los humanos que pueda ser incorporada como tal en un programa informático, sino a que éste era capaz de hacer jugadas que realmente no podía llegar a analizar con exactitud, es decir, simplemente decidía que era “factible” realizarlas con un nivel de riesgo “permisible” de cara al desenlace de la partida. En este sentido, podríamos afirmar que era un módulo con un estilo similar al del gran Tal, quien se aventuraba sin miedo en las más intrincadas complicaciones tácticas a sabiendas de que ni siquiera su rival iba a ser capaz de encontrar las jugadas defensivas exactas y correctas en cada posición.
Los creadores de Junior son los desarrolladores israelíes Amir Ban y Shay Bushinsky. Amir comenzó la creación de su primer programa de ajedrez en 1985, utilizando el lenguaje de programación Turbo Pascal, que después migró a C y finalmente a Borland C++. En 1993, Shay se unió a su proyecto, especializándose en las funciones de evaluación y en la optimización, y ambos sacaron a la luz la primera versión de Junior capaz de competir con los mejores programas existentes.
Alguna vez he comentado que en los campeonatos “oficiales” de computadoras no siempre toman parte los mejores programas. De hecho, Stockfish no ha participado en ninguno de ellos a pesar de ser claramente el módulo más fuerte del mundo desde hace muchos años. Con todo, Junior obtuvo su primer gran éxito en 1997 al proclamarse campeón del “XV World Microcomputer Chess Championship”, es decir, el “Campeonato Mundial de Microcomputadoras de Ajedrez”, venciendo además con 1,5 puntos de ventaja sobre su inmediato seguidor. En 2001 repitió título en la XVIII edición del torneo, esta vez con 2 puntos de ventaja y cediendo tan solo 2 tablas.
Por otra parte, el término “microcomputadora” dejó de tener sentido cuando ya prácticamente no existían máquinas de ajedrez dedicadas, de ahí que se creara el llamado “World Computer Chess Championship” o “Campeonato Mundial de Ajedrez por Computadora”, donde podía participar cualquier máquina o programa de ajedrez. Junior ganó el campeonato nada menos que en 6 ocasiones entre los años 2002 y 2013, en casi todos los casos en dura pugna con Shredder, salvo en el 2013, en el que éste no estuvo a la altura, y en 2009, campeonato que fue ganado por Rybka, pero que luego fue eliminado y desposeído del título en favor de Junior.
Cabe mencionar que, como solía y suele ser habitual con los mejores programas del mercado, en el año 2006 Junior fue comprado por la empresa ChessBase. Por ahora, Stockfish sigue resistiendo la atracción de “Don Dinero”…
A pesar de que Junior era uno de los mejores programas a principios de siglo, cabe mencionar que desde entonces han surgido módulos por doquier (muchos de ellos basados en el código fuente de Stockfish), que le han superado en Elo. Así, si consultamos la lista de CCRL (Computer Chess Rating List), podemos ver que (a la hora de escribir estas líneas) Stockfish sigue al frente de la clasificación con un estratosférico Elo de 3544 puntos (versión con fecha 20023-06-13, que es como decir Stockfish 16), mientras que hay que bajar nada menos que hasta el puesto 118 para encontrar la versión 13 de Deep Junior con 3019 Elo (lo cual sigue siendo muy superior a los 2830 Elo del propio Magnus Carlsen). La primera versión de Deep Junior que se puede consultar en CCRL es la 10 con 4 procesadores (año 2006), que tenía un Elo estimado de 2800 puntos.
El match Hombre-Máquina 2003: Kaspárov contra Deep Junior
En el año 2003 Kaspárov ya no ostentaba el cetro mundial, al haber sido derrotado por Krámnik en octubre-noviembre del 2000 en Londres, siendo incapaz de superar el sólido estilo de su rival ni en una sola de las 15 partidas jugadas, sobre todo en lo que se refiere a la Defensa Berlinesa que éste le planteó una y otra vez contra la Apertura Española.
Sin embargo, Kaspárov seguía siendo el jugador más fuerte del mundo, con 2838 puntos Elo, 29 más que Krámnik. Más retrasados, completando los 10 primeros puestos, estaban Anand (2757), Ádams y Morozévich (2742), Topálov (2739), Ponomáriov (2727), Ivánchuk (2717), Shírov (2715), y Leko (2713). Se puede consultar la lista FIDE de los 100 primeros jugadores en esa fecha.
Por otra parte, Deep Junior era el vigente Campeón Mundial de Programas de Ajedrez, al haberse proclamado vencedor en julio de 2002 en Maastricht (Países Bajos), aunque realmente Shredder le ganó su partida y acabó imbatido con igual número de puntos, pero todo se decidió en un “play-off” a partidas a 15 minutos: Shredder perdió la primera con blancas, y en la segunda con negras no supo llegar a un final de peones ganador que le hubiera permitido seguir jugando el desempate.
El encuentro hombre-máquina comenzó el 26 de enero de 2003 en el “Athletic Club” de Nueva York (NYAC), programado al mejor de 6 partidas a ritmo clásico, y jugadas en días alternos. Fue anunciado como el “I Campeonato Mundial de la FIDE Hombre contra Máquina”, y finalizó con un empate a 3 puntos (+1=4-1).
El patrocinador fue la empresa X3D, junto con el millonario Kirsán Iliumzhínov, por entonces presidente de Kalmukia (antigua república de la URSS) y también presidente de la FIDE. Se reunió nada menos que 1 millón de dólares en premios, de los cuales 500.000 eran para Kaspárov simplemente por jugar (como para negarse…), mientras que el vencedor se llevaría 300.000 y el perdedor 200.000.
Las partidas se jugaron en una sala privada del piso 12º del NYAC, lugar al que sólo tenían acceso un puñado de personas, incluyendo los organizadores y algunos invitados “VIP”. El árbitro era el holandés Geurt Gijssen, el único que podía interactuar con Kaspárov y con el operador de Deep Junior. Las cámaras instaladas retransmitían el evento al piso 9º donde se habilitó un salón con 300 asientos que siempre estaban completos, y los comentarios para los espectadores corrían a cargo de los GM Séirawan y Maurice Ashley, veteranos ya por haber retransmitido también los encuentros contra Deep Blue en 1996 y 1997. La tecnología de la empresa X3D se encargaba de proyectar las imágenes en 3 dimensiones, por lo que los espectadores tenían que usar unas gafas especiales para verlas.
Kaspárov acudió al evento con sus ayudantes, el GM Dokhoian y el MI Khodarkóvsky, presidente de la “Kasparov Chess Foundation”. También le acompañaba su mánager Owen Williams, su madre Klara Kasparova y la asistente de ésta.
Con respecto a Deep Junior, en el año 2002 salió al mercado la versión 7 del programa, así que ésta es la que supuestamente se enfrentó a Kaspárov, aunque seguramente con algunas modificaciones y ajustes específicos de cara al encuentro, por ejemplo, en lo que respecta a su repertorio y libro de aperturas, ya que el equipo de Amir y Shay contó con la colaboración del GM Boris Álterman, de origen ucraniano pero nacionalizado israelí. Aunque el Elo de Deep Junior podía estimarse en unos 2700 o 2750 puntos y Kaspárov tenía 2847 puntos, ambos números no son comparables, puesto que ya sabemos que los módulos no perdonan prácticamente ningún fallo humano y su juego se caracteriza por mantener el mismo nivel a lo largo de casi toda la partida sin inmutarse por lo que ocurra dentro (y fuera) del tablero. Aun así, a continuación veremos que el programa estaba muy lejos del nivel que tiene por ejemplo actualmente Stockfish, y cometió algún que otro error a lo largo del match.
Para el encuentro estaba previsto utilizar un ordenador con 8 procesadores a 1,6GHz, pero debido a problemas técnicos tuvieron que dejarlo en 4 procesadores a 1.9GHz, con los que Deep Junior era capaz de evaluar unas 3 millones de posiciones por segundo (¿hubiera ganado Deep Junior de haber podido hacer uso de los 8 núcleos?). Según el propio Kaspárov y los expertos de la época, el programa en dicho ordenador ya tenía un nivel de juego superior al de Deep Blue. Por establecer comparaciones con la tecnología de hace 20 años, téngase en cuenta que el ordenador que yo uso para analizar (y escribir estas líneas) tiene 12 núcleos a 3,7 GHz, y Stockfish 16 es capaz de analizar fácilmente 14 millones de posiciones por segundo en el medio juego (y mucho más a medida que se simplifica la posición).
Con todo, el resultado final fue un gran éxito para el equipo de Deep Junior, resaltando el hecho de que tanto Kaspárov como todos los comentaristas alabaron el estilo de juego “humano” que exhibió a lo largo de todo el match, y que lo distinguía de la mayoría de los programas que se conocían hasta entonces.
Las partidas del match
Para que podáis reproducir todas las partidas del encuentro, he creado un Estudio de Lichess con los correspondientes análisis automáticos y gráficos de evaluación. Hagamos un breve resumen de cada una de ellas.
Partida 1: Kasparov-Deep Junior, 1-0 (27), D. Semi-Eslava, V. Stoltz, Ataque Shabálov [D45]
Aunque se podría pensar que Kaspárov iba a adoptar una estrategia tranquila contra Deep Junior, sorprendió respondiendo a la Defensa Semi-Eslava con el agresivo gambito “Shabálov-Shírov” (7.g4), seguido del enroque largo. Da la impresión de que el programa no fue capaz de entender lo que ocurría sobre el tablero, ya que las blancas consiguieron rápidamente ventaja en el centro y en el flanco de Rey. A continuación a Deep Junior se le cruzaron los cables y entregó la calidad en ‘e8’, con lo que la partida quedó vista para sentencia. Un inicio poco halagüeño para los creadores del programa…
Partida 2: Deep Junior-Kasparov, ½-½ (30), D. Siciliana, V. Kan, V. Polugaévsky [B42]
Con negras, Kaspárov eligió la Defensa Siciliana, en una Variante Kan contra la que Deep Junior planteó el sistema Maróczy con 7.c4. Las negras se mantuvieron a la expectativa hasta que Deep Junior se arriesgó con la dudosa 22.b4?, que le podía haber costado caro al pasar por alto el sacrificio de calidad que siguió. Tras obtener clara ventaja, Kaspárov dejó escapar la oportunidad con 25…Da1+?, en vez de jugar directamente 25…f4!, ya que el programa encontró una increíble defensa con 27.Ta8! y el sacrificio de Dama 29.Dxf8+! que le permitió igualar la partida, acordándose rápidamente las tablas.
Partida 3: Kasparov-Deep Junior, 0-1 (36), D. Semi-Eslava, V. Stoltz [D45]
Kaspárov y Deep Junior repitieron la Semi-Eslava de la primera partida, pero esta vez el programa se desvió de la normal 6…Ad6 jugando la menos habitual 6…b6. Aun así, Kaspárov volvió a sorprender con la agresiva 10.g4, y esta vez el módulo quedó peor al aceptar directamente el peón. Sin embargo, las blancas no jugaron con precisión y dejaron escapar la ventaja. Aunque mantuvieron cierta iniciativa durante mucho tiempo y podían haber hecho tablas por repetición, se embarcaron en una combinación errónea con 32.Th5?, teniendo que abandonar en pocas jugadas.
Partida 4: Deep Junior-Kasparov, ½-½ (61) D. Siciliana, V. Taimánov, V. Szén [B44]
En la cuarta partida, Kaspárov repitió la Siciliana, pero esta vez con la Variante Taimánov, a lo que de nuevo Deep Junior respondió planteando un esquema Maróczy con 6.c4. Kaspárov adoptó una formación “erizo”, organizando sus piezas en las 3 primeras filas a la espera de los acontecimientos. Sin embargo, las blancas consiguieron ventaja tras 24.a5 y 25.b5!, lo que obligó a las negras a defenderse durante mucho tiempo. Poco a poco se fueron cambiando las piezas y Kaspárov, a pesar de quedar con un peón menos, consiguió llegar a un final igualado de cuatro torres en el que se firmaron las tablas.
Partida 5: Kasparov-Deep Junior, ½-½ (19) D. Nimzo-India, V. Principal, Ataque del Alfil [E48]
La quinta partida es la que analizaremos detalladamente a continuación, breve pero intensa tras un extraordinario e inesperado sacrificio de Alfil de Deep Junior que le podía haber llevado a la derrota, pero Kaspárov no se atrevió a recoger el guante y se conformó con dar jaque continuo.
Partida 6: Deep Junior-Kasparov, ½-½ (28), D. Siciliana, V. Nájdorf, V. Opocénsky [B92]
En la sexta partida por fin Kaspárov se atrevió a plantear la Variante Nájdorf de la Siciliana, siguiendo Deep Junior con la “tranquila” Variante Opocénsky (6.Ae2), por otra parte favorita de Kárpov. Contra pronóstico, el programa tampoco eligió las líneas más agresivas con f4, sino que jugó Rh1 y Af3, lo que no planteó problemas a las negras, que consiguieron cambiar rápidamente las damas en c4. La partida se animó enormemente tras el sacrificio de calidad de Kaspárov con 23…Txc3!?, obteniendo dos peones como compensación, pero ninguno de los dos bandos quiso arriesgarse, proponiendo Kaspárov las tablas en la jugada 28 y siendo aceptadas por el equipo de Deep Junior. Seguramente un mal sabor de boca para los aficionados en una posición que todavía podía haber dado mucho de sí, teniendo en cuenta además que esta última partida fue retransmitida por la cadena de televisión ESPN2 y se calcula que fue seguida por entre 200 y 300 millones de espectadores.
Análisis de la quinta partida del match
A continuación nos detendremos en analizar la quinta partida, que seguramente hubiera pasado desapercibida de haber sido jugada por un humano, pero que resultó enormemente novedosa al ser obra de un programa de ordenador, y no digamos nada si enfrente tenía al mejor jugador humano del mundo.
El momento crítico de la misma llegó tras la jugada 10.Dc2 de Kaspárov, tal vez una provocación, pero parece ser que, por su cara de sorpresa, el excampeón mundial ni se imaginaba que Deep Junior pudiera jugar lo que jugó.
En este momento Deep Junior sorprendió a propios y extraños con el sacrificio de alfil en h2, una jugada que, como veremos en los análisis, objetivamente no es buena, pero que precisamente por eso resultó toda una noticia dentro del mundo del ajedrez cibernético.
A continuación incluyo la partida extensamente analizada con Stockfish 16 en el AMD Ryzen 9 5900X (3,7 GHz, 12 núcleos, Tablas Hash de 1GB), incluyendo los comentarios y análisis de algunas publicaciones, pero corregidos y ampliados con la ayuda del módulo.
En cuanto hagáis clic en una jugada aparecerá el tablero, que podréis mover a donde menos estorbe (debajo del tablero tenéis un botón para girarlo, y otro para descargar la partida en formato PGN).
Espero que os haya gustado. Saludos.