Motor de Ajedrez Roque

Motor de Ajedrez Roque

Roque es un motor de ajedrez basado en el protocolo xboard. Para comprender mejor qué es Roque debemos tener presente que un programa de ajedrez se puede dividir en dos partes bien diferenciadas:

Una parte sería la interfaz gráfica de usuario (GUI), encargada de mostrar el tablero y los relojes, mover las piezas con el ratón, mostrar las jugadas y el razonamiento que va siguiendo el programa, etc. Existen numerosos interfaces para los programas de ajedrez, muchos de ellos gratuitos, siendo Winboard (de Tim Mann) uno de los más sencillos y extendidos para el sistema operativo Windows.

La otra parte principal de un programa de ajedrez es el motor (en inglés, engine), que se encarga de realizar todo el razonamiento de los movimientos que va a realizar el programa. Es, por tanto, la parte más compleja de un programa de ajedrez y la que determina su fuerza de juego.

Debido a que la interfaz y el motor son dos partes totalmente independientes, debe existir un lenguaje que permita establecer la comunicación entre ambas. A este lenguaje se le denomina protocolo. El primer protocolo que surgió para los programas de ajedrez fue el protocolo xboard (diseñado por Tim Mann para su interfaz gráfica y el motor GNUChess). De esta forma, se puede utilizar en una misma interfaz gráfica varios motores que se comuniquen a través del mismo protocolo o bien utilizar un motor en diferentes interfaces. Por ejemplo, Roque se puede utilizar en la interfaz Winboard para jugar contra un jugador humano o se puede utilizar en el programa Arena para que compita contra otros motores de ajedrez.

Las características técnicas del motor Roque son las siguientes:

  • Protocolo xboard.
  • Representación del tablero: vector de 64 enteros.
  • Generador de movimientos: sencillo, basado en tablero de 8×8 y con ordenación de movimientos mediante la técnica MVV/LVA.
  • Función de búsqueda: basada en el Algoritmo Alfa-Beta con búsqueda de la variante principal (PVS).
  • Función de evaluación: basada quiescence search con evaluación del material y de la posición de peones, caballos y alfiles.
  • Detección del final de la partida.
  • Modos de juego: controlado por tiempo (convencional e incremental) o por profundidad fija.
  • Comando Edit (editar posición).
  • Lenguaje de programación: C

Descargar Motor

Descargar el motor con la interfaz Winboard en español

Deja un comentario

Ir arriba