| Ajedrez e Informática |
|
Gracias a la tecnología de los computadores, el ajedrez cuenta con herramientas muy
valiosas para los amantes de este juego-ciencia.
La discusión acerca de si la máquina es superior o no al hombre, ya no es importante,
fué finalmente resuelta (a favor de la máquina ... ).
Lo importante hoy en día es contar con herramientas informáticas que ayuden al
aprendizaje y desarrollo del juego del ajedrez.
Podemos hacer una sencilla clasificación de estas herramientas:
- Interfases gráficas de usuario (GUI) : Permiten "dibujar" en la pantalla del
computador el tablero de ajedrez y jugar partidas. Normalmente se incluyen
algunos motores (engines).
- Motores (engines): Son los programas que "juegan" al ajedrez. La mayoría
requieren instalarse en las GUI.
- Visores de partidas : Permiten analizar partidas de ajedrez. Algunos de ellos
incluyen la posibilidad de análisis mediante uno o varios motores.
- Jugar en la red : Existen programas que permiten jugar con otros jugadores en internet
o en una red local. Muchas de las GUI incluyen esta funcionalidad.
- Servidores : Podemos configurar un computador como servidor de juegos
ya sea en red local o por internet.
Existen versiones comerciales (de pago) y versiones gratis de estas herramientas .
Algunas aplicaciones gratis son tan buenas como las de pago, por lo tanto no tiene
sentido "piratear" las versiones comerciales. Es evidente que estas últimas cuentan
con ciertas ventajas sobre las versiones gratis. Si tomamos en cuenta además que los
precios de las versiones comerciales son realmente asequibles, de nuevo, no tiene
sentido tener copias "piratas".
|
| Motores de ajedrez |
|
Actualmente existe una gran cantidad de motores de ajedrez disponibles. Algunos de sus autores
inclusive han liberado el programa fuente con el objeto de que otros puedan mejorarlos o
tomarlos como base para nuevos desarrollos.
La gran mayoría de estos motores requieren de una interfase gráfica para ser funcionales.
Actualmente existen dos protocolos de comunicación entre los motores y las GUI: UCI y xboard.
El más popular es UCI, ya que se creó con la idea de que fuese un estandard. Sin embargo
los defensores del protocolo xboard sostienen que éste es superior a UCI.
En general las GUI incluyen la posibilidad de comunicación mediante ambos protocolos.
Que diferencias existen entre todos estos motores ?.
Lo primero que se desea es
determinar la "fortaleza" de un motor. Para ello se mide el "elo" del motor. El procedimiento
es similar al utilizado para los jugadores humanos, lo cual permite no sólo valorar al motor
sino también "compararlo" con el desempeño de los jugadores humanos.
Adicionalmente, a los entendidos en la materia les interesa saber cuan "humano" es el motor, es
decir si su juego se aproxima al de un humano. Para lograr esta "humanidad"
se requiere que el algoritmo del motor se acerque lo mas posible a la forma de jugar de un humano,
lo cual no es fácil de implementar.
Otro aspecto interesante es la capacidad del motor para resolver problemas de ajedrez.
Para ello se han desarrollado "test suites" (stsxx.epd, arasan13.epd, wac.epd, etc.), que
ponen a prueba la capacidad del motor para resolver dichos problemas.
Disponemos de varias formas para evaluar a un motor en el desempeño de estos tests :
- Algunas GUI (Arena, ICE) tienen esta funcionalidad.
- La utilidad Polyglot (su principal funcionalidad es permitir operar motores UCI en xboard)
incluye la posibilidad de ejecutar estos tests (polyglot epd-test -epd arasan13.epd -max-time 5 > resultados.txt) .
- Algunos motores incluyen instrucciones que permiten la ejecución de estos tests.
- Crafty : En modo consola test arasan13.epd
- Critter : En modo consola epdtest arasan13.epd
Con el objeto de "ayudar" a los motores en su juego, se han creado bases de datos de aperturas (books) y de
finales de juego (tablebase o endgames). Es decir, el motor cuenta con un "libro de aperturas"
para la fase inicial del
juego y una base de datos de finales para la fase final del juego, en consecuencia sólo "piensa"
durante la fase intermdedia de la partida
Los libros de aperturas se elaboran a partir de recopilación de partidas de ajedrez y las bases de datos
de finales se "crean" a partir de anális de finales de partidas con varias piezas. Actualmente
hay disponibles finales para seis piezas (varios gigas de información).
|