trabajo de título desarrollo de la maestría ajedrecística computacional utilizando recursos...

72
Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Upload: eloisa-arcila

Post on 02-Apr-2015

109 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Trabajo de Título

Desarrollo de la Maestría Ajedrecística Computacional

Utilizando Recursos Restringidos

Jorge Egger Mancilla

25 de Septiembre 2003

Page 2: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Temario

Introducción Revisión Bibliográfica Análisis de Avances Históricos Parámetros de Comparación Propuesta para Competencias de Máquinas de Ajedrez Conclusiones

Page 3: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Introducción

Objetivos Estudiar un sistema de medición de la capacidad ajedrecística de una

máquina dados parámetros fijos de hardware.

Realizar un estudio comparativo de los parámetros relevantes que intervienen en la medición de la capacidad ajedrecística de una máquina respecto de su software y hardware.

En base a lo anterior, proponer las bases para competencias de ajedrez entre máquinas con software y hardware común para todos los competidores donde las diferencias estarán dadas en la modificación adecuada de un conjunto de parámetros.

Page 4: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Introducción

Motivación Desconocimiento de un método comparativo de nivel de fuerza de programas de ajedrez el cual se base en igualdad de condiciones de Hardware. Competencias realizadas entre programas distan de estar reguladas por parámetros que valoren el desarrollo de software. Conocimiento ajedrecístico del autor de esta memoria.

Page 5: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Introducción

Metodología Revisión y clasificación bibliográfica relacionada con el tema. Análisis desde un punto de vista histórico y ajedrecístico de los avances realizados. Establecer criterios de análisis en la composición del software de un programa de ajedrez (parámetros). Proposición de bases para competencias de computadoras de ajedrez.

Page 6: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Primeros Intentos : El Autómata (1796)

Page 7: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Primeros Intentos : “El Ajedrecista” Torres y

Quevedo (1912)

Desarrollaba el final de Rey y Torre v/s Rey a partir de cualquier posición. Dispositivo totalmente mecánico.

Page 8: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Las primeras Ideas

Claude Shannon (1949)

Estructura Base del programa de Ajedrez

Generador de Movimientos Árbol de Búsqueda Función de Evaluación

Page 9: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Shannon (1949) Generador de Movimientos

Modelo matemático para generar todos los movimientos legales de Piezas en una posición.

Árbol de Búsqueda

Estructura de todas las posiciones resultantes de ejecutar distintos movimientos desde una posición dada.

Page 10: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Shannon (1949) Función de Evaluación

Función asignadora de puntaje para una posición determinada. Parámetros básicos : Material, control de casillas, movilidad de piezas, seguridad de rey.

Determinación del mejor movimiento Algoritmo de Minimax sobre el árbol de Búsqueda.

Page 11: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El árbol de variantes del Ajedrez

Profundidad

Anchura

Page 12: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Propuesta de Shannon Programas de estrategia “tipo A”

Búsqueda completa sobre todas las ramas del árbol de variantes. Ventaja : Análisis de todas las posibilidades hasta cierto nivel de profundidad. No hay omisiones tácticas dentro del nivel de profundidad analizadoDesventaja: Tiempo utilizado en recorrer el árbol crece de manera exponencial. Algunas variantes son innecesarias de analizar. Método altamente ineficiente.

Page 13: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Propuesta de Shannon Programas de estrategia “tipo B”

Búsqueda selectiva sobre algunas ramas del árbol, aquellas que contengan los mejores movimientos (imitación del comportamiento humano). Ventaja : Búsqueda reducida sobre sólo algunas ramas del árbol de variantes. Desventaja: Se requiere un método de selección de las mejores jugadas posibles. Pueden producirse omisiones tácticas.

Page 14: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Trabajos de Alan Turing (1951) Primera simulación de juego de un programa de Ajedrez (TUROCHAMP, Profundidad de búsqueda de 1 movimiento con función de evaluación muy simple). Utiliza el concepto de “posición estable”, aquella en que no hay capturas de piezas no defendidas o Jaque Mate. Asumía las debilidades de sus programas señalando que éstos eran una representación de su propio nivel de juego. "Uno no puede programar una máquina para que juegue mejor de lo que uno juega".

Page 15: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Los Primeros Programas de Ajedrez El programa de Los Alamos (1956).

Versión simplificada del ajedrez implementado en un comp. MANIAC de 11.000 op. por segundo.

El programa de Bernstein (1958). Implementado sobre una IBM 704 (42.000 op/seg). Basado en el paper de Shannon. Función de Evaluación basada en Movilidad, casillas controladas, defensa del Rey y Material.

Page 16: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Primeros Programas Soviéticos Koruchkin

Solucionador de problemas de 2 jugadas (1951).

Programa Styeklov Trabajo publicado en boletín del campeonato Mundial de 1961. Fc. De Evaluación consideraba Material, movilidad, piezas defendidas, estructura de peones, control del centro, clavadas, protección del Rey. No poseía Algoritmo de Búsqueda.

Page 17: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Los Primeros Programas de Ajedrez El programa NSS (Newell, Shaw & Simon, 1955)

Programa escrito en lenguaje de alto nivel (IPL-IV) Utilizó el algoritmo alfa-beta para mejorar la búsqueda. Módulos asociados a objetivos particulares del ajedrez (Defensa del Rey, balance de material, control del centro, desarrollo, ataque y promoción de peones). “En 10 años una computadora de ajedrez vencerá al campeón mundial” (Simon, 1957).

Page 18: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Los Primeros Programas de Ajedrez Programa Kotok/McCarty (1961)

Implementado en una IBM 7090. Búsqueda con profundidad variable, dependiendo de la estabilidad de la posición. Match contra programa ruso ITEP en 1966 marca estímulo general del tema.

Page 19: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Programa de Greenblat (1966) Desarrollado en el MIT en una PDP-6. Facilidades interactivas para localización de errores. Implementado bajo estrategia tipo “B” (anchura 15 en movimientos 1 y 2 reducida a 9 en movimientos 3 y 4). Utilizó tablas de hash para evitar cálculos redundantes en trasposiciones. Cerca de 50 heurísticas de conocimiento ajedrecístico. Primer programa que logra resultados razonables frente a jugadores humanos.

Page 20: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Los Primeros Programas de Ajedrez Trabajos de Botvinnick.

Campeón mundial de Ajedrez entre 1948 y 1963. Se interesó en implementar el método de análisis humano en una computadora. Trabajos en computadora PIONNER publicados en 1970. Principales dificultades : restringido acceso a computadores en la URSS determinó que sus trabajos fuesen demasiado teóricos.

Page 21: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Los Primeros Programas de Ajedrez

Principales problemas : Velocidad y Capacidad de Hardware. Adaptabilidad de ideas del Ajedrez. Algoritmos de selección de movimientos utilizados en programas tipo-B demasiado lentos y complejos. Acceso a computadoras.

Page 22: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Nueva visión en los 70 Se desecha la idea de programas de Estrategia-B. Demora en búsqueda completa se compensa con la demora de selección de movimientos.Avances en Hardware compensan demora en búsqueda completa. Éxito en programas de “fuerza bruta”.

Page 23: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Boom de la década del 70 Nace la ICCA (actualmente ICGA). El programa CHESS (Universidad de Northwest, Illinois) es considerado en torneos de humanos. Nacen los torneos de la ACM y el Campeonato Mundial de Computadoras. 1978 : David Levy gana apuesta frente a Chess 4.7.

Page 24: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Nuevas implementaciones Bit Boards optimizan generación de movimientos. Nuevos algoritmos de ordenamiento de jugadas optimizan la poda dentro de la búsqueda completa. Utilización de tablas de Hashing. Inclusión de Bases de Datos en los programas (aperturas y finales). Mayor implementación de “conocimiento ajedrecístico” en las funciones de evaluación de los programas.

Page 25: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Profesía de Botvinnick (1974)

"Los maestros de ajedrez acostumbraban venir a los torneos entre computadoras para reír. Ahora, vienen para mirar. Pronto vendrán a aprender".

Page 26: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

La carrera de los 80 BELLE (Ken Thompson y Joe Condon).

Primer programa con hardware de diseño específico. Se cree que con mejor hardware se logrará la velocidad y capacidad deseadas para derrotar al campeón mundial. Construida con 64 transmisores y receptores, utilizando 1700 chips MSI.

Page 27: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

BELLE (Ken Thompson y Joe Condon). Calculo de 160.000 pos/seg. Implementada con Enciclopedia de Aperturas y Finales de Ajedrez.

Page 28: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

La carrera de los 80 HITECH (Universidad de Carnegie Melon).

