Kotok-McCarthy, también conocido como Programa de ajedrez para la computadora IBM 7090, fue el primer programa de computadora que jugó al ajedrez de manera convincente. También se lo recuerda porque participó y perdió la primera partida de ajedrez entre dos programas de computadora. En la Figura 11.15 se muestra un pseudocódigo del programa. [1]
Entre 1959 y 1962, los compañeros de clase Elwyn Berlekamp , Alan Kotok , Michael Lieberman, Charles Niessen y Robert A. Wagner escribieron el programa mientras eran estudiantes de John McCarthy en el Instituto Tecnológico de Massachusetts .
Basándose en el programa emblemático de 1957 de Alex Bernstein [2] creado en IBM y en las rutinas IBM 704 de McCarthy y Paul W. Abrahams, añadieron la poda alfa-beta a minmax por sugerencia de McCarthy para mejorar el generador de movimientos plausibles. Escribieron en Fortran y FAP sobre el tiempo de computación recuperado. Después de que el MIT recibiera un 7090 de IBM , un solo movimiento tardaba entre cinco y veinte minutos. En 1962, cuando se graduaron, el programa había completado fragmentos de cuatro juegos a un nivel "comparable al de un aficionado con una experiencia de unos 100 juegos". [3] Kotok, a los 20 años aproximadamente, publicó su trabajo en el Memorando de Inteligencia Artificial 41 del MIT y en su tesis de licenciatura. [3]
En 1965, McCarthy, que por entonces estaba en la Universidad de Stanford , visitó la Unión Soviética . Un grupo que utilizaba la computadora M-2 en el laboratorio de Alexander Kronrod en el Instituto de Física Teórica y Experimental de Moscú (ITEP) lo desafió a un partido. [4] Kronrod consideró que Kotok-McCarthy era el mejor programa en los Estados Unidos en ese momento. [5] Aunque algunos de sus fallos se conocían en 1965 [6] y se corrigieron en el programa Greenblatt en el Proyecto MAC del MIT , Kotok-McCarthy ya no estaba en desarrollo y tenía tres años de retraso.
Georgy Adelson-Velsky , Vladimir Arlazarov , Bitman, Anatoly Uskov y Alexander Zhivotovsky ganaron el partido por correspondencia jugado por telégrafo durante nueve meses en 1966-1967. El programa Kotok-McCarthy perdió el partido por un marcador de tres a uno [5] y las dos primeras partidas se jugaron con una versión débil. [7] El grupo ITEP fue asesorado por el maestro de ajedrez ruso [ cita requerida ] Alexander R. Bitman y el tres veces campeón del mundo Mikhail Botvinnik . [8] Según el Museo de Historia de la Computación , McCarthy "utilizó una versión mejorada" [9] en 1967, pero se desconoce qué mejoras se realizaron.
En 1967, Mac Hack VI [10] de Richard Greenblatt con Donald E. Eastlake III se convirtió en miembro honorario de la Federación de Ajedrez de los Estados Unidos [ cita requerida ] cuando una persona perdió contra él en un torneo en Massachusetts . Kronrod perdió su dirección en ITEP y su cátedra debido a las quejas de los usuarios de física de que los recursos matemáticos de ITEP se estaban utilizando para juegos. Mikhail Donskoy, Arlazarov y Uskov desarrollaron el programa ITEP en Kaissa [ cita requerida ] en el Instituto de Ciencias de Control y en 1974, se convirtió en el campeón mundial de ajedrez por computadora . [11] El debate continuó [12] unos cuarenta años después de la primera prueba, sobre si el enfoque de fuerza bruta de tipo A de Shannon [13] , utilizado por ITEP, es superior a la estrategia selectiva de tipo B, utilizada por Kotok-McCarthy. [7] El éxito de programas como el Chess 4.5 de la Universidad Northwestern, que utilizó la estrategia Tipo A, [14] [15] sin embargo, llevó a que la estrategia Tipo A fuera favorecida, al menos para proyectos donde la fuerza de juego, y no el conocimiento de los procesos de pensamiento humano, era el objetivo. [16] Sin embargo, recientemente, los programas de ajedrez que hacen uso de redes neuronales para evaluar posiciones, como Giraffe, Alpha Chess Zero y Leela Chess Zero , hacen uso de Monte Carlo Tree Search para permitir una búsqueda más profunda al no evaluar cada posición.
{{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite web}}
: Enlace externo en |author=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda )Mantenimiento de CS1: varios nombres: lista de autores ( enlace ){{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda ){{cite journal}}
: Requiere citar revista |journal=
( ayuda )CS1 maint: multiple names: authors list (link)