Ajedrez, Infoajedrez, Motores, Varios

Tablas de Finales en Ajedrez: todo lo que hay que saber

Juan A. R. ParraHoy voy a hablar de algo que conocen o de lo que han oído hablar muchos aficionados, pero que realmente veo utilizar muy poco en el análisis de partidas. Se trata de las llamadas Tablas de Finales, también conocidas como Bases de Finales, o bien por su término en inglés Endgame Tablebases, o simplemente Tablebases. Hacía mucho tiempo que tenía escritos algunos apuntes sobre el tema, pero no había tenido tiempo para desarrollarlos y publicar un artículo completo. Espero que sirva para aclarar algunas dudas y que aprovechéis esta estupenda herramienta para el estudio de vuestros propios finales de partida.

Introducción

A groso modo, las Tablas de Finales son bases de datos que almacenan todas las posibles jugadas que se pueden realizar a partir de una determinada posición hasta que la partida alcance un resultado definitivo, entendiendo por esto último que uno de los dos bandos gane o bien que la partida termine en tablas. El empate se pueden alcanzar, como es sabido, por repetirse la misma posición 3 veces, por rey ahogado, o por la «regla de las 50 jugadas», es decir, si se realizan 50 movimientos sin que se mueva un peón ni se produzca ninguna captura (aunque de este número mágico hablaremos más tarde).

FEN: 1k6/8/8/8/8/8/1P6/5K2 w - - 0 1Blancas juegan y dan mate en 25 jugadas.

Para hacernos una idea, imaginemos que tenemos 3 piezas cualesquiera en el tablero, es decir, obligatoriamente estarán los 2 reyes, y además otra pieza o bien un peón. Si esta pieza es una dama o una torre sabemos que se gana, si es un alfil o un caballo sabemos que son tablas, y si es un peón depende de la «oposición» de los reyes que se gane o se entable. Las tablas de finales almacenan todas las posibles posiciones de las 3 piezas y, en cada posición concreta e independientemente de a qué bando le toca mover, nos dicen todos los posibles movimientos, indicando cuáles ganan, cuáles pierden y cuáles entablan. Además, ofrecen información adicional (lo que se llaman «métricas»), como por ejemplo, el número de movimientos en el que se da jaque mate, conocido como DTM (Depth To Mate). Luego veremos que estas métricas dependen del tipo de tablas de finales.

Si esto nos puede parecer más o menos complejo, imaginemos lo que sería con 4 piezas, con 5 piezas, con 6 piezas, y hasta con 7 piezas. De hecho, los requisitos de los ordenadores para generar las tablas de finales son tan elevados en lo que se refiere a capacidad de cálculo, tamaño de memoria y espacio de almacenamiento, que las tablas de 6 piezas han sido imposibles de crear hasta el año 2005, las de 7 piezas se terminaron de crear en el año 2012, y de las de 8 piezas todavía no se sabe nada. Si alguien está pensando en una tabla de finales de 32 piezas para saber las mejores jugadas desde la posición inicial, puede olvidarse, al menos mientras no existan ordenadores cuánticos y nuevas formas impensables hoy en día de almacenar muchísima más cantidad de información…Endgame Turbo 5

Las tablas de finales son, en principio, gratuitas, pero no del todo. El problema es su tamaño, es decir, el espacio de almacenamiento que ocupan, de ahí que realmente por lo que se paga al comprarlas es por tenerlas en varios DVD ya listas para usar. Por ejemplo, las podéis encontrar a la venta en la tienda de ChessBase con el nombre Endgame Turbo 4, pero son 4 discos DVD en los que sólo caben las tablas de 5 piezas y algunas de 6 piezas. Existe otra versión llamada Endgame Turbo 5 que se vende en una memoria USB y almacena 143 tablas de 6 piezas, pero el precio me parece desorbitado. De cómo obtener las tablas de forma gratuita hablaremos más tarde…

Hay que aclarar que utilizar las tablas de finales es una forma de conocer la verdad sobre ciertos finales de partida más o menos complejos que uno ni siquiera sabe si se pueden ganar o no. Esto ha permitido corregir muchos análisis, así como problemas y finales compuestos que estaban equivocados en su planteamiento y/o solución. Pero las tablas de finales no pueden sustituir a los libros ni a los maestros, ya que sólo nos dicen las jugadas y no explican por qué un final se juega de una u otra forma. Al igual que ocurre con los motores, son una herramienta de análisis, y ha de ser el propio jugador, solo o con ayuda, quien trabaje en la búsqueda de la explicación a cada jugada.

En lo que resta, hablaremos del origen de las tablas de finales, sus tipos, cómo obtenerlas y cómo utilizarlas, ya sea de forma local en nuestro PC o bien de forma online. A partir de ahora las nombraré como «tablas» o «tablebases» para facilitar la redacción del texto. Como siempre, podéis echar un vistazo a la Wikipedia en español o en inglés para obtener más detalles sobre el tema. En este otro enlace de Chess Programming Wiki encontrareis más información técnica sobre las tablas de finales.

Tipos e historia

Richard BellmanRichard Bellman

La historia de las tablebases está un poco ligada a sus tipos, pero sus orígenes datan nada menos que de los años 70, cuando se empezaron a idear algunas tablas de 3 piezas de la mano del matemático Richard Bellman. En 1977 fue Ken Thompson quien consiguió crear las primeras tablas de 4 piezas para el final de rey+dama contra rey+torre, ampliándolas posteriormente y consiguiendo generar todas las tablas de 4 y 5 piezas.

Ken ThompsonKen Thompson

Aunque no viene al caso, Ken Thompson debería ser conocido por cualquier informático, ya que, junto con Dennis Ritchie, fueron los creadores del sistema operativo UNIX en 1960 y del lenguaje de programación ‘B’ en 1969, precursor del importante lenguaje de programación ‘C’ que el propio Ritchie desarrolló en 1972. Muchos de los motores de ajedrez actuales están programados en lenguaje ‘C’, y otros en lenguaje ‘C++’.