Hans Berliner, campeón mundial de Ajedrez por Correspondencia. Diseño en base a chips de tecnología VSLI (64 en total, uno por cada casilla del tablero de ajedrez). Primera computadora que logra un rating sobre los 2400 pts.

Page 29: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

La carrera de los 80 CRAYBLITZ

Robert Hyatt. Diseño realizado en 1983. Implementación bajo procesamiento paralelo. Campeón mundial de computadoras entre 1983 y 1989.

Page 30: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Notorio crecimiento en fuerza de los programas Disponibilidad de nuevo hardware: "CRAYBLITZ" comenzó su vida en un simple monoprecesador Cray-1 (1981). En el torneo

mundial de 1989 ya corría bajo un multiprocesador Cray-XMP. Abaratamiento de costos de producción de circuitos integrados para aplicaciones específicas. Multiprocesador HITECH. Muchos más científicos aprendieron cómo escribir programas de ajedrez. Capacidad de adquirir máquinas de mayor poder para realizar pruebas y desarrollo de software.

Page 31: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El camino hacia DeepBlue CHIPTEST (Carniege Mellon, 1987)

Feng Hsiung Hsu,estudiante de Carniege Mellon crea en 1987 a CHIPTEST en base a la implementación de HITECH pero con mejoras a nivel de hardware. Logrando una velocidad de 700.000 pos/seg gana el campeonato ACM de 1987.

Page 32: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El camino hacia DeepBlue DEEP THOUGTH

En 1988, Hsu remueve el código base de HITECH Creando a DEEP THOUGTH Capacidad de cálculo de 1.000.000 pos/seg. Implementación en un solo chip. Primer programa que vence a un Gran Maestro de Ajedrez en condiciones de torneo (Bent Larsen, 1988).

Page 33: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El camino hacia DeepBlue DEEP THOUGTH

En 1989 la IBM contrata al equipo de DEEP THOUGHT y apadrina el proyecto de crear una máquina que venza al campeón del mundo. Vence 4-0 a David Levy (1989). Exhibición de 2 partidas frente a Kasparov (1989) revela deficiencias a nivel de conocimiento ajedrecístico y velocidad de hardware, sumado a errores en el programa.

Page 34: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El camino hacia DeepBlue DEEP BLUE

En 1993 se rediseña el hardware de DEEP THOUGTH creando una nueva versión, DEEP BLUE. Capacidad teórica de cálculo de 2.000.000 pos/seg. Función de evaluación modificable en base a 80 parámetros. Primer match entre Kasparov y DeepBlue (1996) es ganado por el jugador humano, si bien es primera ocasión en que una máquina derrota al campeón mundial en una partida.

Page 35: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El camino hacia DeepBlue DEEP BLUE

Luego del primer match con Kasparov se procede a trabajar con Grandes Maestros con tal de incluir mayor capacidad de conocimiento ajedrecístico en el programa. Colosal implementación de Hardware : 2 frames IBM RS-6000 albergando 48 procesadores. Segundo match contra Kasparov (1997) es ganado por DEEP BLUE por +2 –1 =3.

Page 36: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

El match Kasparov – DeepBlue (1997)

El equipo de Deep Blue en la sala de juego antes del inicio del match de 1997. Izq. a Der. Jerry Brody, Feng-Hsiung Hsu, Joe Hoane, Joel Benjamin y C.J.Tan. Sentado: Murray Campbell

El campeón Mundial Gary Kasparov meditando durante el desarrollo de la 3a partida del match

Page 37: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Conclusiones de la revisión bibliográfica Excesiva cantidad de material relacionada con el tema (búsqueda simple en internet arroja cerca de 500.000 registros). Papers de Shannon y Turing marcan la pauta de estudios posteriores. Principal interés centrado en técnicas de búsqueda y función de evaluación. Aparentemente no existe un estudio focalizado acerca de la medición de parámetros de fuerza de los programas.

Page 38: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Revisión Bibliográfica

Conclusiones de la revisión bibliográfica Se toma el rating ELO como referencia de nivel de fuerza de un programa, el cual se basa exclusivamente en resultados. Escasa colaboración en el tema por parte de ajedrecistas. Sus publicaciones apuntan a análisis desde un punto de vista ajedrecístico más que computacional. Gran hito del tópico : match entre Kasparov y Deep Blue. Cantidad de publicaciones sufren una notoria disminución luego de este match.

