Programado para matear
2010/02/01 Roa Zubia, Guillermo - Elhuyar Zientzia Iturria: Elhuyar aldizkaria
Hay una forma perfecta de jugar al ajedrez. La secuencia de movimiento de las piezas es óptima, ya que con esta secuencia no hay peligro de perder la partida. Sin embargo, hay un problema: nadie sabe cuál es la secuencia perfecta.
La teoría de juegos, una rama de las matemáticas, demostró hace tiempo que existe, pero la complejidad del ajedrez ha impedido que los matemáticos vayan más allá. No saben si esa secuencia lleva a ganar o al empate. El partido es perfecto, pero nadie sabe quién es. Esto es una buena noticia para los jugadores de ajedrez.
Sin embargo, los informáticos han avanzado mucho. En la actualidad, el software de ajedrez no se basa en el mero cálculo, sino que se ha integrado en el marco de la estrategia. "Evalúa las ubicaciones de las piezas según un criterio estratégico, analizando diferentes características: los endrokes, la ubicación de los peones, si existen diagonales abiertas para alfiles, etc.", explica Antonio Salmerón, informático de la Universidad de Almería. "Por supuesto, luego tiene que utilizar el cálculo para saber si la jugada ha llevado o no a una situación incorrecta. Pero, básicamente, la estrategia orienta el juego del ordenador".
Estrategia humana
La estrategia también orienta el juego de los jugadores humanos. En la base, al igual que en una batalla de una guerra, trata de tomar el control de la zona; en el ajedrez, dominar el centro del tablero es tomar el control de la zona, tanto de la ubicación de las piezas, como de la zona central desde otras ubicaciones. Una vez conseguido, el juego está bien orientado. Y para conseguirlo hay que utilizar la estrategia.
La propia estrategia es difícil de definir. Funciona a muchos niveles y abarca muchos factores. Por ejemplo, el uso de la estrategia implica tomar decisiones, hacer movimientos para engañar al otro, medir los beneficios del intercambio de piezas (sacrificar una pieza para comer otra al enemigo), entrar en ataque con más de una pieza, etc. Y eso es más que calcular las jugadas y la respuesta del rival.
Algunos grandes maestros dicen que se puede jugar al ajedrez sin hacer ningún cálculo y con una estrategia pura. "Yo creo que eso es decir demasiado, pero al menos indica la importancia de la estrategia respecto a los cálculos", dice Salmerón.
Estrategia informática
De hecho, en los últimos años el software de ajedrez ha avanzado en ello, añadiendo a la programación una perspectiva estratégica.
"Desde el punto de vista informático, el ajedrez es un problema de búsqueda. Hay que buscar las secuencias de movimiento más adecuadas que llevan al máximo beneficio", dice Salmerón. Existen algoritmos conocidos que lo hacen, como el Minimax. El ordenador construye un árbol de posibles jugadas pero no en su totalidad, detecta y no desarrolla ramas que dirigen los algoritmos de Minimax a resultados desfavorables. Esto evita muchos cálculos innecesarios. Es una estrategia básica. Sin embargo, los software actuales utilizan estrategias mucho más refinadas que Minimax.
"Para ello es necesaria la inteligencia artificial", afirma Salmerón. El ordenador aprende a jugar mediante algoritmos muy complejos, analizando las bases de datos de partidas de ajedrez.
Hay muchas técnicas para ello. Antonio Salmerón y sus compañeros, por ejemplo, han aplicado al problema del ajedrez la idea de las redes bayegas. Es una representación matemática de una distribución de probabilidad a partir de un conjunto de variables. En el caso del ajedrez, esta representación indica al ordenador qué jugadas dirigen hacia un buen resultado y cuáles no.
"Por un lado, es un medio para aprender de las bases de datos de los partidos jugados por jugadores humanos y, por otro, le ayuda a descubrir cómo es el jugador que tiene delante". En la base hay tres tipos de jugadores: los agresores, los de posición y los intermedios. "Queremos que el ordenador actúe como un ser humano, es decir, que cuando se opone a un enemigo agresivo, adopte una posición de posición y viceversa. Un jugador no se siente cómodo cuando le obliga a jugar un tipo de juego contrario".
Deep Blue
Utilizando técnicas de inteligencia artificial, los informáticos han conseguido que las máquinas funcionen perfectamente. "Actualmente los programas de ajedrez tienen más fuerza que casi cualquier jugador", afirma Salmerón. No es mucho tiempo que el ordenador Deep Blue de IBM y el jugador Gari Kasparov se enfrentaron, en 1996 por primera vez y en 1997 se disputaron cinco partidos más. El segundo partido lo ganó Deep Blue, la primera vez que un ordenador ganaba contra un gran maestro. El ordenador tenía una gran capacidad de cálculo, pero también utilizaba la estrategia.
Desde entonces no hay duda de la capacidad del ajedrez informático. Sin embargo, durante aquellos partidos se habló mucho del test de Turing. Era una vieja idea de inteligencia artificial. En la década de 1950, el inglés Alan Turing afirmó que las máquinas pronto serían capaces de imitar a los seres humanos en términos de inteligencia. Por lo tanto, propuso un test para poder diferenciar una máquina de una persona mediante una entrevista. Y estando tan cerca el mundo del ajedrez del ámbito de la inteligencia artificial, muchos propusieron completar un test de Turing a través del ajedrez, un test que permitía diferenciar una máquina o una persona en función de cómo un jugador jugaba un partido de ajedrez.
Cuando Deep Blue ganó a Kasparov surge la duda de si este test de Turing con ajedrez sería posible o no. Finalizado el segundo partido, Kasparov indicó que Deep Blue no había jugado como un ordenador. Lo compararon con un jugador humano.
Sin embargo, a partir de entonces han mejorado mucho los programas de ajedrez. Mejora de la programación y mejora de los ordenadores. Como consecuencia, la situación ha cambiado radicalmente. "Hoy en día hay programas muy avanzados para el ordenador de casa, que se pueden comprar a 50 o 60 euros", dice Salmerón. "Son programas que ganan a casi cualquiera. Normalmente son utilizados por los jugadores de ajedrez para entrenar".
El programa más conocido es Fritz, un software comercial muy común en la actualidad. Fritz, a pesar de que gana la mayoría de los partidos --con estrategias complicadas-, no se comporta como el hombre. En el test de Turing se vería claramente que es un programa. "Por eso estos programas no son atractivos, tienen demasiada capacidad, siempre ganan y además son muy monótonos. Ganan siempre igual", dice Salmerón. "Ese es, en mi opinión, el reto de los programadores: humanizar este juego. A mí no me gusta jugar contra un programa de ajedrez actual".
Este es el objetivo de las empresas que realizan programas de ajedrez. El tema de la estrategia quizás no ha alcanzado el techo, pero ha alcanzado un nivel muy alto. Sobre. Pero ahora quieren desarrollar un juego parecido al juego humano, no para superar un test, pero sí para darle vitalidad. Todavía falta mucho para que los ordenadores piensen como los humanos, incluso en el ajedrez.
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia