+ All Categories
Home > Documents > Garrido bullón, ángel el ajedrez, mosca drosophila de la inteligencia artificial (uned,2006)

Garrido bullón, ángel el ajedrez, mosca drosophila de la inteligencia artificial (uned,2006)

Date post: 30-Jul-2015
Category:
Upload: registromaestro
View: 62 times
Download: 0 times
Share this document with a friend
Popular Tags:
30
Ángel Garrido Bullón Departamento de Matemáticas Fundamentales Facultad de Ciencias de la UNED EL AJEDREZ, MOSCA DROSOPHILA DE LA INTELIGENCIA ARTIFICIAL Abstract: From remote times, the history of the human being is a succesive chain of steps, until the relative sofistication of the modern brains and their culture. Paralelly, we will describe the evolution of more universal and probably most prestigious game: the Chess. Many great thinkers should study the more efficient way of win, personally or through a machine. In this line, the Artificial Intelligence appears in the 20th Centhury, and principally from 1956, obtaining very impressing results; many times, using the Chess as “drosophila fly” of AI. We comment here this interconnection and the actual situation, with special incidence in the great educative value of chess into the human mind, and the usefulness in the classroom exposition of AI techniques. XI CONGRESO INTERNACIONAL DE INFORMATICA EDUCATIVA UNED, Madrid, 2006 1
Transcript

Ángel Garrido Bullón

Departamento de Matemáticas Fundamentales

Facultad de Ciencias de la UNED

EL AJEDREZ, MOSCA DROSOPHILA DE LA

INTELIGENCIA ARTIFICIAL

Abstract: From remote times, the history of the human being is a succesive chain

of steps, until the relative sofistication of the modern brains and their culture.

Paralelly, we will describe the evolution of more universal and probably most

prestigious game: the Chess. Many great thinkers should study the more efficient way

of win, personally or through a machine. In this line, the Artificial Intelligence

appears in the 20th Centhury, and principally from 1956, obtaining very impressing

results; many times, using the Chess as “drosophila fly” of AI. We comment here this

interconnection and the actual situation, with special incidence in the great educative

value of chess into the human mind, and the usefulness in the classroom exposition

of AI techniques.

XI CONGRESO INTERNACIONAL DE INFORMATICA EDUCATIVA

UNED, Madrid, 2006

1

HISTORIAS DEL AJEDREZ

Lo que se cuenta de los orígenes suele ser nebuloso y legendario. Se

entremezclan la fantasía y la necesidad de adjudicarse dioses y héroes.

Parece que los orígenes más remotos del ajedrez se remontan a unos seis

mil años. La zona donde apareció sería la limítrofe entre las actuales China

y Cachemira. Aquí podemos ver cómo fue su distribución, en una etapa

inicial:

Sólo que su forma era bastante diferente de como actualmente lo

conocemos. Y tampoco era un juego en sus principios, sino que se utilizaba

para las artes adivinatorias, revestido de un carácter bastante místico. Para

lo cual eran lanzadas las piezas sobre el tablero y según cómo caían, se

podía afirmar cuál era la situación del equilibrio actual entre el Yin y el

Yang.

Una de dichas artes adivinatorias chinas primitivas aún la podemos

encontrar en la obra clásica I Ching, también llamada el Libro de los

2

Cambios. Consta de 64 hexagramas. Y esto es un innegable preludio de las

64 casillas actuales de nuestro tablero.

En tiempos posteriores aún tenía formas muy distintas de la actual. Pero

iba perdiendo ese carácter místico de los orígenes. Así, era jugado en

Egipto, Grecia o Roma. Pues aparecen representadas personas jugándolo en

pinturas aparecidas en el interior de las Pirámides, en vasos o cráteras

griegas, etc.

Aunque en la forma más parecida a la nuestra, surge al principio de

nuestra Era, al Norte de la India. Se llamaba, en sánscrito, chaturanga.

Desde allí fue evolucionando de distinto modo, según cuál fuera la

dirección en que avanzase y cuál la cultura con que se encontraba, para

enraizarse en ella. Así, fue dando lugar a diversas “versiones”: el ajedrez

coreano, el “go” japonés, el “xia quing” de China o el “shatranj” de los

persas.

Por eso, más adelante, cuando apareció el Islam, en tierras de la actual

Arabia Saudí, y se fue extendiendo como un fuego abrasador que avanza

por el desierto, tras devorar el antiguo Imperio Persa-Sasánida, llevó

consigo el “shatranj” a las tierras del Norte de Africa, del Sur de Italia y de

la Península Ibérica.

En el mundo árabe se siguió desarrollando, y se escribieron incluso

tratados que intentaban sistematizarlo, comparándolo con las herramientas

matemáticas conocidas hasta la fecha.

Así, se hizo famoso en el siglo XI el tratado de Ar-Razi: Jugar al

ajedrez con elegancia. O en los reinos cristianos, el Libro de ajedrez, dados