Page 39: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Representación del Juego Tablero, piezas y Movimientos

Primeras representaciones del tablero basadas en números y arreglos. Movimientos eran generados a partir de operaciones matemáticas. Problema : Capacidad de memoria y CPU de las máquinas hacían que este proceso ocupara demasiado tiempo y recursos.

Page 40: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Representación del Juego Tablero, piezas y Movimientos

Desarrollo de BitBoards (1970) marcan un tremendo avance en este problema. Nuevas mejoras involucraron mapas de bits específicos para ciertas funciones. Implementaciones actuales están desarrolladas a nivel de hardware.

Page 41: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Técnicas de Búsqueda Características iniciales

Muy dependientes de la capacidad de Hardware de las máquinas (velocidad de procesador y memoria). Primeros programas buscaban a profundidad fija de máximo 2 movimientos. Determinación de movimiento a realizar basado exclusivamente en algoritmo Minimax. Problema insolucionable : Efecto Horizonte.

Page 42: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Técnicas de Búsqueda Optimizaciones

Búsquedas con profundidad variable e iterativa. Concepto de posición estable. Técnicas de poda : algoritmo alfabeta. Técnicas de ordenamiento de jugadas. Tablas de transposición. Tablas históricas (killer moves). Búsqueda de Ventana. Extensiones Singulares (DeepBlue).

Page 43: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Técnicas de Búsqueda Situación actual

Desarrollos actuales combinan búsqueda inicial a nivel de hardware y búsqueda selectiva a nivel de software. Capacidades actuales de hardware logran búsquedas de hasta 10 niveles de profundidad. DeepBlue logró en su 2do match contra Kasparov niveles de profundidad de 17 movimientos con velocidades de cálculo cercanas a los 2.000.000 pos/seg.

Page 44: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Técnicas de Búsqueda 

Programa Año Posiciones/segundo

BELLE 1er prototipo 1976 200

BELLE 2do prototipo 1978 5.000

BELLE 3er prototipo 1980 120.000

CHEOPS 1977 150.000

BEBE 1980 40.000

HITECH 1985 200.000

DEEPTHOUGTH 1986 700.000

DEEPBLUE 1996 2.000.000

Page 45: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Función de Evaluación Características Iniciales

Basadas en consideraciones materiales (tácticas, corto plazo) más que posicionales (estratégicas, largo plazo). Durante los 70 se le dio una importancia secundaria a su desarrollo, dando mayor prioridad a las técnicas de búsqueda. A fines de los 80 la carencia de conocimiento ajedrecístico de los programas volcó el interés en crear mejoras en ella.

Page 46: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Función de Evaluación Dificultades

La sola consideración material era insuficiente para lograr evaluar con precisión. Se requiere implementar patrones posicionales (conocimiento ajedrecístico). Los Grandes Maestros reconocen cerca de 50.000 patrones posicionales en el ajedrez, los cuales varían de importancia respecto de la etapa en que se encuentra el juego. La implementación de conocimiento ajedrecístico requiere la consulta a expertos.

Page 47: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Función de Evaluación Dificultades

La tarea de evaluar una posición no puede tomar demasiado tiempo, lo que implica que la función de evaluación no puede ser demasiado compleja. La experiencia ha demostrado que el dar a un programa demasiado "conocimiento ajedrecístico" es una tarea difícil y peligrosa. Si la información es incompleta se pueden tener efectos contrarios a lo deseado.

Page 48: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Función de Evaluación Principales Avances

Combinación de análisis a nivel de software y hardware. Parametrización de la función de evaluación y optimización de ésta en base a comparación con partidas de grandes maestros (DeepBlue). Trabajo sincronizado con Grandes Maestros dio excelentes resultados.

Page 49: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Otros avances desarrollados Tablas de Transposición

Soluciona el problema de recalcular posiciones por efectos de transposiciones en el juego. Imprescindible en etapa del final de partida, en donde con seguridad más del 90% de las posiciones resultantes son transposiciones. Su problema radica en la “voracidad” del uso de memoria. Para ser útil debe tener varios miles de registros. Optimización : Almacenamiento con llaves de Hash.

Page 50: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Otros avances desarrollados Tablas Históricas