Continuando con el tema que nos ocupa, en 1991 Lewis Stiller generó las primeras tablas de 6 piezas, empleando un superordenador CM-2 con la friolera de 65.536 procesadores de la época en paralelo. En concreto se trataba del final de rey+torre+alfil contra rey+caballo+caballo. El resultado fue que la torre y el alfil ¡pueden ganar en 223 jugadas! Obviamente esto está muy lejos de la compresión y capacidad humana, y por supuesto de la famosa regla de las 50 jugadas para declarar el empate.

Superordenador CM-2 utilizado por StillerSuperordenador CM-2 utilizado por Stiller para generar las primeras tablas de 6 piezas. Fuente: Blinkinlabs.

En los años 90 el espacio necesario para almacenar las tablas de 6 piezas era como hoy en día hablar de las de 7 piezas. Es por ello que no se consiguieron crear hasta 1994, con la ayuda del científico e informático Steven Edwards, inventor además de los estándares de notación PGN, FEN y EPD. En esa época los 50 GB (Gigabytes) de espacio en disco que requerían estaban al alcance solamente de grandes ordenadores corporativos o centros de investigación universitarios. Para que os hagáis una idea, mi primer y flamante disco duro lo compré aproximadamente en 1990 y tenía nada más y nada menos que ¡30 MB!, o sea, Megabytes (1 GB = 1024 MB). De lo que me costaron esos 30 MB, mejor ni hablamos…

Tablas de Nalimov

Eugene Nalimov

Eugene Nalimov es un informático ruso que desarrolló un algoritmo capaz de generar las tablebases y comprimirlas en mucho menos espacio. En 1998 publicó su trabajo, consiguiendo reducir las tablas de 5 piezas de 50 GB a tan solo 7,1 GB, lo cual todavía era bastante para la época, pero muchísimo menos de lo que ocupaban antes. En 2005 se terminaron de crear las tablas de 6 piezas, que ocupan nada menos que 1,2 TB (Terabytes, 1 TB = 1024 GB). Obsérvese el crecimiento exponencial con respecto a las de 5 piezas y se entenderá por qué todavía no se ha podido generar ninguna de 8 piezas… Aunque es adelantarnos un poco, las Tablas Syzygy de 6 piezas que veremos después ocupan ¡tan solo 150 GB!

Cabe aquí señalar que este espacio se refiere a todas las combinaciones posibles de 5 y 6 piezas. En la práctica, ya en aquella época los módulos o motores de juego eran capaces por ejemplo de anunciar un mate de rey+torre o de rey+dama contra rey. Quizás no un mate de rey+alfil+alfil o de rey+alfil+caballo contra rey (ésta era la razón por la que se crearon las tablebases), pero desde luego que hoy en día cualquier conjunto de ordenador+módulo es capaz de dar sin problemas este tipo de mates. Actualmente quizás donde los módulos están más «despistados» es en los finales de alfiles de distinto color, así como en finales extraños de 6 o 7 piezas sin peones muy poco frecuentes en la práctica.

Archivos tablas Nalimov

Las tablebases de Nalimov, que son gratuitas, están formadas por cientos de archivos cuyo nombre viene dado por las iniciales en inglés de las piezas que componen cada final. Así por ejemplo, el archivo «krk.nbw.emd» es el final de rey+torre contra rey cuando el primer movimiento les toca a las blancas (w=white), y su pareja es el archivo «krk.nbb.emd» cuando les toca mover a las negras (b=black). Imagino que «nb» significa Nalimov Base, y «.emd» es la extensión del formato comprimido que utiliza. Para tablebases muy grandes (casi todas las de 6 piezas), existen más de dos archivos numerados para cada final, por ejemplo, «kbbkbp.0.nbb.emd», «kbbkbp.1.nbb.emd», «kbbkbp.2.nbb.emd», etc.

Según esto, a ningún módulo (bueno, y espero que a ningún jugador que lea esto…) le hacen falta tablebases del tipo KQK (rey+dama contra rey), ni KQQK, ni KQQQK, ni KQQQQK, ni KQQQQQK (¡7 piezas!). Y ni siquiera otras tablas donde la ventaja material sea muy grande, como por ejemplo KQKB (rey+dama contra rey+alfil), o KRRKN (rey+torre+torre contra rey+caballo), o KRRKPP (rey+torre+torre contra rey+peón+peón), aunque aquí ya habría que ver en qué fila se hallan los peones y si están ligados o no… Si eliminamos todos estos finales «superfluos», podemos ahorrar mucho espacio en nuestro disco para almacenar las tablebases. Por ejemplo, yo «solamente» tengo unos 500 GB con las tablas de 6 piezas que se consideran más importantes.

Para que conste, os pongo aquí un recuadro con el número de finales, archivos y el tamaño que ocupan las tablas de Nalimov completas (las de 5 y 6 piezas aparecen también desglosadas en finales con o sin peones):

PiezasFinalesArchivosEspacio
351065 KB
4306030 MB
51102207,1 GB
4+1 sin peones20400,37 GB
4+1 con peones15301,06 GB
3+2 sin peones40801,36 GB
3+2 con peones35704,25 GB
629525121,2 TB
4+2 sin peones80164110 GB
4+2 con peones951234512 GB
3+3 sin peones5513095 GB
3+3 con peones65984429 GB

Tablas Gaviota

Miguel A. Ballicora

Las Tablas Gaviota fueron generadas aproximadamente en 2008 por el bioquímico argentino Miguel A. Ballicora para ser utilizadas con su propio módulo, llamado asimismo Gaviota, aunque posteriormente fueron incorporadas y aprovechadas por muchos otros módulos.

Son tablas gratuitas de 5 piezas con un formato propio, indican la distancia al mate, y ocupan unos 6,5 GB. Implementan un algoritmo especial para almacenar los resultados en memoria, evitando así que el módulo realice accesos innecesarios al disco y aumentando así la velocidad de búsqueda.

Tablas de Lomonosov