y tablas, obra encargada por Alfonso X el Sabio, en 1283.

Se llegó incluso a considerar una de las artes obligadas en la formación

de un noble caballero. Así, el converso Pedro Alfonso (1062-1125), en su

obra Disciplina Clericalis, fijaba que esas artes debían ser: equitación,

arco, natación, cetrería, lucha, ajedrez y poesía.

3

Posiblemente sea legendaria la historia que transmite la tradición árabe

sobre la invención del ajedrez. Cuentan que un rey hindú, llamado Balhait,

se aburría infinitamente de tanto no hacer nada. Así que a un filósofo y

consejero suyo, Sassa, se le ocurrió que debía inventar algo para distraerle.

Para ese fin concreto se dice que diseñó el juego.

Al rey le gustó tanto que le propuso que pidiera lo que quisiese. El

filósofo comenzó diciendo que él era un hombre modesto, por lo que sólo

le pediría simples granos de trigo. Y le pidió, exactamente:

por la primera casilla 02 1= ,

,

,

por la segunda casilla 12 2=

por la tercera casilla 22 4=

. . . . . . . . . . . . . . . . .

, por la casilla 64-ava 632

En total:

= 263

63

0

1 2 4 ... 2 2i

i=

+ + + + =∑ 64-1 granos de trigo

Se trata, pues, de la suma de los 64 primeros términos de la progresión

geométrica de primer término 1 y razón 2. Desde luego, el filósofo no era

nada tonto, pues se trataba de una cantidad tan grande que poniendo un

grano tras otro, bastarían para dar muchas vueltas a la Tierra.

Los cambios fundamentales que convirtieron el juego primitivo en el

ajedrez actual se observan a finales del siglo XV.

4

Hasta entonces, los peones sólo podían avanzar una posición en cada

movimiento, incluso al comienzo de la partida. Se admitió luego que fuesen

dos, si es que partían desde su posición inicial.

También la Dama (la pieza que hoy suele llamarse la Reina) era hasta

entonces muy estática, sin apenas movimientos admisibles. Se le dotó de

una gran movilidad. Con lo cual se convirtió en una de las piezas más

poderosas del tablero. Esto algunos lo relacionan con un preludio de lo que

luego sería la “liberación de la mujer”.

Dentro de la curiosa “prehistoria” de las máquinas diseñadas (o

supuestamente diseñadas) para jugar al ajedrez, tenemos el famoso caso del

Turco:

El Turco en acción

Que fue creado en el siglo XVIII. Lo hizo construir el Barón Von

Kempelen, aficionado a los artilugios mecánicos y natural de Bratislava.

Alcanzó gran notoriedad en la sociedad vienesa. Era la época de la

Emperatriz María Teresa.

Ese nombre, de “el Turco”, procedía de su representación como

muñeco de tamaño natural con los ropajes y el bigotón típicos de un

otomano.

5

Consiguió “vencer” este artilugio a grandes ajedrecistas del momento.

Incluso a personajes tan notorios como Napoleón Bonaparte o Benjamín

Franklin.

Pero al final, resultó ser un truco, más que un turco. Pues en realidad, la

gran mesa contenía un operario, el jugador polaco Worowski, que había

perdido las piernas en la guerra. Desde su refugio, desplazaba los resortes,

parece que muy sabiamente.

Aquí puede verse en un antiguo grabado, “con bicho dentro”, dicho sea

de broma:

El artilugio fue a parar a Filadelfia y allí se consumió en el gran

incendio de la ciudad, a mediados del siglo XIX.

Hoy en día puede verse una reproducción suya en un céntrico café de la

capital eslovaca.

Es cierto que su funcionamiento suscitase el interés del gran escritor

Edgar Allan Poe, que no tardó en descubrir el engaño.

Tras la desaparición del exitoso “Turco”, se trató de llenar el vacío

creado.

Charles Hopper, de Bristol, presentó para ello su creación “Ajeeb”,

también llamado “el Egipcio”, con la cual dio la vuelta al mundo:

6

Entre otros, se dice que “lo habitó” (o fue operado por) el gran

ajedrecista Pillbury.

Otro ingenio famoso fue el denominado “Mephisto”, también en el siglo

XIX. Este era manejado a distancia por grandes jugadores de la época.

Quien realmente creó una máquina de jugar al ajedrez, eficaz y bastante

eficiente, fue nuestro ingeniero e inventor, el famoso don Leonardo Torres

Quevedo (en la imagen, su hijo Gonzalo, mostrando este invento de su

padre al matemático Norbert Wiener):

Pero quien realmente vino a dar al estudio del ajedrez su forma más

sistemática y rigurosa fue Whilhelm Steinitz. Este auténtico pensador había

nacido en Praga el año 1836.

7

Y con posterioridad, también realizaron grandes aportaciones algunos

Grandes Maestros, como el también matemático Emmanuel Lasker,

