Ajedrez, análisis al infinito, Aquarium, IDeA, Sin categorizar

Análisis en el Ajedrez por Correspondencia-I

By Gino Figlio on diciembre 2, 2012 0 Comments

english

Con la llegada de los motores de ajedrez y otros programas o métodos de análisis, el ajedrez por correspondencia ha experimentado una revolución.

La esencia del juego no ha cambiado según los que continúan practicándolo pero la manera como se practica ha tenido un giro dramático en los últimos años.

Quisiera invitarlos a un viaje turbulento a traves del laberinto del análisis moderno en el ajedrez por correspondencia, guiados por un experto en el tema, mi amigo Kostas Oreopoulos. Conocí a Kostas en el Forum de Aquarium, su pseudónimo allí es buffos. Kostas es una persona extremadamente inteligente, no hace falta conocerlo en persona para arribar a esta conclusión en forma rápida cuando uno interactúa con él. El siempre está dispuesto a responder preguntas de aficionados como yo para ayudarnos a tomar la mayor ventaja del uso de Aquarium, la mejor herramienta de análisis en el ajedrez por correspondencia. Kostas ha accedido generosamente a una entrevista y compartirá su profundo conocimiento del tema con nosotros. Pueden revisar una biografía corta que nos ha enviado.

1- Estimado Kostas, gracias por la entrevista. El análisis del ajedrez por correspondencia ha progresado significativamente a medida que los motores de ajedrez se han hecho mas fuertes. Sin embargo, ciertos aspectos del análisis como la investigación en la apertura se ha hecho muy sofisticados, complejos pero a la vez interesantes con el arribo de productos como Aquarium y IDeA, especialmente el uso coordinado del análisis al infinito y IDeA.

Podrías decirnos cómo preparas las aperturas y cómo analizas las opciones jugada por jugada cuando juegas una partida de ajedrez por correspondencia?

 

Cómo preparar la Apertura
Asumo que tienen un conocimiento adecuado del programa Aquarium ya que sería demasiado detallar todo el proceso.

Preparar una apertura es un proceso cambiante. Mantener un repertorio de aperturas y expandirlo es trabajo arduo. Incluso con bases de partidas es muy dificil ya que el análisis en el ajedrez por correspondencia es generalmente muy profundo  y detallado, por ello mantenerse al dia es sumamente laborioso.

Para esta labor utilizo los árboles de Aquarium (tanto los generados por la computadora es decir, IDeA; así como los árboles de análisis por infinito y los generados a traves de bases de aperturas).

Los árboles de bases de datos no son nuevos por supuesto. Han estado “aqui” por mas de 15 años (si mal no recuerdo desde las primeras versiones de Chess Assistant). Son ciertamente muy útiles, y representan una herramienta que todo ajedrecista por correspondencia debe poseer.

La manera como los utilizo es bastante estandard. Tengo un árbol generado en mi base de datos mas grande, otro en base a partidas por correspondencia, otro en base a jugadores centauro y por último uno basado en mis propias partidas por correspondencia.

El árbol de mi base de datos mas grande es útil para guiarmea traves de lo que se ha jugado en la posición en estudio (y para alimentar a IDeA, mas acerca de ésto se detalla despues). Los porcentajes de victoria no son tan importantes en esta base de datos ya que incluye partidas en vivo sobre el tablero, pero los porcentajes de victoria de las otras dos bases de datos (centauros y por correspondencia) son una fuente de inspiración y guía importantes.

Por supuesto nunca los uso en forma ciega ya que una sola jugada puede cambiar la valoración de toda una variante!

Finalmente, el árbol de mis base de partidas personal me sirve para recordar si es que he jugado la posición en el pasado, lo cual es mucho mas simple que hacer busquedas sucesivas en la base de datos.

Todos estos árboles junto con otra información se presentan en mi configuración de árboles en Aquarium (pic se presentará despues).

Un gran obstáculo es este momento es que bases de datos muy grandes, como la de Opening Master por ejemplo, no pueden procesarse a un árbol único dado su tamaño. Esto se debe a la naturaleza del programa Aquarium escrito en 32bit (así como Chess Assistant, pero quien se imaginaría que algún dia habrían árboles de tamaño mayor a 2 GB hace 20 años!).

El truco que uso es dividir el árbol en partes correspondientes a diferentes etapas en el tiempo. Por ejemplo, hago una búsqueda en la base de datos mas grande por partidas jugadas hasta 1990 y luego creo un árbol con el resultado. Luego hago lo mismo con partidas entre 1990-2000. 2000-2003. 2005-2007. etc. (los rangos de años son solo ejemplos, la única condición es que el árbol resultante sea menor de 2 GB en tamaño). El último árbol sería del 2011-presente. Cada vez que el Opening Master es puesta al día simplemente hago una búsqueda por partidas en el último período y pongo al día el árbol correspondiente. De esta manera no tengo que re-crear toda la base de datos.

Bueno ahora viene com hacer para combinar todos estos árboles y poder visualizar todas las estadísticas como una sola. El truco que usa Aquarium es combinarlos a través de un file treeheader.uni. Esto son simples files de texto. El siguiente es un ejemplo de mi “miarbol.uni”

[Data]
Tree1=C:XXXXXXXXXXXXATreesstatisticsd2m
Tree2=C:XXXXXXXXXXXXATreesstatisticsd2m2007
Tree3=C:XXXXXXXXXXXXATreesstatisticsd2m2011

Como pueden observar solo tienen que enumerar la localización de los árboles que desean mostrar en conjunto y luego guardar el file como un *.uni file (que es solo un file de texto). Luego utilizan este file como si fuese un árbol normal, o mas bien como si fuese el file *.hsh del árbol, al momento de cargar la información en las columnas de la configuración.

Hasta donde yo sé, la siguiente versión de Aquarium soportará árboles muy grandes y por ende no habría necesidad de usar estos trucos per yo sugeriría todavía dividir el árbol en dos partes por lo menos, para no tener qu regenerar todo el árbol cuando ponen al día su base de datos (por ejemplo, antes del 2010, del 2010 hasta la actualidad).

Ejemplo de configuración mostrando info de diferentes bases de datos

Esta es la primera parte y la mas fácil para la preparación de aperturas, la siguiente que toma mas tiempo es la generación de árboles con la computadora, es decir, árboles que tienen una evaluación para cada posición.

Existen dos tipos de árboles generados con computadora; los sometidos a minimax (como IDeA o CAP) y los que no han sostenido minimax y que solamente contienen evaluaciones puntuales (por ejemplo los de análisis al infinito). Ambos son muy útiles y veremos como podemos usarlos para llevar una partida a un terreno que sea favorable para nosotros. La idea general es que si la evaluación puntual proveída por el motor de ajedrez es muy diferente a la evaluación por minimax, es obvio que el motor está evaluando la posición en forma incorrecta (haciendo posible conducir la partida a posiciones donde no es suficiente utilizar el análisis al infinito).

Minimax es un proceso muy simple. Digamos que ustedes alcanzan una posición y tienen la opción de efectuar 5 jugadas diferentes con las piezas negras. Cada jugada lleva a una posición diferente, con una evaluación diferente. Cual sería la mejor jugada?. Sería la jugada que tenga la evaluación mínima (ya que la evaluación de la computadora es siempre desde la perspectiva del blanco). Cuando seguimos este procedimiento con el blanco a mover (digamos con numero N de jugadas opcionales), escogeremos la jugada con el score máximo, es decir la que maximiza la evaluación. Por este motivo el proceso de minimax recibe su nombre. Cada nodo “padre” recibe un score o evaluación que puede ser una minimización o maximización dependiendo desde que lado del tablero se hace la observación.

El resultado es simple, el score o evaluación se propaga a los nodos “padre” y cada posición ahora alberga una segunda evaluación, la evaluación por minimax.

Evaluaciones puntuales (IA) versus evaluaciones sometidas a minimax (IDeA)

Como pueden imaginarse la simple adición de un nuevo score a una jugada puede cambiar la evaluación de muchas posiciones en el árbol. Por ejemplo, si en una posición que ustedes consideraban era de equilibrio, de pronto se encuentra una jugada ganadora, eontonces esta posición así como todas las posiciones que conducen a la misma deben cambiar su evaluación para reflejar este cambio.

La parte mas importante y que consume mas tiempo es la generación de dichos árboles. No sé cuál es la manera mas eficiente de hacerlo pero esto es lo que yo hago.

En primer lugar tengo un árbol de IDeA muy grande, que utilizo como árbol Master. Con frecuencia exporto información de árboles-IDeA mas pequeños, para mantenerlo al dia y para popder utilizarlo como referencia. Nunca uso este árbol grande con IDeA, solo como árbol Master para importar o exportar información de proyectos mas pequeños. Mi consejo mas importante, tomen copias frecuentes a este árbol y guardenlas en lugares diferentes. Uno no quiere perder este árbol inmenso.

Configuración mostrando evaluaciones del árbol Master y CAP

El siguiente árbol que utilizo es el CAP. Esto es algo que uno debe tener. Una gran cantidad de trabajo se ha invertido en su creación.

Para cada partida utilizo “proyectos enlazados”. Qué son estos proyectos?. Imaginen una partida en la base de datos que está enlazada a un proyecto de IDeA. Porqué es mejor enlazar los proyectos a partidas en la base de datos? Porque el análisis se guarda en la partida y una vez que uno borra el proyecto, nada se pierde. Por supuesto existe un beneficio adicional en enlazar proyectos, la combinación del análisis al infinito con IDeA, pero voy a regresar a este punto mas tarde.

(continuará)

Leave a comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.