Motor de ajedrez

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

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.

Interfaz[editar]

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.

La interfaz o GUI permite a una persona jugar contra un motor en un ambiente gráfico agradable además del 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[editar]

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[editar]

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 almacena 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[editar]

Torneos[editar]

Los resultados de los torneos de motores, como el Torneo Mundial de Ajedrez por Computadora, dan una idea de las 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[editar]

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[editar]

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[editar]

Motores gratuitos[editar]

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[editar]

Estos programas open source fueron expresamente escritos para enseñar el arte de la programación de ajedrez.

Programas comerciales[editar]

Estos programas se distribuyen comercialmente. Muchos incluyen su propia interfaz de usuario.

Hardware dedicado[editar]

Estos sistemas de juego incluyen hardware modificado o corren en supercomputadoras.

Computadores comerciales dedicados[editar]

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:
  • 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[editar]

Estos programas corren en hardware obsoleto.

Véase también[editar]

Enlaces externos[editar]