campeón del mundo desde 1906 hasta 1926.

O los ya más recientes:

Petrosian, Alekhine, Capablanca, Pomar, Spassky, Fischer, Karpov,

Kasparov, etc.

MAN vs MACHINE (El Hombre contra la Máquina)

Nos encontramos en Edimburgo, la capital de Escocia. Corre el año

de 1968. Se están celebrando unas Jornadas Científicas: las “Machine

Intelligence Workshop”.

Mas veamos lo que sucede en una de las mesas. Juegan dos caballeros:

uno es el famoso campeón escocés de ajedrez David Levy, y el otro es uno

de los más grandes cerebros humanos que contribuyeron a la Inteligencia

Artificial: John Mac Carthy.

Están jugando una partida de ajedrez. Termina ganando, lógicamente,

el profesional. Pero el matemático le desafía:

- No pasarán más de diez años sin que usted sea derrotado por una

máquina.

Se establecen apuestas (no en vano estamos en tierras anglosajonas): él

pone 250 libras esterlinas, 500 el organizador de las jornadas, y otras 250

un programador.

Es la llamada apuesta de Levy.

8

Transcurridos diez años, ya en 1978, se juega en la ciudad canadiense

de Toronto un torneo a la mejor de seis partidas. Por un lado, está

nuevamente David Levy. Y por el otro, uno de los programas de juego de

ajedrez más potentes del momento: el CHESS 4.7.

Volvió a ganar Levy. Cobrando la apuesta realizada (equivalente a

$3000), toda vez que habían transcurrido los diez años acordados.

Pero es bastante significativo que ya se dieran: dos Victorias, dos

Tablas y una Derrota.

Aún habría que esperar otros diez años, hasta que en 1988 IBM

diseñara un programa, el “Deep Thought” (Pensamiento Profundo), que

consiguiese derrotar a un Gran Maestro, Bent Larsen, por un rotundo

tanteo de cuatro partidas a cero. Esto sucedió en el Open American.

Al año siguiente, ya estaba trabajando IBM en una versión mucho más

potente: la del famoso DEEP BLUE, que antes se había llamado BIG

BLUE. Se trataba de un programa muy mejorado, escrito en C, bajo el

sistema operativo AIX. Este se implementaba sobre un ordenador con 256

procesadores dispuestos en tándem, siendo capaz de analizar dos millones

de posiciones por segundo.

En Marzo de 1989 había derrotado Kasparov al DEEP BLUE. Pero

este, a su vez, derrotó con suma facilidad al Maestro Internacional David

Levy, el de la famosa apuesta.

Mas la “prueba de fuego” se iba acercando. Con nuevas mejoras, esta

se realizó en Filadelfia. Fue en febrero del año 1996. Enfrente tenía

DEEP BLUE al super Gran Maestro: Gary Kasparov. En el global de la

partida, ganó Kasparov por cuatro a dos.

Pero al año siguiente (1997) se había conseguido mejorar más

todavía su hardware, optimizándolo con procesadores mucho más

9

rápidos. Ahora ya podía evaluar doscientos millones de movimientos por

segundo (por tanto, la velocidad se había centuplicado). Esto permitía

calcular un árbol completo de diez variantes, con una profundidad de diez

jugadas en diez minutos. Si el árbol de variantes se reducía a cinco, era

posible calcular con una profundidad de dieciséis jugadas a ritmo de

torneo.

El “Libro de Variantes” fue mejorado por el Gran Maestro Joel

Benjamin, y en ello también intervino el Gran Maestro español Miguel

Illescas.

Así, se llegó a un clamoroso empate, a falta de una partida,

venciendo Deep Blue en esta última.

Fue una de esas noticias que dieron la vuelta al mundo. También fue

una excelente operación de marketing, pues las acciones de IBM subieron

en la Bolsa como la espuma.

Como siempre, algunos agoreros comenzaron a hablar de la “derrota

de la Humanidad”, de los negros y tristes presagios que amenazaban la

civilización, etc. Pero en verdad era un gran honor que cerebros humanos

hubieran llegado a conseguir una versión tan lograda de ellos mismos.

Esto fue reconocido mediante la concesión del prestigioso premio:

“Allen Newell Medal for Research Excellence”, con el que se galardonó a

los creadores y programadores de DEEP THOUGHT, CHESS 4.7,

MACHACK VI, DEEP BLUE... Estos últimos (de IBM) ganaron,

además, el “Fredkin Award”, por un importe de $100.000.

Siguiendo con los enfrentamientos hombre-máquina, llegamos al que

tuvo lugar en Bilbao, en 2004.

Se trataba de un torneo en el que por un lado había tres programas de

ajedrez: FRITZ 8, DEEP JUNIOR e HYDRA, y del otro tres fuertes

10

jugadores: Topalov (Gran Maestro), Ponomariov (GM también) y

Karjakin (el GM más joven de la historia, con 12 años).

