next up previous contents
Next: Competencias entre Computadoras: Análisis Up: Métodos Comparativos utilizados en Previous: El Rating Elo   Índice General

Tests de ajedrez para computadoras

Otro método de bastante popularidad en el ambiente de los programadores de computadoras eran las competencias de resolución de problemas. Se seleccionaban distintos problemas de ajedrez, por lo general de muy difícil nivel de solución, y eran presentados a los programas, considerándose parámetro de medición de capacidad el tiempo tomado en cada problema y el tiempo global en resolverlos todos.

Por lo general cada problema tenía un puntaje distinto de solución respecto de su nivel de dificultad. Programas con mayores niveles de profundidad en búsqueda y hardware que les otorgaba mayor velocidad de procesamiento eran capaces de resolver con mayor facilidad este tipo de contiendas. Por su puesto los problemas presentados debían entonces ser de alta dificultad y con soluciones que implicaran varios movimientos. Algunos aspectos interesantes de los problemas eran que podían medir si el programa poseía ciertas características en su desarrollo de software, como por ejemplo, capacidad de profundidad, tablas de transposición, ciertos patrones reconocidos dentro de su función de evaluación, etc. A modo de explicación la siguiente posición es un típico ejemplo de estos problemas:


Posición que un programa sin Tablas de Transposición no puede solucionar.
Las Blancas ganan mediante 1.Rb1!! Rb7 2.Rc1!!


Este tipo de problema puede ser solucionado sólo mediante el uso de Tablas de Transposición, también conocidas como Tablas de Hash. De otra manera, como menciona Newborn en [7], una búsqueda de 30 movimientos sería necesaria, y eso tomaría miles de horas de tiempo de CPU. Por otro lado, la tabla de hash logra descubrir la solución del problema en 6 movimientos, puesto que existen 130 diferentes tipos de posiciones obtenibles desde la inicial. Una vez que ellas son evaluadas como victorias o tablas la búsqueda procede en forma mucho más rápida.

Uno de los tests más conocidos es la colección de problemas de Hyatt y Newborn, la cual utilizaron en 1997 para probar la capacidad de su programa CRAFTY. La colección abarca un total de de 347 posiciones las cuales están clasificadas de acuerdo a las etapas del juego: Test de Aperturas, Test de medio juego y tests de Finales.

Los problemas entregan una forma de medir la velocidad de procesamiento (búsqueda) del programa así como las capacidades incorporadas en su código fuente. Una estimación numérica de la fuerza de cada programa en este tipo de contiendas puede realizarse a partir de los tiempos de respuesta entregados, pero no deberían ser tomados como un valor demasiado exacto a nivel de capacidad de software de los programas dada la dependencia del resultado con la capacidad de hardware de ellos.


next up previous contents
Next: Competencias entre Computadoras: Análisis Up: Métodos Comparativos utilizados en Previous: El Rating Elo   Índice General
Santiago de Chile, Julio 2003