Vladimir Makhnychev y Victor Zakharov

Las Tablas de Lomonosov de 7 piezas se terminaron de crear en el año 2012 en el Departamento de Ciencias de la Computación de la Universidad Estatal de Moscú. Los autores fueron Vladimir Makhnychev y Victor Zakharov, a quienes podéis ver en las fotos de la derecha. Las tablas reciben el nombre tanto de Mikhail Lomonosov, científico fundador de la Universidad de Moscú en 1755, como del propio superordenador que se utilizó para generarlas. Si aún no os habéis hecho una idea de lo complicado que es generar las tablebases de 7 piezas, en esta imagen podéis ver el superordenador ruso Lomonosov (Fuente: High Performance Computing in Moscow State University):

Superordenador ruso Lomonosov

Las tablas contienen más de 500 trillones de posiciones posibles y, al igual que las de Nalimov, proporcionan las jugadas exactas hasta el mate o hasta el empate. Utilizan un algoritmo de compresión que permite almacenarlas en unos 100 TB.

Actualmente son propiedad de la empresa Convekta a través de su filial ChessOK.

Tablas Syzygy

Syzygy

Las llamadas Tablas Syzygy son las más modernas y más compactas, y las que ya admiten casi todos los módulos actuales. Fueron creadas por el matemático alemán Ronald de Man. Las de 3, 4 y 5 piezas ocupan solamente 939 MB, mientras que en abril de 2013 terminó de crear las de 6 piezas, que ocupan unos 150 GB (compárese con los 1,2 TB de las de Nalimov). Cabe hacer notar aquí la gran evolución en la potencia de los microprocesadores, de forma que las tablas de 6 piezas se pueden generar en 5 días (es decir, 120 horas) en un ordenador Intel Core i-3930K @4.2GHz de 6 núcleos con 32 GB de memoria RAM.

Por otra parte, fue el programador chino Bojun Guo quien entre marzo y agosto de 2018 consiguió generar las de 7 piezas. Para ello pudo disponer de una máquina mucho más potente valorada en 90.000 dólares, que estuvo funcionando ininterrumpidamente durante 5 meses para generar los 16,7 TB que ocupan las tablas. De nuevo cabe hacer hincapié en la diferencia entre los 5 días de las tablas de 6 piezas en un PC convencional, y los 5 meses de las de 7 piezas en un ordenador específico mucho más potente.

Esta reducción de tamaño con respecto a los tipos vistos anteriormente se debe a que las tablas Syzygy no almacenan el número de jugadas al mate (DTM), sino que sus dos métricas principales son las llamadas WDL50 (Win/Draw/Loss) y DTZ50 (Depth To Zeroing of the fifty-move counter), y están orientadas a optimizar la forma de ganar evitando incurrir en el empate debido a la regla de las 50 jugadas.

Las Tablas Syzygy son gratuitas y están a disposición de cualquiera que desee utilizarlas.

Generación

Como hemos mencionado, las tablebases pueden ser generadas por uno mismo, pero es una tarea complicada, ya que requiere un ordenador lo más avanzado posible y dejarlo procesando durante cientos de horas.

Aun así, comentaremos brevemente algunos programas que permiten generar las tablas:

  • Syzygy Tablebase Generator. En esta página sólo encontrareis explicaciones y el código fuente del programa en lenguaje ‘C’. Así que necesitareis conocimientos de programación para «compilarlo» y ejecutarlo. Además, es una herramienta en línea de comandos que tampoco creo que entusiasme a la mayoría.
  • Gaviota Tablebase Generator. El programa de juego Gaviota incorpora su propio generador de tablebases. Funciona en línea de comandos, y en la página os explica cómo hacerlo: básicamente hay que generar la tabla que se desea, verificar que se generó correctamente, y después comprimirla. Como señala en la propia página, sale más rentable descargar las tablas que generarlas…
  • Nalimov TBGen. En algunas versiones de los programas de ChessBase, por ejemplo en Fritz 5 o Fritz 8 creo recordar, venía incluido un pequeño programita llamado «tbgen.exe» para generar las tablas de Nalimov. Hace muchos años intenté generar con él un final de 4 piezas, dejé el ordenador encendido toda la noche, y por la mañana no había llegado ni al 50% (aunque tampoco recuerdo qué ordenador tenía por aquel entonces…). En este hilo de Winboard Forum podéis leer sobre el programa y descargarlo.

FinalGen

Aunque se sale un poco de lo que son las tablas de finales estándar que utilizan los módulos, existe un programa muy interesante llamado FinalGen. Está orientado a resolver finales de peones con a lo sumo una pieza por bando que no sea un peón. En su página podéis encontrar las instrucciones junto con varios ejemplos. Parece que funciona bien y no tarda mucho para finales de 7 y 8 piezas, pero no existen los milagros: en una prueba que realicé con 11 piezas, estimaba 54 horas para solucionarlo ocupando 1,5 TB en disco. Obviamente le di al botón “Parar” del programa y borré la carpeta con los archivos que había generado hasta ese momento…

Descarga

El método habitual que se utiliza para obtener las tablebases es descargarlas de algún sitio que las distribuya de forma gratuita. Por supuesto, en primer lugar debemos asegurarnos de que disponemos de suficiente espacio libre en nuestro disco duro. Por otra parte, actualmente casi todos los hogares disponen de conexión de fibra óptica o de ADSL, por lo que la descarga no debería llevar demasiado tiempo, pero a finales de los 90, cuando sólo había conexión telefónica a Internet, se tardaban muchos días en ir bajando las tablebases poco a poco, principalmente mediante eMule.

Qué descargar

Ya hemos mencionado que las tablebases están formadas por cientos de archivos, y que no tiene sentido descargar aquellos finales en los que uno de los bandos tiene una enorme ventaja de material y que cualquier humano o módulo sabe resolver sin problemas, o aquellos que son claramente tablas.