Se utilizaron plataformas distintas para ejecutar los programas:

- el FRITZ 8, sobre un ordenador portátil con procesador Centrino,

a 1.7 GHz

- el DEEP JUNIOR, sobre un ordenador Xeon, con 4 procesadores,

a 2.8 GHz cada uno, manejado desde Inglaterra.

- el HYDRA, que era una plataforma de ajedrez, la cual integraba

un hardware especialmente diseñado para este programa.

Disponía de 16 procesadores en paralelo. A través de ella se

jugaba desde los Emiratos Árabes Unidos.

Con toda esta parafernalia, se jugaron cuatro sesiones, llegando a

que implementadas en las distintas plataformas:

Máquinas Grandes Maestros

- en la primera 2.5 vs 0.5

- en la segunda 1 vs 2

- en la tercera 2.5 vs 1

___________ ______________

En total 6 vs 3.5

Así que volvieron a ganar ampliamente las “máquinas”.

Debemos recordar que cada jugador se anota 0.5, si hace Tablas.

Mientras que se apunta 1 el “bando” de quien vence. De ahí que no todas

las puntuaciones sean enteras.

11

EL AJEDREZ Y LA I. A.

Se puede decir sin exageración que el juego del Ajedrez es la

mosca “drosophila melanogaster” de la Inteligencia Artificial. Esto

quiere decir que así como esta “mosca del vino” es omnipresente en la

investigación biológica, en los estudios sobre la herencia (por ejemplo),

así lo es el ajedrez cuando se indagan en I. A. los procedimientos,

métodos, algoritmos, su optimización, etc. Una especie de “piedra de

toque” para medir la eficacia y la eficiencia de los sistemas. La frase feliz

de la mosca la dijo un matemático ruso que trabajaba en I.A., Alexander

Krondrov, en 1956.

Ya en los comienzos de esta Nueva Ciencia se buscaba crear

programas para jugar al ajedrez y optimizarlos lo más posible. Para ello

fueron claves ciertos pensadores cuyos nombres aparecen por doquier:

Wiener, von Neumann, Shannon, Turing, Simon, Minsky, Mac Carthy...

Antes hubo otros grandes pensadores, muy dignos de mención, como

Charles Babbage, que estudió algunos algoritmos para ganar una partida.

Incluso las conocidas máquinas de calcular de Pascal o Leibnitz en cierto

modo son precursoras.

Ya se dijo que Torres Quevedo diseñó la primera máquina que

funcionaba realmente para jugar al ajedrez, un autómata que permitía dar

mate al contrario con Torre y Rey, desde cualquier posición inicial.

Insistimos en que se construyó de modo efectivo y de hecho, aún puede

verse –funcionando- en el Colegio de Ingenieros de Caminos, Canales y

Puertos de Madrid. Este gran científico, por cierto, es el único español

que figura en la importante relación de los Computer Pioneers.

12

En cuanto a los orígenes de la Inteligencia Artificial, estos se suelen

establecer en la Conferencia de Darmouth, de 1956, donde acudió la

mayoría de los grandes cerebros dedicados al avance de la I. A.

Los antes mencionados, en muchos casos, serían sus precursores.

Como es el caso de Alan Mathison Turing, que antes de esa fecha tuvo

lugar su breve existencia (1912-1954). Fue uno de los más grandes

matemáticos que hayan existido nunca, al menos en los tiempos

modernos.

A él le debemos muchas de las herramientas no sólo de la I. A., sino

de la Teoría de Autómatas, que permiten analizar los problemas

fundamentales de Complejidad y Computabilidad. Como son las

Máquinas de Turing, modelo universal dentro del estudio de Autómatas, o

el Test de Turing, que permite conocer si el comportamiento de una

máquina puede ser considerado inteligente, etc.

Otra de las contribuciones de Turing a la ciencia y a nuestro mundo

actual fue su trabajo en Bletchley Park, mansión victoriana a mitad de

camino entre Oxford y Cambridge. Allí se concentraron muchos brillantes

matemáticos; bastantes de ellos de origen polaco y judíos, que llegaron

huyendo del nazismo, entonces en expansión, aparentemente imparable.

Realizaron una tarea agotadora, vital para acortar la Segunda Guerra

Mundial. Con Turing descifraron, primero, con relativa facilidad, el

código utilizado por la aviación de la Wehrmacht.

Pero no resultó tan sencillo el descifrado de los mensajes encriptados

para los submarinos alemanes, mediante la Máquina Enigma, con

numerosos rotores, que se fueron complicando con el tiempo.

Fue clave el trabajo de Turing para “romper” el hoy famoso código

Enigma. Porque en su tiempo era alto secreto a qué se dedicaba Turing, y

no sería hasta 1970 cuando esta información fuera desclasificada. Para

13

hacer factible ese trabajo fueron diseñadas las máquinas o computadoras

