Obtener el movimiento correcto de las tablas de syzygy (Python)
Creé un motor de ajedrez en Python y ahora quiero comenzar a usar las tablas de finales en syzygy. He descargado todos los archivos relevantes y ahora estoy listo para comenzar.
He descubierto cómo acceder a los archivos en Python a través, por ejemplo, del módulo Python Chess ( enlace ). Allí se explica cómo puedo obtener la información de WDL y DTZ desde una posición de FEN, lo que a veces puede ser útil. PERO lo que realmente quiero es saber el movimiento a realizar para ganar en esa posición de FEN, y no he podido averiguar cómo obtener esta información de los archivos. La información en línea es muy limitada y espero que alguien pueda orientarme sobre cómo hacer esto.
Respuestas
No puedo estar absolutamente seguro, ya que estas bases de tablas en particular no me son familiares. Sin embargo, en todas las demás bases de tablas que he usado, desde Thompson en adelante, tenía, básicamente, que:
- generar todos los movimientos legales desde el puesto,
- para cada movimiento, haz el movimiento y busca el puntaje para la posición resultante, y luego
- seleccione 'el movimiento correcto' en función de las puntuaciones obtenidas, en comparación con la puntuación de la posición inicial.