Por otra parte, a día de hoy lo mejor es dejarse de líos y bajar directamente las tablas Syzygy de 6 piezas (junto con las de 3, 4 y 5 piezas), que ya vimos que ocupan poco más de 150 GB. De todas formas, por si acaso utilizáis algún programa antiguo que no admite estas tablas, mencionaré un poco cómo descargar las de Nalimov.

Si no vamos a descargar los 1,2 TB de las tablas de Nalimov de 6 piezas completas, es interesante saber qué finales son imprescindibles para analizar y cuáles deberíamos bajar. También hay que señalar que existen determinadas dependencias entre unos finales de más piezas y otros de menos. Por ejemplo, un final de 6 piezas «KQRKRR» seguramente necesita el final de 4 piezas «KQKR», que será al que se llegue en cuanto de cambie una de las torres. Es por ello recomendable descargar las tablas completas de 3, 4 y 5 piezas.

El programa «Nalimov 6 Manager» permite ver y validar las tablas de 6 piezas que tenemos instaladas. Además, establece una clasificación según sean más o menos importantes, y también permite copiar, mover o borrar tablas. Éste es el aspecto que presenta para las tablas de Nalimov que tengo en mi ordenador:

Nalimov 6 Manager

El programa data del año 2007, y parece que ya no se encuentra disponible en la red. Es posible que sólo se distribuya con alguno de los productos de Convekta…

Como alternativa, en esta página de AutoChess podéis ver una estadística de aparición de los distintos finales posibles en la práctica, tanto en lo que se refiere a partidas entre humanos como entre módulos. Al final de la página aparece una lista con los 100 finales de 6 piezas que se recomienda bajar, y que cubrirían el 92% de los finales que se suelen dar en partidas entre módulos. Claro que descargar uno por uno todos los archivos de estas 100 tablebases lleva un poco de trabajo…

Sitios de descarga

Como acabamos de comentar, lo más fácil es bajarse todos los finales Syzygy hasta 6 piezas, es decir, necesitareis algo más de 150 GB de espacio libre en vuestro disco duro, aunque no es bueno tener el disco lleno a tope, por lo que yo recomendaría al menos 200 GB libres.

Algunos sitios para descargar las tablas de finales, son los siguientes:

  • sesse.net. Lo pongo en primer lugar porque fue de donde me descargué algunas tablebases hace tiempo. Aquí encontraréis las tablas de Nalimov hasta 6 piezas y las Syzygy hasta 7 piezas. En la parte inferior veréis estas carpetas:
  • Carpetas de sesse.net

    Las 5 primeras carpetas son las tablas de Nalimov, divididas en los distintos tipos de finales. Como ya dijimos, tenéis que ir bajando todos los archivos correspondientes a cada final que os interese. La última es la carpeta de las tablas Syzygy, dividida a su vez en distintos tipos como las de Nalimov.

    Ya dijimos que eran cientos de archivos, por lo que lo ideal es utilizar algún programa de descarga que permita copiar y pegar enlaces, como por ejemplo JDownloader. Aquí tenéis la lista completa de enlaces con todos los archivos de las tablas de Nalimov.

    Una desventaja de este sitio es que, tal como señala al inicio, sólo permite descargar un archivo de cada vez. Si se utiliza el mencionado JDownloader, hay que desactivar la descarga simultánea para que vaya bajando de uno en uno. No es el momento ni el lugar para explicar el funcionamiento de JDownloader, pero tampoco es muy difícil de manejar. Eso sí, lo bueno de este sitio es que cada archivo descarga muy rápido, aunque también dependerá de la velocidad de vuestra conexión.

  • Lichess tablebases. Aquí encontraréis las tablas Gaviota hasta 5 piezas y las Syzygy hasta 7 piezas. Como ventaja sobre el sitio anterior, admite descargas simultaneas, así que podéis seleccionar todos los enlaces a la vez y pegarlos por ejemplo en JDowloader. De hecho, esta es la lista completa de enlaces para que seleccionéis los que os interesen, o como ya hemos dicho, todos los de 3, 4, 5 y 6 piezas si disponéis de al menos 150 GB libres en vuestro disco duro. Y si además queréis alguno de 7 piezas y tenéis espacio libre, pues lo mismo.
  • Olympus. Este sitio tiene la gran ventaja de que contiene enlaces a los archivos «torrent» correspondientes a las tablebases Gaviota hasta 5 piezas, Nalimov hasta 5 piezas y Syzygy hasta 6 piezas. Tampoco vamos a explicar aquí cómo funciona la red BitTorrent, pero bastan un par de clics para descargar todos los archivos de dichas tablebases. Eso sí, para los archivos de Nalimov de 6 piezas o de Syzygy de 7 piezas deberéis acudir a las otras opciones.
  • Endgame Tablebases Online. Este sitio es posiblemente uno de los más antiguos en lo que respecta a las tablebases, y de donde me bajé hace muchos años las primeras tablas de 3, 4 y 5 piezas. En la página hay mucha información (en inglés), y también hace referencia a algunos sitios de los que acabamos de mencionar. Los enlaces empiezan a partir del apartado «Introduction», y salvo los de 3 y 4 piezas, el resto son enlaces «ed2k» que hay que copiar y pegar en eMule. La mala noticia es que seguramente no habrá mucha gente compartiendo los archivos en eMule, por lo que la descarga será presumiblemente bastante lenta, así que os recomiendo cualquiera de las opciones anteriores.

Uso en ChessBase

Cuando hablamos de ChessBase, no nos referimos solamente al gestor de base de datos del mismo nombre, sino a cualquier programa de dicha empresa, tal como Fritz, Komodo, Houdini, etc. Es decir, hablamos de utilizar las tablebases con cualquier módulo utilizando una interfaz de usuario o GUI («Graphics User Interface») de la empresa ChessBase. Existen otras aplicaciones de pago o gratuitas para analizar o jugar, tales como Chess Assistant, Aquarium, Arena, SCID vs. PC, etc., pero lo que aquí vamos a explicar no diferirá mucho para dichos casos. De todas formas, es recomendable consultar la ayuda o la web de cada programa en particular.