“Bombe” y “Colossus”, precursoras de los desarrollos posteriores en

Computación.

Alan Mathison Turing

Sería el propio Turing quien utilizara el juego de ajedrez como un

ejemplo de lo que podía llegar a dominarse a través del uso de la

computadora, ya en 1945. Entonces, se hablaba de “inteligencia de

máquina”.

Tres años más tarde, Turing elaboró un esbozo del primer programa

para jugar al ajedrez. Y en 1950 escribió de modo completo y efectivo

dicho programa.

Ejemplar de la famosa máquina Enigma

14

Otra brillante contribución al estudio matemático de las

estrategias fue la del gran matemático húngaro Janos Von Neumann

(1903-1957), creador de la Game Theory.

Janos v. Neumann

Este vio las posibilidades que ofrecía para el análisis de situaciones

económicas o de estrategia. Lo hizo constar en su famoso libro, escrito

junto con Oskar Morgersten.

Como caso particular de los juegos de suma cero entre dos adversarios

con información perfecta se incluye, lógicamente, el ajedrez.

Sería injusto no mencionar también a otro gran matemático, al padre

de la Teoría de la Información, Claude Shannon (1916-2001):

El describió, en marzo de 1949, cómo debería programarse un

ordenador para conseguir procedimientos eficientes de llegar a mate en

dos jugadas.

Se implementó en una máquina digital Ferranti.

15

Al año siguiente publicó un artículo en el Philosophical Magazine:

“Programing a computer for playing chess”, que es considerado el primer

“paper” sobre ajedrez por ordenador.

PROGRAMACION DE LOS JUEGOS DE AJEDREZ

En nuestros días se precisa una interfaz gráfica, para cualquiera de los

programas destinados al juego de ajedrez. Esto es porque lo necesita la

comunicación del usuario con el ordenador.

Pero no ha sido siempre así, porque en un pasado nada remoto esa

comunicación se establecía a través de la información codificada en tarjetas

de cartulina perforadas. Por cierto, que el ya mencionado Von Neumann

fue el introductor de ese soporte. Era un judío de Budapest que previendo

el avance de los nazis en Europa, se fue a Estados Unidos, donde brilló

considerablemente. Su padre, banquero húngaro, había financiado, entre

otras, una fábrica del sector textil donde se introdujeron las tarjetas

perforadas para la automatización del proceso en los telares.

También necesita el programa un modo de representar lo que va

sucediendo en la partida. Asimismo, debe almacenar en memoria el estado

de las casillas del tablero. Esto es, va a precisar una estructura de datos que

almacene si una casilla está o no ocupada, y caso de estarlo, con qué pieza.

Pero también va a necesitar informaciones complementarias, como si

una pieza está o no enrocada, si este enroque es corto o largo, etc.

Saber esto va a permitir al generador de jugadas conocer las jugadas

admisibles, desde la posición actual de las piezas. Con lo cual podrá

ensayar el Algoritmo de Búsqueda y elegir entre ellas.

16

Suele tomarse como modelo de almacenamiento el de una matriz 8x8,

el más sencillo. Cada uno de los elementos de la matriz representaría una

de las 64 casillas.

Supongamos la matriz de posición mencionada, 8x8, es decir,

compuesta por 64 casillas. Lo primero que cabe preguntar es por dónde

deberían empezar a contarse las filas y las columnas.

Esto es algo que ha ido evolucionando con el tiempo. Así, antes se

decía: CD x P4R, para indicar que “el Caballo de Dama, o Reina, toma el

Peón Cuatro de Rey”. Pero esta notación se ha precisado, volviéndose

algebraica.

Con esto se evitan problemas tales como que C es la inicial de caballo

en castellano, pero tal vez K (de Knight, caballero) en inglés, o H (de

Horse, caballo), no siendo así, pues la inicial K se reserva para el Rey

(King), y entonces el Caballero es N, etc.

Un galimatías que se puede obviar haciendo que la notación sea

algebraica.

Se nombran las columnas de izquierda a derecha así:

a, b, c, ..., h.

Mientras que las filas lo hacen desde abajo hacia arriba:

8

7

. . .

1

Por tanto, las fichas del tablero quedarían identificadas así, observando

que se trata de un par de coordenadas:

17

8 8 8 8 8 8 87 7 7 7 7 7 76 6 6 6 6 6 65 5 5 5 5 5 54 4 4 4 4 4 43 3 3 3 3 3 32 2 2 2 2 2 21 1 1 1 1 1 1 1

a b c d e f g ha b c d e f g ha b c d e f g ha b c d e f g ha b c d e f g ha b c d e f g ha b c d e f g ha b c d e f g h

8765432

De modo que con esta nueva notación, la jugada antes comentada sería:

C x e5, o sustituyendo la C por el dibujo esquemático de la pieza, y así se

evitaría la indeterminación del idioma.

Obispo (bishop), forma medieval del alfil. Es una pieza de marfil, de finales del siglo X.

