En 1949 Claudie Shannon publica un trabajo titulado “Programación de una computadora para jugar al ajedrez“, donde explica sus famosas estrategias. Pero en junio de 1958 Alex Bernstein y Michael Roberts publicaban un artículo en el “Scientific American” (se puede descargar aquí) haciendo referencia a la dificultad y complejidad del juego del ajedrez, describiendo al público un programa que habían desarrollado junto con Timothy Arbuckle y Martín Belsky. Las ideas de estos científicos estaban basadas en los de  Shannon, pero el papel éste era puramente teórico, mientras que el artículo de Bernstein/Roberts describió un programa que jugaba razonablemente en una computadora IBM 704.

El Programa de Bernstein tenía mucha similitud con las máquinas que conocemos hoy en día. Era curioso en el sentido de que antes de cada movimiento, la mayor parte del tiempo de cálculo se invertía en responder una serie de preguntas típicas, las cuales, sin embargo, “olvidaba” a cada nueva situación. Un “generador de movimientos plausibles” inquiría sucesivamente antes de cada movimiento:

  • ¿Me hallo en jaque? Afirmativo: tomar la pieza contraria que da jaque, interponer pieza propia o mover rey. Negativo…..
  • ¿Hay posibilidad de cambiar una pieza? Afirmativo: efectuar el cambio o retirar la pieza amenazada.
  • ¿Puedo desarrollar un caballo o un alfil?
  • ¿He enrocado ya?, y en caso negativo, ¿puedo hacerlo ahora?
  • ¿Puedo ocupar con mi torre una línea libre?
  • ¿Puedo situar una figura propia en un cuadro favorable según mi estructura de peones?
  • ¿Puedo efectuar un movimiento con un peón?
  • ¿Puedo efectuar un movimiento con una figura?, etc.

Nos recuerdan las instrucciones de “El Ajedrecista” de Torres de Quevedo.

Con esto el programa lograba una profundidad de 2 movimientos. Examinaba 7 posiciones con profundidad 1; 49 con profundidad 2; 343 con profundidad 3 y 2401 con profundidad 4; un total de 2800 posiciones, algo bastante manejable para un computador de la época.

Sin embargo el resultado distaba de ser el deseado ya que su programa tenía graves imperfecciones, como no contemplar jugadas como ataques a la descubierta. Un ejemplo claro es la siguiente partida, en la que el humano gana con un ataque a la descubierta de los más simple.

Programa Bernstein – NN [C23], Prueba, 1957

1.e4 e5 2.Ac4 b6 [Ya vemos que el jugador humano no era demasiado fuerte] 3.d3 Cf6 4.Ag5 Ab7 5.Axf6 Dxf6 6.Cf3 c6 7.0–0 d5 8.exd5 cxd5 9.Ab5+ Cc6 10.c4 [10.Cxe5!] 10…dxc4 11.AAxc6+ Dxc6 12.dxc4 e4 13.Cg5 Dg6 14.Ch3 e3 15.f3 [La maquina ve el mate] 15…Ac5 16.Te1 0–0 17.Cc3?? [Pero esta descubierta no] 17…e2+ 18.Cf2 Axf3 19.g3 exd1D 20.Ccxd1 Dc2 21.b3 Tad8 22.h4 Txd1 No es una gran partida por parte de la máquina, pero al menos se ha visto algo. 0–1

El motivo de esta reiteración en las preguntas estriba seguramente en haber reducido en exceso la amplitud y la profundidad de la exploración de posiciones. Pese a ello, una máquina bastante rápida para su época, la IBM 704, invertía hasta 8 minutos de tiempo máquina por movimiento, lo que suponía haber evaluado como máximo 7 elevado a 4 = 2.401 nodos.

Otra dificultad eran los arcaicos sistemas de entrada y salida de las computadoras. Para el programa se necesitaban unas 8.000 tarjetas perforadas, y cada movimiento tenía que ser introducido por medio de una lectora de tarjetas en arduas y lentas operaciones.

La mayoría de los programas escritos basados en la estrategia A de Shannon (la fuerza bruta) no podían correr en los excesivamente lentos mastodontes de la época. “Era todo excesivamente complicado” (Christoper Strachey, programador de la época). En el siguiente video se ve a Bernstein y el IBM 704 en acción.

Compujedrez, 2016

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s