Instalación

La instalación de las tablebases, por llamarla de alguna forma, consiste simplemente en ubicar en una o varias carpetas de nuestro disco duro todos los archivos que componen dichas tablebases.

Es importante decidir si va a ser en una sola o en varias carpetas. Y esto tiene que ver con la forma de configurarlas, ya que no todos los programas tendrán la posibilidad de indicar más de una carpeta. En el caso de ChessBase, admite hasta 4 carpetas diferentes, como veremos en el siguiente apartado.

Como ejemplo, en mi caso tengo almacenadas las tablas en una unidad de disco «G:» (en realidad es una partición de un disco duro de 2 TB), dentro de una carpeta llamada «TableBases», y a su vez dividida en las siguientes subcarpetas:

  • 3-4-5-men (7,05 GB): los 290 archivos de las tablas de Nalimov de 3, 4 y 5 piezas.
  • 6-men (501 GB): 1.100 archivos de las tablas de Nalimov de 6 piezas. Como ya comenté, solamente descargué las tablas de los finales que se consideran más importantes.
  • Syzygy345 (938 MB): los 290 archivos de las tablas Syzygy de 3, 4 y 5 piezas.
  • Syzygy6WDL (67,8 GB): los 365 archivos «rtbw» de las tablas Syzygy de 6 piezas que almacenan las métricas WDL50.
  • Syzygy6DTZ (81,3 GB): los 365 archivos «rtbz» de las tablas Syzygy de 6 piezas que almacenan las métricas DTZ50”.

En este apartado cabría mencionar el tema del tipo de disco utilizado para almacenar los archivos de las tablebases. Aunque tradicionalmente los ordenadores incorporan una unidad de disco duro «normal» o HDD («Hard Disk Drive»), desde hace un par de años cada vez es más habitual encontrarse ordenadores con unidades de estado sólido SSD («Solid State Drive»). A groso modo podemos decir que un disco duro contiene uno o varios discos giratorios («platos») donde se almacenan los archivos, a los que se accede mediante un brazo magnético cuyo cabezal se desplaza para buscar la información necesaria en cada momento. Por el contrario, un SSD contiene chips de memoria que almacenan permanentemente la información, al estilo de los teléfonos móviles o smartphones. Debido a los componentes mecánicos que incorporan los discos duros, éstos son mucho más lentos que las unidades SSD. Sin embargo, almacenan mucha más información a menor precio. Si disponéis de un SSD con suficiente espacio libre, no dudéis en almacenar en él las tablebases, ya que los módulos podrán acceder a ellas de forma mucho más rápida que en el caso del disco duro.

Configuración

La configuración de las tablebases en cualquiera de los programas de la casa ChessBase es muy sencilla, ya que tan solo hay que indicar la carpeta o carpetas en las que hemos almacenado los archivos de las mismas.

Aunque algunas versiones que voy a mencionar no son precisamente modernas, me consta que todavía hay gente que las utiliza y, desde luego, son mucho más rápidas que las monstruosas versiones actuales llenas de funcionalidades que casi nadie utiliza…

ChessBase 9 y Fritz 8/9

Sólo admiten las tablas de Nalimov. Se configuran de la siguiente forma:

  1. Desde el menú principal hay que seleccionar «Herramientas – Opciones», con lo que se accede al cuadro de diálogo de opciones del programa.
  2. En dicho cuadro de diálogo se selecciona la pestaña “Bases de finales»:
  3. Opciones

  4. En esta pestaña vemos 4 cuadros de texto «Ruta» en los que podemos indicar hasta 4 carpetas donde hemos guardado los archivos de las tablebases. Se pueden teclear directamente, aunque lógicamente es más cómodo utilizar el correspondiente botón «Examinar» de la parte derecha.
  5. Es recomendable marcar la casilla «Cargar al iniciar programa», ya que esto ahorrará tiempo a la hora de acceder a las tablebases. En este caso, el cuadro «Caché» indica el espacio dedicado a almacenar las tablas de memoria y aumentar la velocidad de acceso a las mismas. Se puede dejar el valor por defecto, o bien aumentarlo si tenemos memoria de sobra en nuestro ordenador.
  6. Finalmente, se pulsa el botón «Ok», con lo que ya se puede realizar una prueba de un final de partida.

Cabe mencionar aquí que, aunque estas versiones sólo admiten las tablas de Nalimov, realmente es posible utilizar las tablas Syzygy indicándolo en los parámetros del módulo. Por ejemplo, en el caso de Stockfish 12 tenemos:

Parámetros módulo

En el cuadro de texto «SyzygyPath» deberéis indicar la ruta completa de la carpeta donde están almacenados los archivos de las tablebases. Se pueden indicar varias carpetas separándolas con «punto y coma», por ejemplo, en mi caso sería: G:\TableBases\Syzygy345; G:\TableBases\Syzygy6DTZ; G:\TableBases\Syzygy6WDL.

ChessBase 10/11 y Fritz 12

Sólo admiten las tablas de Nalimov. Se configuran de la siguiente forma:

  1. Según se aprecia en la imagen siguiente, se accede al cuadro de diálogo de opciones de dos formas: directamente pulsando en el icono de opciones de la barra de título [1], o bien desplegando el menú principal con el botón [2], y pulsando a continuación el botón de opciones de la parte inferior [3]:
    Botones Opciones
  2. Como se puede ver en la siguiente imagen, el cuadro de diálogo de opciones es idéntico al caso anterior, así que no hace falta explicar nada más…
    Opciones

Como acabamos de comentar, también podemos utilizar las tablas Syzygy si así se indica en las opciones del módulo.

ChessBase 15/16 y Fritz 16/17