Aún se llama así en los países anglosajones. Colección del British Museum de Londres.

Los valores de las piezas son, para las Blancas:

Peón: 1; Caballo (o Caballero, Knigth): 2; Alfil (Obispo, Bishop): 3;

Torre (Elefante): 4; Dama (Reina): 5; Rey: 6.

Peón (pawn) de marfil del ajedrez de Carlomagno. Es del siglo XI

18

Mientras que lógicamente, para las Negras se asignan los valores

opuestos.

Reiteramos que el Ajedrez es un Juego con Dos Adversarios, de

Información Perfecta y de Suma Cero, lo cual quiere decir que ambos

adversarios disponen de toda la información en todo momento, que es

visible sobre el tablero, y que aquello que beneficia a un jugador perjudica

en la misma medida al contrario.

De manera que cuando en un tablero de 64 casillas escribimos:

[ ][ ]11 1 1 4P P= =

tratamos de decir que en la casilla “a 1” está situada una Torre Blanca.

Mientras que si por el contrario, hubiéramos puesto:

[ ][ ]81 8 1 4P P= = −

esto querría decir que en la casilla “a 8” hay una Torre Negra.

Para saber si el movimiento proyectado de las piezas las “sacaría del

tablero” (realizando, por tanto, movimientos no permisibles), se suele

considerar otro de dimensiones mayores (por ejemplo, 10x12), donde el

resto de las casillas serían virtuales.

Existen otros símbolos para contener información abreviada de las

jugadas, como son:

x: captura

0 – 0: enroque corto

19

0 – 0 – 0: enroque largo

=: posición igualada

+=: ventaja de la Blancas

=+: ventaja de las Negras

!: jugada buena

?: jugada mala

!?: jugada interesante, pero poco clara

?!: jugada dudosa

+: jaque

++: jaque mate

La Representación se agiliza introduciendo los llamados bitboards.

Estos nos permiten representar la información de modo “económico”. Y

también ejecutar cualquier operación booleana (AND, OR, etc.) necesaria

para obtener un dato.

Cada bitboard es un vector unidimensional de 64 bits, figurando en

ellos un valor 1, si la casilla está ocupada, y un valor 0, si la casilla no lo

está.

Es bien sabido que los ordenadores se manejan por bytes, cada uno de

los cuales está compuesto por 8 bits. Más concretamente, en la Arquitectura

de Computadores actual, los ordenadores personales manejan datos de 32

bits, lo cual equivale a 4 bytes.

Lo bueno que tienen los bitboards es que cada uno de ellos puede ser

tratado como una “palabra” por el ordenador, lo cual agiliza notablemente

los pasos.

Los procedimientos de búsqueda, en I. A., pueden ser de dos tipos:

20

Blind Search o Heuristic Search

según dispongamos o no de conocimiento del Dominio.

La Búsqueda Heurística es clave para los programas de ajedrez y en

general, para los Problemas de Búsqueda con dos Adversarios.

La posibilidad de discriminar entre caminos o variantes nos la da la

llamada función de evaluación heurística, abreviadamente fev, que por

ejemplo, para el caso del algoritmo A* se desdobla en suma de dos: la

primera de ellas nos informa de cuántos enlaces han sido recorridos, o

equivalentemente, de cuántos nodos han sido seleccionados y expandidos,

desde el nodo-raíz hasta el nodo-actual, mientras que la segunda hace una

estimación de cuántos enlaces quedan por recorrer o nodos por explorar,

desde el nodo-actual hasta el nodo-meta.

Esta fev viene a ser al programa de ajedrez lo que el conocimiento es a

la mente humana, cuando esta trata de identificar un hecho. Porque en una

partida de ajedrez y por tanto, en un programa para jugarlo, resulta de vital

importancia el conocer la posición y evaluarla. De tal evaluación habrá dos

posibles “lecturas”, una según cada jugador, MAX o MIN, Blancas o

Negras.

Aquí aparece la fev. Con ella sabremos cuál es la mejor estrategia para

progresar en el Árbol de Búsqueda, partiendo del nodo-actual, o de la

situación actual de la partida.

La fev (f) puede plantearse como una función polinómica,

introduciendo “pesos”, es decir, será ponderada. Una posible expresión

para la misma será:

EVAL(i): k*RM + l*CC + m*MP + n*CI + p*PP + q*SR + r*AM =

= f (jugada i-ésima)

21

con k, l, m, n, p, q, r, s, parámetros reales no-negativos.

Estos nos señalan “cuánto cuenta”, es decir, el “peso” de cada factor

dentro de la fev.

Dichos “factores” (sugeridos en parte por Shannon) son:

RM: relación de material aún disponible

CC: control y ocupación de las casillas centrales

MP: movilidad de las piezas

CI: control sobre las casillas importantes

PP: posibilidad de promocionar peones

SR: seguridad del Rey