Técnica descendiente de las “killer moves”. Idea : almacenar movimientos que en algunas variantes determinan cambios radicales en la evaluación de la posición (por ejemplo, movimientos que dan jaque mate). Los movimientos “históricamente fuertes” son almacenados y evaluados de acuerdo a la cantidad de veces que aparecen en la búsqueda. Los valores de la tabla son consultados al realizar el ordenamiento de las jugadas a analizar.

Page 51: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Otros avances desarrollados Bases de Datos

Ken Thompson desarrolló en 1976 mediante métodos recursivos la forma exacta de ganar o defender un final de partida. Con esta técnica se demostró que, por ejemplo, el final de R+D v/s R se gana en 10 movimientos, mientras que el R+T v/s R en 16. En la actualidad todos los finales de 5 o menos piezas están “teóricamente resueltos”. El próximo paso son los finales de 6 piezas.

Page 52: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Otros avances desarrollados Bases de Datos

En 1977 BELLE jugó un match con R+T v/s R+D contra el campeón norteamericano W. Browne. Su juego fue automático logrando tablas con la Torre. En las aperturas, prácticamente todos los programas guardan variantes hasta la jugada 20 o más, las cuales mejoran con sus análisis o bien con actualizaciones. Las consecuencias de esto han sido una reducción notable en tiempos de análisis y mayor producción de “cortes” en procesos de búsqueda.

Page 53: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Análisis de Avances Históricos

Otros avances desarrollados Uso eficiente del tiempo de reflexión

¿Cuanto tiempo asignar al análisis de la posición? Primer avance : reflexionar durante el tiempo del oponente. En 1984 Robert Hyatt describe el algoritmo de uso del tiempo utilizado en Crafty. Actualmente existen varios métodos de administración del tiempo relacionados con el ritmo de juego de la partida y con la evaluación de la posición de juego.

Page 54: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Búsqueda

Tipo de búsqueda implementada (Completa, variable, iterativa, ventana,etc.). El tipo de búsqueda depende de la capacidad de hardware del programa (memoria y CPU) así como las optimizaciones en implementación.

Page 55: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Búsqueda

Nivel de profundidad marca una notable diferencia.

Lug Prog P9 P8 P7 P6 P5 P4 PTS perf

1 P9 X 14.5 16.0 18.5 20.0 20.0 89.0 2328

2 P8 5.5 X 15.0 18.5 19.5 20.0 78.5 2208

3 P7 4.0 5.0 X 16.0 17.0 20.0 62.0 2031

4 P6 1.5 1.5 4.0 X 16.5 19.5 42.5 1826

5 P5 0.0 0.5 3.0 3.5 X 15.0 22.0 1570

6 P4 0.0 0.0 0.0 0.5 5.0 X 5.5 1235

Experimento de Thompson en programas con distinto nivel de profundidad

Page 56: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Función de Evaluación

Complejidad de la función. Patrones de evaluación involucrados y asociación de éstos con acciones a ejecutar. Correctitud de asignación de valores a cada parámetro. “Estilo de juego” asignado.

Page 57: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Función de Evaluación

No hay referencias de experimentos comparativos de importancia de presencia de patrones. Posible motivo : un patrón posicional no asegura una preponderancia entre un programa que si lo posea y otro que no. Una de las experiencias más interesantes en corregir “pesos” de patrones posicionales fue la realizada por el equipo de DeepBlue en torno a una base de 900 partidas de Grandes Maestros.

Page 58: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Bases de Datos

La ventaja en la presencia de una base de datos corresponde a un gran ahorro de tiempo de búsqueda y evaluación. El sólo hecho de llegar a una posición “conocida” por la base de datos genera un corte en el análisis. La diferencia reflejada será de mejores búsquedas en tiempos similares.

Page 59: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Software Otros parámetros de comparación

Implementaciones como tablas de transposición, tablas históricas y algoritmos de uso del tiempo de reflexión y heurísticas de optimización de búsqueda determinan una diferencia en la calidad de la búsqueda sobre el árbol de variantes. Estas implementaciones tienen por supuesto una dependencia en la capacidad de harwdare de la máquina.

Page 60: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Hardware Muchos relacionan el éxito de los programas como un asunto exclusivo de mejora de hardware ¿Cuan efectivos, medibles y hasta necesarios han sido estos avances?

Aspectos a comparar Capacidad de Procesamiento. Capacidad de Memoria. Tamaño de Palabras.

Page 61: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Hardware Hardware dedicado