Las últimas versiones de los programas de ChessBase admiten distintos tipos de tablas de finales. Veamos:

  1. De forma similar al caso anterior, aquí podemos pulsar directamente el icono de opciones Icono Opciones de la barra de título, o bien seleccionar el menú «Archivo» y a continuación pulsar el botón de opciones Botón Opciones de la parte inferior de dicho menú.
  2. En ambos casos veremos el cuadro de diálogo de opciones, que tiene un aspecto un poco diferente. Ahora en la parte izquierda deberemos seleccionar el apartado «Base de finales»:
    Opciones
  3. Aquí vemos las carpetas utilizadas actualmente. Para añadir otras o modificarlas, hay que pulsar el botón «Editar…», que nos lleva a un nuevo cuadro de diálogo:
    Opciones Bases de finales
  4. A la izquierda vemos que admite las tablas de Nalimov, Syzygy y Gaviota, que rellenaremos como ya se explicó anteriormente. Parece ser que hay que rellenar de la misma forma tanto el apartado «GUI» (Graphics User Interface) como «Módulo». Sinceramente, no he encontrado la explicación…

Respecto a que se disponga de varios tipos de tablebases, recordemos que las de Nalimov indican las jugadas al mate, mientras que las de Syzygy no. Algunos módulos combinan ambas, por ejemplo, las Syzygy para acelerar la búsqueda, y las de Nalimov para mostrar las jugadas al mate.

En el apartado siguiente comentaremos la función «Let’s Check» que incorporan las últimas versiones de los programas de ChessBase.

Utilización

Llegados a este punto cabe preguntarse si las tablebases son realmente necesarias para analizar partidas con un módulo, ya que los microprocesadores son cada vez más potentes y fácilmente pueden encontrar por ejemplo un mate en 30 jugadas. Podríamos decir que su utilidad reside sobre todo en casos de finales con material desbalanceado donde los módulos no encuentran el camino adecuado, ya que, hasta ahora, todavía no son capaces de razonar, sólo de calcular, lo cual siempre tiene limitaciones inherentes a la máquina en la que se ejecutan.

En estas pruebas he tenido que activar y desactivar las tablebases varias veces. Esto se puede hacer rápidamente en las opciones del módulo desmarcando o marcando la casilla «Usar Tablas de finales».

Veamos cómo utilizar las tablebases de Nalimov con un final de 6 piezas tal como éste:

FEN: 1k6/pP2K3/P7/8/4B3/8/8/8 w - - 0 11k6/pP2K3/P7/8/4B3/8/8/8 w – – 0 1

Por si alguno no lo conocéis, lo que os pongo debajo del tablero es la notación FEN (Forsyth-Edwards Notation), un estándar para poder describir posiciones, lo que permite copiarlas y pegarlas de un programa a otro. Recordemos que ya mencionamos a Steven Edwards al hablar de los orígenes de las tablebases, mientras que David Forsyth fue quien publicó la idea original en 1883. El formato de dicha notación no es complicado: las 8 filas del tablero, desde la 8 a la 1, aparecen separadas por una barra ‘/’, se indican las casillas vacías consecutivas con un número, las piezas negras son las letras minúsculas (iniciales en inglés), y las piezas blancas son las letras mayúsculas; la última ‘w’ (white) indica que les toca mover a las blancas, en otro caso pondría ‘b’ (black); los indicadores que hay detrás se refieren al enroque, capturas al paso, número de movimientos para alcanzar la regla de las 50 jugadas, y nº de la primera jugada (podéis ver la explicación completa en la Wikipedia).

En ChessBase podéis pegar la notación FEN en cualquier tablero de partida con la opción «Inicio – Pegar posición». Otra forma es en «Inicio – Nueva partida – Configurar posición» (que equivale a pulsar la tecla ‘S’), donde además de un botón «Pegar FEN», también tenéis otro botón «Copiar FEN» para luego pegar la posición en otro programa o incluso en las páginas web que veremos en el apartado siguiente.

Volviendo al diagrama anterior, en esta posición cualquier jugador se da cuenta, por lógica, de que el negro sólo tiene que mover su rey entre b8 y c7 para entablar, ya que si el rey blanco se acerca lo dejará ahogado. Si copiáis y pegáis la notación FEN en vuestro programa favorito, y arrancáis el análisis infinito sin utilizar las tablebases, veréis que el módulo da mucha ventaja a las blancas. Esto se debe a que no es capaz de profundizar lo suficiente para darse cuenta de que no hay forma de progresar en menos de 50 jugadas. Yo dejé a Stockfish unos minutos hasta profundidad 46/87 (es decir, entre 23 y 43 jugadas), y la evaluación era de +-4.44.

Análisis Stockfish

Para utilizar las tablebases en este ejemplo, es evidente que necesitamos haber descargado los archivos «kbppkp», es decir, el final de rey+alfil+peón+peón contra rey+peón. En este caso son 10 archivos que ocupan en total 3,79 GB. En la misma ventana de análisis de la imagen, haciendo clic en el nombre del módulo, aparecerá el cuadro de diálogo de opciones del mismo, donde bastará con volver a activar la mencionada casilla «Usar Tablas de finales». Al darle a «Ok» para cerrar el cuadro de diálogo, veremos que automáticamente cambia la ventana de análisis, mostrando inmediatamente todas las jugadas posibles y la valoración de cada una, como se aprecia en la siguiente imagen:

Resultado Tablebases

Es importante resaltar lo de «inmediatamente», es decir, el módulo no tarda prácticamente nada en consultar esta posición en las tablebases y mostrarnos el resultado.

Veamos ahora otro ejemplo en el que el primer bando da mate en un determinado número de jugadas. He buscado también otro final complicado con material desbalanceado, ya que en otro caso el módulo encuentra el mate sin mayores problemas sin necesidad de las tablebases:

FEN: 5B2/1n6/1k6/3K4/B7/8/8/8 w - - 0 15B2/1n6/1k6/3K4/B7/8/8/8 w – – 0 1

Este es un final compuesto por Kling y Horwitz en 1851, y durante más de un siglo se pensó que eran tablas. Pero precisamente las tablebases sirvieron para cambiar esta opinión. Stockfish 12, a profundidad 65/77 (entre 32 y 38 jugadas) tan sólo da una ventaja de +-2.29 para las blancas, pero activando las tablebases, vemos que ¡las blancas dan mate en 57 jugadas!