AM: amenaza de “mate”

Se puede establecer cuál es la MP, por ejemplo, comparando la posición

actual del tablero (o bitboard) con una serie de tableros predefinidos.

En los Programas actuales aparecen distintas fev, según cuál sea la fase

en que se encuentre el juego: la de apertura, la media o la final.

Con esto se consigue que la heurística sea más eficiente, puesto que se

evitan aquellas variantes que son absurdas.

El Algoritmo que se utiliza es del tipo MINIMAX (minimización -

maximización), donde como sabemos, se van alternando en el juego dos

competidores, MAX y MIN. El primero de ellos intenta maximizar la

función, lo cual le beneficia, mientras que el segundo aplica la estrategia

contraria, es decir, trata de minimizar la función, con lo cual perjudica al

contrario y por tanto, sale beneficiado él mismo.

22

Pero hay un problema añadido: el de la llamada “explosión

combinatoria”, que hace imposible explorar todas las variantes, por lo que

se deben descartar las que sabemos inútiles.

Para un factor de ramificación (número medio de sucesores de cada

nodo) igual a 35 y límite de profundidad (o longitud promedio del juego,

número máximo de sucesores expandidos de cada nodo) igual a 50

movimientos, el árbol de búsqueda tendrá del orden de:

50*2 15435 10 nodos

un número mucho mayor que el que se estima de átomos para todo el

Universo.

Su reducción, tan drástica como necesaria, se consigue mediante el

Procedimiento de Poda alfa-beta (alpha-beta pruning algorithm). Fue

creado por tres científicos de la Universidad Carnegie - Mellon: Allen

Newell, John Shaw y Herbert Simon, en 1958.

Aquí podemos ver un ejemplo sencillo:

23

Se trata de un Algoritmo que va almacenando con cada llamada

recursiva dos entradas: alfa y beta. Se representa por medio de un “doble-

contador”, un par que va mostrándonos ambos valores.

Mediante esta información adicional y actualizada, dicho algoritmo va a

evaluar cada una de las posiciones, según avanzamos en el juego. “Alfa”

representaría el valor de la mejor jugada para las Blancas encontrada hasta

el momento, medida a través de f. Por su parte, “Beta” nos informa del

valor de la mejor jugada de las Negras hasta ahora.

En cada paso se comprueba si el valor de alfa es menor que el de beta.

Cuando esto se incumple (α β), se produce una poda, que será de tipo alfa,

si estamos en un nivel MAX, y de tipo beta, si estamos en un nivel MIN. El

valor que se devuelve es “el otro”: el de beta, para una poda alfa, y el de

alfa, para una poda beta.

Al llegar a la poda este Algoritmo prescinde del resto de la rama: todos

los nodos que penden de aquel en que se produce la poda son abandonados.

Con ello evitamos que las Negras aprovechen esa variante, que las

favorecería.

La poda alfa-beta aligera muy considerablemente el Árbol de Búsqueda.

Así, el número de nodos visitados va a quedar en la raíz cuadrada de los

necesarios caso de haber expandido todos. Por ejemplo, si se trata de un

árbol medio de un millón de nodos, con la poda se quedará en mil, que no

es poca eficiencia.

Fases del Juego de Ajedrez

Antes hicimos mención a estas, que como dijimos, eran las de:

- Apertura

24

- Fase Media del Juego

- Fase Final

Algunos las interpretan como las tres del Teatro Clásico:

- Exposición

- Desarrollo o Nudo

- Desenlace o Resolución

La Teoría de Aperturas es una verdadera ciencia, con una acumulación

enorme de jugadas de inicio, ensayadas y bien conocidas, tanto que hasta

reciben nombre propio.

Están recogidas en voluminosos manuales y también compiladas en

bases de datos. Abarcan desde las más inocentes, de principiante, hasta las

más enrevesadas, famosas por ser de Grandes Maestros.

Dichas Aperturas se dividen en cinco grupos: A, B, C, D, E, y cada una

de ellas se subdivide en 99 subgrupos, y estos a su vez en distintas

variantes.

Cuando estamos en la fase media, las piezas ya no todas ocupan su

posición original. Ahí es donde empiezan las “sutilezas”.

La situación en la que nos encontramos dependerá, lógicamente, de

cuál haya sido la apertura elegida. Pueden darse situaciones más “abiertas”,

con diagonales y/o columnas por las que avanzar, o bien otras más

“cerradas”, que obligan a otro tipo de juego, más estratégico.

Cuando sólo quedan peones y pocas de las otras piezas sobre el tablero,

hemos entrado en la fase final. El objetivo será promocionar los peones

25

propios, para recuperar las piezas clave, sin permitir que promocionen los

ajenos.

El valor de las piezas es relativo a la fase en la que nos encontremos.

Por ejemplo, un peón tiene poco valor al principio, pero este crece según

avanza el juego, pudiendo en la última fase llegar a ser decisivo. Valiendo