Aparece a mediados de los 70 iniciando un rápido proceso de sofisticación y mejoras El primer objetivo fue la generación de movimientos. Luego parte de la búsqueda como de la evaluación se implementaron a este nivel. Caso extremo : DeepBlue con 2 frames albergando 15 RS-6000 SP cada uno.

Page 62: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Hardware Sistemas multiprocesadores

Objetivo: lograr un aumento en la velocidad de procesamiento en un factor de n veces con n procesadores. Problemas : Cómo dividir el árbol de variantes con tal de evitar búsqueda redundante y mantener a la vez a todos los procesadores ocupados. Crafty, ChessChallenger y Deep Thougth utilizaron este sistema con éxito. DeepBlue poseía 480 procesadores en total.

Page 63: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Parámetros utilizados en la actualidad El rating ELO

Puntaje asignado exclusivamente en función de resultados previos. Aceptado prácticamente en forma universal como el mejor parámetro de medición de fuerza de un programa.

3000

2000

1000

1950 1965 1970 1980 1990

Fis

cher

Kas

paro

v

Spa

ssky

Dee

pBlu

e

Bot

vinn

ick

Pet

rosi

an

Kar

pov

Kor

chno

i

Kas

paro

v

Mac

Hac

k

Che

ss 3

.0

Che

ss 4

.6

Bel

le

Dee

pTho

ugth

Hit

ech

Page 64: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Parámetros utilizados en la actualidad Test para computadoras

Conjunto de problemas de muy difícil solución presentados a los programas. Como medición de efectividad se toma en cuenta el tiempo demorado en obtener la solución. Como aspecto interesante, existen ciertos tests diseñados para verificar la existencia de implementaciones dentro de los programas.

Page 65: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Competencias entre Computadoras

Antecedentes Mundiales Torneos de la ACM Realizados desde 1970 Campeonatos Mundiales Torneos “Humanos v/s Computadoras”

Antecedentes Nacionales Casos aislados : Torneo entre maestros y programas (1996) y algunas exhibiciones en torneos de humanos. El fin de estos eventos fue más comercial que científico.

Page 66: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Competencias entre Computadoras

Deficiencias observadas No hay reglas que limiten el hardware a utilizar por cada computadora. Esto hace que muchas veces el ganador no sea el mejor desarrollo, sino que el que logró conseguir mayor “fierro”.

Page 67: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Parámetros de Comparación

Propuesta de Bases Similares en aspectos técnicos a las bases convencionales. Se define un hardware base a utilizar en la competencia general. Se definen premios por categorías en base a la limitación de ciertos parámetros y la entrega de código fuente base el cual debe ser modificado en algún aspecto particular.

Page 68: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Conclusiones

El objetivo Inicial Extrapolar los resultados de investigaciones en ajedrez hacia otras ciencias. Shannon sienta las bases del desarrollo posterior Primeras ideas apuntan a imitar el razonamiento humano. Preocupación por un desarrollo optimizado de las técnicas de búsqueda y función de evaluación. Los malos resultados producen desazón entre los desarrolladores.

Page 69: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Conclusiones

Los cambios de Estrategia Las máquinas de búsqueda completa logran mejores resultados que sus predecesoras. Motivación : potenciar la capacidad de cálculo de las máquinas por sobre el difícil modelamiento del razocinio humano. Los resultados empiezan a importar más que las mejoras en desarrollo. Se pierde el objetivo inicial y ahora el fin es derrotar al campeón del mundo.

Page 70: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Conclusiones

Parámetros de medición Los utilizados y aceptados universalmente : Rating Elo, resultados en test de computadoras, resultados en campeonatos. Aquellos que debieron ser tomados en consideración : Tipo de búsqueda, nivel de profundidad, patrones sobre función de evaluación, tablas de transposición, bases de datos, motor generador de movimientos, implementación sobre hardware.

Page 71: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Conclusiones

Propuesta de competencias Realizar un torneo en donde se premien los desarrollos de software dado un código base y un hardware limitado y fijo. Categorías a considerar: Programación, algoritmo de búsqueda, función de evaluación, parámetros ajedrecísticos, restricción de memoria, restricción de velocidad de procesamiento.

Page 72: Trabajo de Título Desarrollo de la Maestría Ajedrecística Computacional Utilizando Recursos Restringidos Jorge Egger Mancilla 25 de Septiembre 2003

Presentación Trabajo de Título

Gracias