Resultado Tablebases

No creo que nadie sea capaz de dar este mate en una partida real, e incluso ni siquiera en su casa por mucho tiempo de análisis que invierta si no tiene la ayuda de un módulo. Por otra parte, está el tema de las regla de las 50 jugadas. ¿En una partida real se puede saltar esta regla sabiendo que un final teóricamente se gana sobrepasando ese número? Como podéis ver en el enlace de la Wikipedia, esta regla se modificó en el siglo XX debido al descubrimiento de finales como el que acabamos de ver. Sin embargo, debido a la dificultad de estos finales prácticamente imposibles sobre el tablero, la FIDE volvió a reinstaurar la regla original, pero con una pequeña modificación:

  • Un jugador puede reclamar tablas en su turno de juego si se ha alcanzado la regla de las 50 jugadas, para lo cual debe anotar en la planilla su siguiente jugada sin realizarla sobre el tablero y avisar al árbitro de su reclamación.
  • Si se ha alcanzado la regla de las 50 jugadas y ninguno de los dos jugadores reclama tablas, la partida se declara automáticamente tablas si ésta se prolonga otras 25 jugadas sin mover ningún peón ni realizar ninguna captura, salvo que haya mate en la jugada siguiente a esas 25.

Uno de los tipos de finales más complicados y habituales en las partidas tanto de humanos como de módulos, son los de torres y peones. Veamos el siguiente ejemplo de 7 piezas en el que las blancas juegan y ganan:

FEN: 5R2/8/8/k7/pr6/4K3/4PP2/8 w - - 0 15R2/8/8/k7/pr6/4K3/4PP2/8 w – – 0 1

Aunque no tengo instalado este final de 7 piezas, resulta interesante analizarlo, ya que el módulo acierta las primeras jugadas y «decide» que hay que cambiar las torres para ganar. Es posible que de alguna forma esté consultando las tablebases de 6 piezas, pero en ese caso ya debería poder decir en cuántas jugadas se gana, mientras que en la posición inicial tan solo da una ventaja de +-2.59. Así, tras las jugadas 1.Ta8+ Rb5 2.Tb8+ Rc4, sigue dando la misma valoración de +-2.59 para la jugada 3.Txb4+. Y en cuanto se realiza esta jugada sobre el tablero, automáticamente las tablas de finales de 6 piezas dicen que hay mate, claro que ¡en 92 movimientos!

Resultado Tablebases

Aunque realmente no tienen ninguna utilidad práctica, como curiosidad os dejo estos dos finales de 7 piezas:

FEN: 8/1r6/8/6n1/5k2/1b6/3K3N/7Q b - - 0 18/1r6/8/6n1/5k2/1b6/3K3N/7Q b – – 0 1 FEN: 1n1k4/6Q1/5KP1/8/7b/1r6/8/8 w - - 0 11n1k4/6Q1/5KP1/8/7b/1r6/8/8 w – – 0 1

Se trata de los finales más largos que se conocen hasta la fecha con 7 piezas. En el primero juegan las negras con 1…Td7+, y las blancas dan mate ¡en 545 jugadas! En el segundo caso juegan las blancas, y dan mate ¡en 549 jugadas! Personalmente podría perder (o ganar…) rápidamente ambos finales jugando tanto con blancas como con negras sin ruborizarme lo más mínimo…

Por último, cabe aquí mencionar la función «Let’s Check» de las últimas versiones de los programas de ChessBase. Desde no hace mucho se han incorporado las tablas de finales de 7 piezas a la «nube de ChessBase». Eso quiere decir que, aunque no tengamos las tablebases instaladas en nuestro ordenador, la función «Let’s Check» accede automáticamente a ellas y nos muestra el resultado, tal como podemos apreciar en la siguiente imagen:

Let's Check

Como podemos ver, en el panel izquierdo Stockfish no utiliza las tablebases y muestra sus análisis correspondientes, mientras que en el panel derecho la función «Let’s Check» indica que las blancas dan mate en 27 jugadas. Eso sí, sólo indica las 3 mejores jugadas, mientras que ya hemos visto que en el caso de tener las tablebases instaladas mostraría todas las jugadas posibles.

Tablas online

Las tablas de finales también se pueden utilizar de forma online. Esto es algo más incómodo si estamos analizando una partida completa en ChessBase, ya que tendremos que ir a otro sitio a consultar el final, y después incluir los análisis o comentarios pertinentes según los resultados obtenidos. Por el contrario, nos evita tener que instalar las tablebases en nuestro disco duro. Para estos casos, no olvidéis la opción que comentamos antes de copiar y pegar la notación FEN de un sitio a otro.

Veamos las distintas posibilidades que podemos encontrar en Internet.

Nalimov Tablebases

Existen un par de sitios donde se puede consultar un final utilizando las tablas de Nalimov:

  • Knowledge4IT: es un sitio de programación con una página donde se pueden consultar las tablas de Nalimov de 6 piezas.
  • Shredder Chess: es la web del programa Shredder, uno de los mejores en su época. La interface para utilizar las tablebases de Nalimov de 6 piezas es la misma que en el caso anterior.

Aquí podéis ver un ejemplo de su aspecto para este final «5R2/8/8/1k6/1pb5/8/1K3P2/8 w – – 0 1»:

Nalimov Online

Básicamente sólo hay que hacer clic en las piezas de la parte inferior, e ir situándolas en el tablero, indicando a la derecha quién mueve primero. A medida que coloquemos las piezas, automáticamente veremos a la derecha el resultado de las tablebases.

La verdad es que no me gusta mucho, ya que resulta incómodo colocar las piezas o vaciar una casilla, y no permite mover las piezas sobre el tablero para ir avanzando en el final. Por suerte, permite pegar una posición en notación FEN (botón «Input FEN») o copiar la notación FEN que aparece debajo del tablero para pegarla en otro programa.