más incluso que otras piezas, al poder recuperar piezas perdidas, como la

Reina.

En la fase media será clave la posesión o no de determinadas piezas,

dado que esto puede implicar la pérdida de la partida.

Algo de lo que podemos encontrar en Internet sobre Ajedrez

Hay en Internet dos programas, que podemos descargar de modo

gratuito: el potente CRAFTY:

ftp://ftp.cis.uab.edu/pub/hyatt/

Y el GNU, programa de repositorio gratuito de software:

http://www.gnu.org

Pero existen, además, otras herramientas y programas gratuitos, que

permiten analizar bases de datos, editarlas, crearlas, visualizarlas, en PGN.

El más famoso es el WINBOARD:

http://www.tim-mann.org/chess.html

26

Se trata de una interfaz gráfica.

Y en cuanto a sitios de Internet para jugar al ajedrez, tenemos: Ajedrez

21, de la academia (EDAMI) del Gran Maestro español de ajedrez Miguel

Illescas:

www.ajedrez21.com

También ICC (Internet Chess Club), que nos permite el juego a

cualquier nivel. Eso sí, en inglés:

www.chessclub.com

O el también gratuito y en inglés: FICS (Free Internet Chess Server):

www.freechess.comT

Potencial educativo del juego de ajedrez

Es bien conocido el valor formativo del Ajedrez. Tanto que no creo

que sea necesario repetirlo; mucho menos para un público tan experto en

temas educativos.

Por una parte, es una buena clase de Historia Medieval, que nos

muestra lo poco que valía entonces un peón (el pueblo llano), cómo

estaban por encima las clases de los caballeros y el alto clero (los

27

obispos). Al fondo, bien resguardado, casi intangible en su trono, el Rey,

contemplando desde lejos cómo otros se batían por él.

El Ajedrez es un juego de estrategia, de lo que pudiéramos llamar

“inteligencia pura”. Por ello, su práctica resulta beneficiosa para mejorar

el rendimiento en áreas educativas patentes, como son las Matemáticas.

Pero eso resulta extensible a otras disciplinas.

El cerebro funciona en buena parte, como sabemos, mediante el

sistema de reconocimiento de patrones, y esto es precisamente lo que

hace el jugador (o el estudiante) con la información de la que dispone. Lo

cual repite mucho más veloz y seguro el ordenador, con sus Libros de

Apertura, de Variantes y de Finales de Juego, que compilados, le vamos

proporcionando.

Apreciar el Ajedrez y practicarlo tienen, sin duda, un alto valor

formativo. Y hoy se le añade el gran desafío de la continua mejora de los

ordenadores y programas, para hacer mucho más rápido lo que nosotros

hacemos.

Esto es también ilustrativo: darlo a conocer en las aulas, porque una

nueva Revolución Científica se está produciendo ante nosotros.

Diagrama de Flujo para Programas de Juego de Ajedrez

En realidad, cuando se elabora un programa para el Juego de Ajedrez se

está resolviendo un problema concreto de I. A. Por una parte, se ha de

diseñar un organigrama que lo describa, y por otra, un algoritmo que lo

secuencie. Teniendo presente en todo momento las situaciones que pueden

presentarse.

28

Ya dijimos que el Algoritmo era del tipo MINIMAX (incluido dentro

de la Búsqueda con dos adversarios) y que para cortar variantes

innecesarias o absurdas, se utilizaba el Procedimiento de Poda alfa-beta.

Lo que viene a esquematizar la situación es un árbol de decisiones, que

busca la jugada apropiada, dentro de la secuencia óptima.

Podemos ver en la última imagen de este trabajo la forma que adopta

ese organigrama simplificado (o Diagrama de flujo del Juego de Ajedrez).

Bibliografía:

Es tan abundante que resulta difícil aconsejar sólo unos pocos textos

sobre Ajedrez. No hay tantos sobre Inteligencia Artificial.

Por citar algunos, estos podrían ser:

- GUTMAN, D. R.: Metáforas de Ajedrez. Ed. La Casa del Ajedrez.

Madrid, 2005.

- HOFSTADTER, D.: Gödel, Escher, Bach. Ed. Anagrama. Barcelona.

En su capítulo XVIII habla del juego de ajedrez y de la Inteligencia

Artificial.

- MIRA et al.: Aspectos básicos de la Inteligencia Artificial. Ed. Sanz y

Torres, Madrid.

- MURRAY, H. J. R.: A History of Chess. Benjamín Press.

Northhampton, MA, 1985.

29

¿BL

ELEGIR

APERTURA

ES

JU

¿JU

END

INICIO

ANCAS?

PERAR

GADA

GADA DE

LIBRO?

ESTUDIAR

VARIANTE

¿JAQUE ESPERAR

O

O

O

ELEGIR

VARIANTE

SI

SI

MATE?

SI

N

N

N

JUGADA

30


Recommended