- Motor de ajedrez
-
Un motor de ajedrez es un programa que sabe jugar ajedrez y que implementa un lenguaje de comunicación que le permite hablar con otros programas.
Contenido
Interfaz
El lenguaje de comunicación o protocolo manejado por un motor le permite ser usado por un programa gráfico (interfaz gráfica de usuario) que maneje el mismo lenguaje y que despliega un tablero de ajedrez con bellas piezas.
Las interfáz o GUI permiten a una persona jugar contra un motor en un ambiente gráfico agradable pero además permiten otras cosas como el enfrentamiento entre motores para medir su fuerza, juegos en red de área local y en internet (Free Internet Chess Server). Las GUIs o interfaces más famosas son XBoard en Linux y Arena (ajedrez)[1], WinBoard y ChessBase en Windows.
Protocolos
La interfaz de línea de comandos de GNU Chess se convirtió en el primer estándar de facto, llamado Protocolo de Comunicación de Motores de Ajedrez y fue soportado primero por XBoard. A partir de Noviembre de 2000 hay un protocolo más nuevo, UCI de sus siglas en inglés Universal Chess Interface. Algunos motores soportan los dos protocolos. El Protocolo de Comunicación de Motores de Ajedrez es el más popular pero muchos desarrolladores piensan que el UCI es más expresivo. Algunas interfaces como Arena, soportan varios protocolos mientras que hay otras, como WinBoard, que soportan sólo una y dependen de intérpretes, como Polyglot.
Fuerza creciente
Los motores de ajedrez incrementan su fuerza de juego cada año. Esto es en parte por el incremento en la capacidad de procesamiento que permite hacer cálculos más profundos en un tiempo dado. Adicionalmente, las técnicas de programación han mejorado permitiendo a los módulos ser más selectivos en las líneas que analizan y tener más "entendimiento posicional".
Algunos motores usan bases de datos de finales para incrementar su fuerza durante el final. Una base de datos de finales es una base de datos de todas las posibles posiciones con pequeños grupos de material. Cada posición es de manera concluyente determinada como ganadora, perdedora, o tablas para el jugador que mueve, y el número de jugadas para el final con el mejor juego de cada lado. Las bases de datos de finales en todos los casos identifican la mejor jugada en cada posición incluida (identificando la jugada que más rápido contra una defensa perfecta, o la jugada que pierde más lentamente contra un ataque óptimo). Hay bases de datos disponibles para finales de 3 a 6 piezas (contando los reyes) y para algunos de 7 piezas. Cuando la maniobra en un final para lograr un mejoramiento irreversible se va más allá del horizonte de cálculo del motor, no se garantiza que éste encuentre la mejor jugada sin el uso de una base de datos de finales, y en muchos casos puede incurrir en la regla de las 50 jugadas. Algunos expertos han señalado el potencial mal uso de las bases de datos de finales por los programadores, llevando a un mal juego.
Comparación entre motores
Torneos
Los resultados de los torneos de motores, como el Torneo Mundial de Ajedrez por Computadora, dan una idea de la fuerzas relativas entre los motores de ajedrez. Sin embargo, en los torneos no se juega un número de partidas estadísticamente significativo para determinar de manera precisa la fuerza de los motores. De hecho, el número de partidas necesario para alcanzar la precisión, es de miles y es impracticable bajo el esquema de un torneo [2]. Muchos torneos permiten además cualquier tipo de harware, en estos se comparan las combinaciones motor/harware.
Históricamente, los programas comerciales han sido los motores más fuertes. Rybka ganó el WCCC de 2007. Algo que se ha visto, es que si un motor gana un torneo o tiene un buen desempeño en uno (por ejemplo Zappa en 2005), entonces es rápidamente comercializado.
Listas de clasificación de motores
Las listas de calificación de los motores de ajedrez ayudan a proveer medidas estadísticas sobre la fuerza de los distintos motores. Estas listas juegan muchas partidas entre motores en plataformas estándar de hardware, quitando así el factor de diferencias de procesador que puede ser una ventaja. Estas listas no solo establecen una clasificación, sino también márgenes de error para las calificaciones dadas. Además las listas típicamente juegan partidas continuamente, publicando muchos datos por año, comparando con los torneos que solo se hacen una vez al año.
Suites de prueba
Los motores se pueden probar midiendo su desempeño en posiciones específicas. El uso de Suites de prueba es típico, en donde para una posición dada hay una mejor jugada por encontrar.Estas posiciones pueden ser orientados hacia lo posicional, táctico o juego de finales. La suite de prueba Nolot, por ejemplo, se enfoca en sacrificios profundos.[9] Hay otras suites como la BT2450 y BT2630 desarrolladas por Hubert Bednorz y Fred Toennissen. Estas suites miden la capacidad táctica de un módulo [10] y han sido utilizadas por lo menos por REBEL.[11] Hay además una suite de uso general llamada Brilliancy por Dana Turnmire. La suite ha sido compilada en su mayoría desde How to Reassess Your Chess Workbook.[12]
Categorías de motores
Motores gratuitos
Hay cientos de motores de ajedrez disponibles de manera gratuita y que cumplan con alguno de los protocolos de comunicación mencionados anteriormente. Muchos corren en Windows o son open source. Unos cuantos de los más fuertes se listan. Otros pueden encontrarse mirando las listas de calificación o los enlaces externos.
Puntajes Elo tomados de CCRL 40/40, accedido en Julio de 2011.
- Alaric (v707 Elo 2752) por Peter Fendrich (SE)
- Alfil (v811 Elo 2706) por Enrique Sánchez (SP)
- Aristarch (v4.50 Elo 2698) por Stefan Zipproth (DE)
- Baron (v1.8.1 Elo 2625) por Richard Pijl (NL)
- Crafty (v21.5 Elo 2631 - 21.6 disponible) por Bob Hyatt (US)
- Delfi (v5.2 Elo 2756) por Philippe Fabiani (FR)
- Fruit (v2.3.1 Elo 2863) por Fabien Letouzey (FR)
- Gambit Fruit (derivado de Fruit) por Fabien Letouzey/Bryan Hofmann (FR/US)
- Houdini (v1.5a Elo 3309)
- Glaurung (v1.2.1 Elo 2726) por Tord Romstad (NO)
- Ktulu (v4.2) por Rahman Paidar (IR)
- List (v5.12 Elo 2720) por Fritz Reul (DE)
- Movei (v0.08.438 Elo 2748) por Uri Blass (IL)
- Naum (v1.91 Elo 2704) por Aleksandar Naumov (RS/CA)
- Pharaon (3.5.1 Elo 2708) por Franck Zibi (FR)
- ProDeo (v1.2 Elo 2689) por Ed Schröder (NL)
- Ruffian (v1.0.5 Elo 2711) por Per-Ola Valfridsson (SE)
- Rybka (v.10 (versión gratuita) Elo 2920) por Vasik Rajlich (CZ/US)
- Scorpio (v1.9 Elo 2754) por Daniel Shawul (ET)
- Sjeng (es el módulo de Mac OS X Chess) por Gian-Carlo Pascutto (BE)
- Slow Chess (vBlitz WV2.1 Elo 2740) por Jonathan Kreuzer (US)
- Spike (v1.2 Turin Elo 2855) por Volker Böhm y Ralf Schäfer (DE)
- Strelka (v1.8 Elo 2867) por Yuri Osipov (RU)
- Toga II (v1.3.4 Elo 2868) derivado de Fruit por Fabien Letouzey/Thomas Gaksch (FR/DE)
- Wildcat (v7 Elo 2730) por Igor Korshunov (RU)
- Zappa (v1.1 (versión gratuita)) Elo 2687 por Anthony Cozzie (US)
Ikarus y Ferret, fueron los ganadores del World Computer Speed Chess Championship.
Motores pedagógicos
Estos programas open source fueron expresamente escritos para enseñar el arte de la programación de ajedrez.
- FirstChess
- Gerbil
- Gray Matter
- Mizar
- Tom Kerrigan's Simple Chess Program (TSCP)
- Viper
- Módulo de Ajedrez Xadreco
Programas comerciales
Estos programas se distribuyen comercialmente. Muchos incluyen su propia interfaz de usuario.
- Chess Genius, por Richard Lang
- Chessmaster
- Chess Tiger
- Fritz (procesador simple), Deep Fritz (multi procesador)
- Gandalf
- HIARCS
- Junior - (versiones mono- y multi-procesador)
- The King - el módulo de programa Chessmaster
- Ktulu
- Loop
- Naum versiones 2.1 y posteriores
- Rebel - (véase también ProDeo)
- Ruffian 2
- Rybka
- Shredder
- Deep Sjeng
- Smarthink
- Zappa
Hardware dedicado
Estos sistemas de juego incluyen hardware modificado o corren en supercomputadoras.
- Bebe, a strong bit-slice processor en los 1980s
- Belle
- Chess (Northwestern University)
- ChipTest
- Cray Blitz
- Deep Blue
- Deep Thought
- HiTech
- Hydra, su predecesor fue llamado Brutus
Computadores comerciales dedicados
En los 1980s y principios de los 1990s, había un mercado competitivo para computadoras dedicadas al ajedrez. A mitad de los 90s el mercado de los computadoras dedicadas al ajedrez no pudo competir con los rápidos procesadores en las computadoras personal. Hoy en día, la mayoría de unidades dedicadas que se venden son de nivel principiante o intermedio.
- Chess Challenger, una línea de computadoras de ajedrez que fue vendida por Fidelity Electronics de 1980 a 1992. Estos modelos ganaron los cuatro primeros World Microcomputer Chess Championships.
- Chessmachine, una computadora dedicada basada en ARM, que podía ejecutar 2 módulos:
- The King, que luego se convertiría en el módulo de Chessmaster , también se usó en la computadora dedicada TASC R30.
- Gideon, una versión de Rebel, en 1992 se convirtió en la primera microcomputadora en ganar el World Computer Chess Championship.
- Mephisto, una línea de computadoras de ajedrez vendida por Hegner & Glaser. Las unidades programadas por Richard Lang ganaron 6 World Microcomputer Chess Championships consecutivos.
- Novag vendió una línea de computadoras tácticamente fuertes, incluyendo las marcas Constellation y Sapphire.
- Saitek venció unidades de nivel intermedio.
- Excalibur vende una línea de unidades de nivel intermedio.
Programas históricos
Estos programas corren en hardware obsoleto.
- 1K ZX Chess
- Kaissa
- Kotok-McCarthy
- Mac Hack
- Microchess
- Sargon
- Distant Armies, un programa para Amiga que jugaba muchas variantes de ajedrez, incluido el Ajedrez chino, muchas variantes en trablero circular, y una gran cantidad de variantes antiguas. No jugaba ajedrez occidental moderno y tampoco shōgi.
Véase también
- Chess Engines Grand Tournament
- Ajedrez por computadora
- Internet chess server
- Chess Engine Communication Protocol
- Universal Chess Interface
Enlaces externos
- Páginas de ajedrez de Tim Mann
- Módulos UCI más importantes con calificación y enlaces para descargas
- WB Cronología - otra lista extensiva de módulos gratis y enlaces
- WBEC Ridderkerk - colección de propiedades de módulos gratuitos, últimas actualizaciones, torneos y enlaces de programación relacionada con ajedrez
- Módulos UCI gratuitos
- Rankings de los módulos en el servidor de PlayChess
Categoría:- Programas de ajedrez
Wikimedia foundation. 2010.