Lomonosov Tablebases

El único sitio que he encontrado es ChessOK tablebases. Es necesario registrarse de forma gratuita para acceder a las tablas de 6 piezas y dispone de app para smartphone. También incluye las tablas de 7 piezas, pero previo pago anual de 20$ o bien siendo usuario registrado de alguno de los programas de ChessOK (ChessOK Aquarium 2020, Houdini Aquarium 2019 o Chess Assistant 20, o versiones posteriores).

El aspecto para el mismo final del ejemplo anterior lo podéis ver en la siguiente imagen:

Lomonosov Online

Sólo hay que colocar las piezas en el tablero (o bien en la parte superior se carga la notación FEN con el botón «Load» ), a continuación se pulsa el botón «Evaluate» y aparece a la derecha una variante principal hasta el mate (o hasta las tablas). Pulsando el botón «Tree», debajo se muestran las demás alternativas.

La interfaz está mejor que en el caso anterior, ya que permite arrastrar las piezas tanto para colocarlas como dentro del tablero. Los botones que hay debajo del tablero a la izquierda permiten desplazar la posición una fila o columna, para comprobar así finales similares (ya sabemos que no es lo mismo un final con un peón central que con uno de torre, o que esté más o menos avanzado).

Syzygy Tablebases

El sitio Syzygy endgame tablebase es el único que ofrece de forma gratuita las tablebases completas de 7 piezas (aparte de Lichess, que comentaremos a continuación). En la siguiente imagen podéis ver el aspecto para el ejemplo anterior:

Syzygy Online

La interfaz permite arrastrar las piezas tanto para colocarlas como dentro del tablero, o bien copiar/pegar la notación FEN. Las flechas de la parte inferior no son para desplazar las piezas como en el caso anterior, sino para colocarlas de forma simétrica en horizontal o vertical, aunque no le veo mucha utilidad.

A la derecha aparecen los resultados. Como ya comentamos anteriormente, las tablas Syzygy no indican la métrica DTM (Depth To Mate), sino DTZ. Supuestamente, cuanto menor sea este valor, más rápido se alcanzará la victoria. Personalmente, echo de menos el valor DTM…

Una funcionalidad interesante es que, al colocar una posición, automáticamente cambia la dirección del navegador de la parte superior. En este ejemplo, obtenemos https://syzygy-tables.info/?fen=5R2/8/8/1k6/1pb5/8/1K3P2/8_w_-_-_0_1, y podemos pasarle esta dirección a cualquier persona para que consulte el final. De todas formas, también podríamos enviarle directamente la notación FEN.

Tablas Syzygy en Lichess

Si alguien todavía no conoce Lichess, de forma resumida os diré que es una plataforma online completamente gratuita donde se puede jugar, participar en torneos, seguir partidas, consultar manuales y artículos que comparten los usuarios, analizar las partidas jugadas u otras que incorporemos, etc.

En lo que respecta a este artículo, es este último punto el que más nos interesa. Si se trata de una partida jugada en Lichess, basta con pulsar el botón «Tablero de análisis» que aparece en la misma. En caso de querer incorporar una partida externa, hay que ir al menú superior, seleccionar la opción «Herramientas» y elegir alguna de las opciones «Tablero de análisis», «Importar partida» o «Editor de tablero». No voy a extenderme en las dos primeras (quizás lo haga en un próximo artículo), y aquí nos interesa la tercera, que da paso a una interfaz similar a la ya vista en casos anteriores, como ilustra la siguiente imagen:

Lichess Editor de tablero

Aquí podemos pulsar en «Limpiar tablero» para luego colocar las piezas del final, o bien pegar la notación FEN en el cuadro correspondiente y pulsar Intro (debajo, en el cuadro «URL», aparece la dirección de Lichess que comentamos antes). Finalmente, pulsamos el botón «Tablero de análisis» (también podéis probar los botones «Continuar desde aquí» y «Estudiar», no tengáis miedo en experimentar). El aspecto de la página será el siguiente:

Lichess Tablebases

A la derecha aparece el mismo resultado que vimos antes en la página «Syzygy tablebases». Obsérvese que el icono en forma de libro Libro de aperturas y finales de la parte inferior está marcado, y que al hacer clic en él desaparece la ventanita de resultados. Este icono también sirve para estudiar la apertura si estamos analizando las primeras jugadas de una partida, pero esto ya no es objetivo del presente artículo…

Como ejemplo de 7 piezas, podemos añadir un peón negro ligado:

Lichess Tablebases

¡Y así la partida son tablas teóricas! No olvidemos que hay un abismo entre declarar una partida como victoria o tablas teóricas, y jugar un final perfecto sobre el tablero (o bien online) bajo la presión del reloj con un rival enfrente…

Tablas Syzygy en «ChessBase Let’s Check»

Para terminar, según comentamos anteriormente y tal como podemos leer en este artículo de Karsten Müller, ChessBase ha incorporado las tablas de 7 piezas en su plataforma de análisis online «Let’s Check». Es necesario pagar para registrarse, aunque a la derecha hay un botón «Entrar como invitado» para probar la plataforma, pero no parece que permita hacer prácticamente nada de forma gratuita…

 

Y llegados a este punto creo que ya es suficiente. Espero no haberme dejado nada en el tintero, y también deseo que este extenso artículo os haya gustado y os resulte de utilidad.

Saludos.

6 Comments

  1. Pablo Bazán

    Muy interesante este artículo, además muy completo. Muchas gracias por el excelente trabajo.

  2. Sergio

    Extraordinario trabajo. Un saludo.

  3. Paula

    Excelente. Me gustaría ponerme en contacto contigo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_bye.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_good.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_negative.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_scratch.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_wacko.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_yahoo.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_cool.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_heart.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_rose.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_smile.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_whistle3.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_yes.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_cry.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_mail.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_sad.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_unsure.gif  https://www.guapaweb.es/wp-content/plugins/wp-monalisa/icons/wpml_wink.gif