Contacto

¿Cómo funciona un programa de ajedrez para ordenador?

Si has visto a una persona empezar a aprender a jugar al ajedrez, comprobarás que comienza con habilidades muy limitadas. Una vez que el jugador comprende las reglas básicas que controlan cada pieza, se puede empezar a jugar. Normalmente, te dirán al perder que no se habían dado cuenta de hacer esa o aquella jugada.

La mente humana absorbe estas experiencias, memoriza diferentes movimientos, y descubre trucos y estrategias. Según las habilidades van mejorando, el jugadorirá leyendo libros para encontrar nuevos tipos de jugada usada por los mejores jugadores. Se le mostrarán nuevas estrategias y tácticas para utilizar en cada partida.

Por tanto, para un ser humano, jugar al ajedrez le supone un alto nivel de pensamientos y razonamientos abstractos que se van uniendo entre si, como visualizar posiciones y recordarlas, reglas y seguimientos, valoraciones e incluso psicología.

Los ordenadores nos hacen nada de esto.

El ajedrez parece una actividad distintivamente humana, requiriendo inteligencia y razonamiento, por lo que ¿Cómo lo puede hacer un ordenador?

Comprobarás que los ordenadores no “juegan” realmente al ajedrez como la gente lo hace. Un PC no está pensando mientras juega. En lugar de eso, está calculando por medio de fórmulas cual es el mejor movimiento. Al ser los ordenadores más rápidos y potentes, la calidad de estos movimientos calculados han mejorado progresivamente. Los ordenadores son ahora los mejores jugadores de ajedrez del planeta, aunque los hacen de una forma totalmente ciega.

El método de cálculo, dentro de la complejidad que supone un juego de estas características, es sencillo es su concepto.

Digamos que empiezas con un tablero al comienzo de una partida. Cada jugador tiene 16 piezas. Digamos que empiezan las blancas. Dichas blancas tienen 20 posibles movimientos:

  • El jugador blanco puede mover cualquier peón una o dos posiciones hacia delante.

  • El jugado blanco puede mover cualquiera de los caballos de dos maneras diferentes.

El jugador elige alguna de estas 20 jugadas y la realiza. Para las piezas negras, las opciones son las mismas, por lo que hace su jugada. Ahora el blanco puede volver a jugar. El siguiente movimiento depende del primer movimiento que el blanco hizo, pero puede seguir haciendo 20 o más, y el jugador de negras puede hacer lo mismo.

Así es como un ordenador ve el ajedrez. Piensa en un mundo de “todos los movimientos posibles”, y hace un gran árbol de todos esos movimientos. Del árbol salen ramificaciones, y de estas otras, hasta hacer un gran número de posibilidades. Sin embargo, un ordenador nunca intentará calcular todo el árbol. Lo que hará será calcular las 10, 15, 20 0 30 primeros movimientos futuros, dependiendo del nivel con el que configuremos el programa de ajedrez.

Una vez que genera el árbol de X movimientos, el ordenador necesita evaluar las posiciones en el tablero. El PC tiene que comprobar todas las piezas del tablero y decidir si la colocación es “buena” o “mala”. La manera en que lo hace, es usando la función de evaluación. La función más básica de esto es simplemente contar cuantas piezas tiene cada jugador. Si el ordenador está jugando con las blancas y el tablero tiene 15 blancas y 13 negras, la evaluación más simple será 15-13=2.

Obviamente, para el ajedrez esta fórmula es demasiado sencilla, porque ciertas piezas valen más que otras. Por ello, la fórmula debe aplicar un peso a cada tipo de pieza. El programador hace la evaluación cada vez más complicada, añadiendo cosas como posición en el tablero, control del centro, vulnerabilidad del rey, vulnerabilidad de la reina contraria, y muchos otros parámetros. No importa lo complicado que la función se vuelve, todo se condensa en un único número que representa lo adecuado del siguiente movimiento.

Leer mas artículos relacionados