Arriba ] [ Explicación ] Posiciones 1-3 ] Posiciones 4-6 ] Posiciones 7-9 ] Posiciones 10-12 ] Posiciones 13-15 ] Posiciones 16-18 ] Posiciones 19-21 ] Posiciones 22-24 ] Posiciones 25-26 ] Resultados (detalle) 1 ] Resultados (resumen) ]

Test del Área Analítica de Frontera

por Ángel Vega (ANACA, boletín 3, 1990)

I. Preámbulo

"Un test más" dirá el avisado lector. Por esto me siento obligado a explicar un poco este invento.

Todos los apasionados de este "Circuito" estamos muy interesados en medir la fuerza de los programas. Todos somos conscientes también de que eso es sumamente difícil, por no decir tarea imposible (en forma estricta). Pero todos los intentos son válidos y pasos de acercamiento al ideal buscado.

1. El pensamiento de las Máquinas.

En esencia, los Programas son "mentes" analíticas que están inventando la rueda en cada turno de juego. Las Máquinas no conocen (por el momento) la síntesis.

La mente humana analiza también, pero su discriminante más notable es su capacidad de síntesis. Amplias elipsis mentales y concreciones en función de asociaciones de experiencias anteriores. El hombre inventó la rueda una sola vez.

Esto nos conduce a dos puntos básicos:

a) Los programas siempre están combinando.

b) Los programas no pueden concebir planes. Es cierto que pueden ser aleccionados con elementales directrices posicionales, pero eso es distinto a tener un plan o ideas estratégicas en sentido estricto. Esto es algo que se elabora ante una posición concreta en función de la capacidad adaptativa de una mente altamente asociativa. Un Programa resuelve tácticamente los problemas estratégicos.

2. El Tramo Ciego.

Vamos a definir como Tramo Ciego aquel trayecto de una partida que se caracteriza por un ambiente sin combinatoria, meramente posicional.

Lógicamente, el Tramo Ciego es crítico para los Programas. Ante otra Máquina entra el azar. Ambos Programas salen del Tramo Ciego en posición inferior o superior prácticamente al azar, sin conocimiento ni mérito propio. Ante un jugador humano no existe azar sino inferioridad del Programa.

3. La Partida como Test.

De acuerdo con el punto anterior, mi opinión es que el sistema de jugar partidas para comprobar el nivel de juego de un Programa es más apropiado aplicado a Hombre-Máquina que a Máquina-Máquina. El Tramo Ciego obliga a grandes números para compensar la parte de azar.

Yo tengo experiencias Máquina-Máquina con resultado 8:2 primera semana y 3:6 la siguiente semana. Experiencias semejantes son impensables en confrontaciones Hombre-Máquina. Por desgracia éstas últimas son difíciles de preparar en condiciones adecuadas (torneos).

En todo caso, experiencias como la sueca de la revista Ply (la misma que publica la SSDF) son otra cosa por el gran número de partidas.

4. Propósito del Test.

El propósito del Test de Frontera es lograr un procedimiento individual, que es lo que todos buscamos, para conocer el nivel de juego de un Programa sin necesidad de acudir a test de partidas como complemento de las posiciones de test.

Esto ya existe y es cierto, pero por lo difícil del intento, ninguno (este es otro más) tiene la garantía de la fórmula definitiva. En cambio todos aportan aspectos interesantes que nos acercan a lo que buscamos. El Test de Frontera es un nuevo intento en esa dirección.

5. La Idea directriz.

La Idea directriz del Test de Frontera aglutina las siguientes líneas maestras de construcción:

a) La fuerza básica de un programa reside en su capacidad combinatoria. Se puede complementar con aspectos estratégicos elementales (estoy en la elaboración de este complemento) pero hasta donde he podido llegar considero que el aspecto de "ciencia" posicional puede aportar a lo sumo 50 puntos ELO para confrontaciones con jugadores humanos. En cambio, esa pequeña ciencia puede ser utilísima para el Tramo Ciego en peleas entre Máquinas y aportar hasta 150 puntos ELO en estadística de resultado de partidas (salir mejor del Tramo por librarse de movimientos inferiores).

b) Las dificultades de un Programa son muy diferentes a las de un jugador humano. Hasta el límite de los 6-7 plys las máquinas son intratables y muy superiores a la mente humana como herramienta o análisis. Definiremos este territorio. Lo resuelven bien, podemos considerarlo como la BASE de trabajo que proporciona ya a cualquier Programa un nivel por encima de 1500 puntos ELO (fecha actual).

c) Cuando el Hombre resuelve estratégicamente una posición a base de un plan de largo alcance, esta solución queda de momento totalmente fuera de las posibilidades de un Programa. Tampoco lo vamos a examinar de estos imposibles.

d) Existen otras situaciones en las que el Hombre aplica solución "humana" incluyendo síntesis y condensaciones de pensamiento a las que un Programa puede acercarse gracias a sofisticaciones que "amplifiquen" o "extiendan" sus límites actuales de análisis. Se trata de un terreno de FRONTERA y por eso lo definiremos como ÁREA ANALÍTICA DE FRONTERA. Este es el punto en que existen los discriminantes de los Programas punteros y, por tanto, el que nos interesa para el test. Mejorando la respuesta en este terreno es como el Programa puede elevar su nivel de juego.

II. El Test de Frontera

El Test se ocupa de esas "sofisticaciones" que permiten extender frontera y solaparse en las áreas en que el Hombre se escapa gracias a la síntesis y condensaciones de pensamiento.

Para ello identificamos determinados elementos presentes en ese área que dificultan la solución. Estos elementos son: Extensores, Retardadores, Inhibidores y Excitadores.

1. Los Extensores

En determinadas posiciones la mente humana es capaz de elaborar una síntesis con elipsis o abstracción de otros elementos no considerados de forma directa.

"¿Qué pasa después de ESTO?" La elipsis ESTO puede involucrar una simplificación de 8 plys. El trabajo de análisis comienza a partir de ahí. La síntesis está al comienzo.

"Ahora jaque y jaque y después jaque...". Esta serie de jaques liberan a la mente de otras consideraciones. Pueden ser 6-8 plys de camino lineal. Después viene el análisis.

"Peón en e5 y falta caballo en f6, aquí hay un ataque típico al enroque". Un montón de plys condensados en signos externos ya familiares. El análisis se concreta en la materialización de la idea previa.

"Llegado a este punto el plan ganador... porque el peón corona". Aquí el análisis es antes y la síntesis está en el plan ganador que ni precisa un segundo de ocupación mental humana.

Para competir, el Programa necesita "extender" plys. Esta sofisticación está incorporada a los programas selectivos. Para ello necesitan detectar la presencia de alguno de estos signos externos:

a) Secuencia de jaques: Extensores de Jaques. Primer extensor incorporado a los programas. Prácticamente toda la secuencia tiene jaques.

b) Posición de Ataque típico al Rey: Extensores de Ataque al Rey. La secuencia tiene movimientos sin jaque.

c) Secuencia de Simplificación: Extensores de Simplificación. Selección de posiciones a partir de cambios.

d) Secuencia de Coronación: Extensores de Coronación.

2. Los Retardadores

Los programas sienten vértigo ante el NÚMERO. No olvidemos que siempre analizan, que siempre están inventando la rueda a cada jugada.

La presencia típica de elementos retardadores la constituyen Damas y Torres con juego libre en el tablero. Con Damas y Torres en posiciones abiertas, con dificultad pasan los Programas del ply 6.

Los elementos Retardadores son consumidores de tiempo lo mismo que los extensores son consumidores de plys.

Un pequeño cálculo: En una posición con 20 jugadas posibles, el Programa tiene que analizar 20x20x20x20 = 160.000 posiciones para llegar al ply 4. Si introducimos en esa posición una Dama proporcionando ella sola 20 movimientos posibles que, sumados a los 20 anteriores totalizan 40 movimientos, tendría ahora que analizar 40x40x40x40 = 2.640.000 posiciones para alcanzar los 4 plys.

Parece que la única defensa de un Programa ante la presencia de Retardadores es el Hardware (velocidad de procesador). Pero un algoritmo adecuado arañando milisegundos en la Función de Evaluación, en el Árbol de Búsqueda y hasta en el mismo Generador de Movimientos, termina siendo apreciable ante la millonada de nodos a analizar. Una ayuda inestimable es también el análisis Selectivo y el uso de Hash Tables (Tablas de Transposición).

3. Los Inhibidores

A nadie le gusta sacrificar efectivos. También el jugador humano se retrae si ha de sacrificar la Dama. Pero también aquí pueden operar asociaciones y discriminantes (como puede ser hasta la categoría del oponente) que permiten pasar de cola a cabeza de lista un sacrificio de Dama.

Los programas, incapaces de acumular experiencia o reaccionar emotivamente, tienen un "instinto" que les atenaza a evaluar de forma muy estricta en términos de pertrechos de guerra.

Así, un sacrificio de Dama se coloca rápidamente a la cola de la lista hasta que se demuestre bien que es una inversión rentable.

¿Cuál es el efecto de la cola de Lista? En términos generales cuesta 5 veces el tiempo invertido en pasar de un ply al siguiente (entre 4-6 veces según el nivel selectivo, programa, etc.). Supongamos que un sacrificio se evidencia en el ply 7 y que en esa posición son necesarios 4 minutos para llegar al ply 6. Pues bien, como ese movimiento está siempre en la cola, se precisa TODO EL TIEMPO del ply 7, es decir, 4x5 = 20 minutos. ¡Puede ser tarde!

Queda claro el efecto de los Inhibidores. Movimientos clave que dormitan en la cola de la lista de disponibles.

¿Cómo puede un Programa optimizar su comportamiento frente a los inhibidores? Aquí la selectividad más bien opera entorpeciendo. El test sirve entonces para ver el equilibrio Retardadores - Extensores versus Inhibidores. Por otra parte son imaginables muchos artificios. Imaginemos el nervio de un programa que colocara los sacrificios de Dama siempre en segundo puesto de la lista (segundo para evitar salidas indeseables por tiempo). En el ejemplo anterior tendríamos por los 5 minutos el resultado sin esperar a los 20 minutos.

4. Los Excitadores

Un movimiento atractivo, una captura directa de material es tan excitador para el Hombre como para la Máquina. Yo diría que más excitador para los humanos dado el carácter bastante flemático de los "cerebros" cableados.

Nuevamente, el modo de ser humano puede lograr cisuras bruscas de tiempo de análisis en función de sofisticados discriminantes ("Fulano... este no puede entregarme la Dama... ¡Ah! ya").

Un Programa sólo cuenta con su árida fórmula contable de efectivos de guerra. Un movimiento de captura o de próxima captura es altamente contaminante en la evaluación si es falso. Figura siempre en Cabeza de lista y, si no hay tiempo para llegar al ply de la evidencia, se cae de lleno en la trampa.

El problema de los Excitadores se puede paliar de forma indirecta con Selectividad bien dirigida y de forma directa con tratamientos específicos de los artistas del software.

5. La Clasificación

Como ocurre en cualquier colección de temas tácticos, todas las posiciones incorporan usualmente varios temas o ideas tácticas, pero se clasifican en función del tema predominante o, como mínimo, presente.

En el Test de Frontera ocurre lo mismo. En todo caso la posición "coco" para un programa ya la podemos imaginar. Tendrá:

- Un fuerte Inhibidor intermedio en el ply 6.

- Reforzado por un atractivo Excitador inicial para distraer.

- La presencia de potentes Retardadores proporcionará un lento caminar de tortuga por los plys.

- Complicando todo, Extensores de un área de síntesis humana obligarán a llegar al ply 12.

III. Evaluación del Test

1. Selección de posiciones

Al seleccionar las posiciones del test he tratado de situarme en  el área buscada, es decir, en el terreno de Frontera. La solución no será fácil para el promedio de los punteros, pero se trata de que sea asequible para los mejores o para el próximo futuro.

El grado de dificultad no se califica desde el punto de vista del ajedrecista humano, sino desde las limitaciones propias de las máquinas. Se comprobará que en la mayor parte de los casos, a mayor dificultad para los programas se corresponde mayor facilidad para el hombre. Esta es precisamente el área que se busca. Esta situación, frecuente en la partida práctica, hace que los programas tengan un techo próximo a los 2.000 - 2.100 puntos ELO mientras no puedan superar de alguna forma este terreno de Frontera.

He dividido el conjunto en tres grupos de dificultad y uno especial para tener una mejor perspectiva de la aproximación de las máquinas a las soluciones de Frontera. En un principio pensé incluso utilizar los grados 1 - 2 para evitar el fastidio de horas de examen, pero pronto, bien a pesar mío, pude comprobar que si se quiere examinar la región de Frontera, no hay más remedio que situar a los programas en ese punto y tomarlo con filosofía en el grado 3, sin desmerecer la pequeña excursión al grado especial.

Todas las posiciones han sido seleccionadas con gran cuidado, buscando una equilibrada distribución de los cuatro elementos de dificultad y todas ellas están tomadas de partidas reales del ajedrez magistral. En algunos casos puede habérseme escapado algún detalle que altere el análisis y por tanto justifique determinadas respuestas de los programas, pero espero que sean las menos y, en caso de de encontrar alguna, será fácil buscar otra posición alternativa en el futuro.

2. La Puntuación Ideal

Hay que recordar que al programa se le examina sólo de arte combinatoria. La evaluación buscada se orienta siempre hacia el nivel de fuerza en relación con la potencia del jugador humano.

Entonces es necesario considerar las siguientes compensaciones:

- Área Consolidada. Campo en el que son mejores los programas (análisis exhaustivo de unos 6 plys durante toda la partida).

- Área de Frontera. Campo de competencia con ventajas e inconvenientes (objeto de estudio del test).

- Área de incompetencia. Desventaja permanente de los programas (tramos ciegos, incapacidad de planificar)

He considerado (de partida) la puntuación ideal de la siguiente forma: Si un programa es capaz de resolver todas las posiciones de Frontera en un tiempo promedio de nivel de torneo (3 min. 45 seg), habrá que admitir que su fuerza se aproxima a los 2.400 puntos ELO, teniendo en cuenta sus otros recursos del Área Consolidada. Por suerte, la puntuación ideal no es crítica para el test y puede ser ajustada.

3. El Criterio de Evaluación

El verdadero problema a resolver es: Dando por buena esa u otra puntuación ideal, ¿cómo ajustar las respuestas de cada programa a esa puntuación ideal?

El criterio adoptado se basa en las siguientes consideraciones:

a) El test es de combinatoria. Se trata de posiciones analíticas para la Máquina. En análisis, EL TIEMPO de solución es el criterio de FUERZA. Los Programas no tienen intuiciones relámpago ni ocurrencias súbitas como los humanos. Todo sale de un elaborado proceso CONSUMIDOR de PLYS.

b) EL TIEMPO sube EXPONENCIALMENTE con los plys. La degradación de ELO por fuerza tendrá entonces una pendiente logarítmica.

c) ¿Cuál es el incremento de fuerza cuando se duplica la velocidad de análisis? La experiencia parece confirmar una diferencia ELO que, rebasando siempre los 50 puntos, queda por debajo de los 100. Yo he considerado el valor 75 como ajustado a razón de esos límites experimentales.

d) Aunque las posiciones están clasificadas, es meramente funcional para elaborar el nivel promedio del test y tener una previsión del tiempo que se tomará el ordenador. Cada programa tiene sus dificultades y recursos particulares. Lo que para uno puede ser fácil, cabe que sea un tormento para otro. Les dejaremos pensar a sus aires. A nosotros nos interesa el tiempo promedio del conjunto del Test.

4. La Fórmula de Evaluación

Con todo lo anterior en la coctelera, la fórmula puede decirse que cae como fruta madura por sí misma.

a) Se toma nota del tiempo de respuesta para cada posición.

b) Se calcula la SUMA de todos los tiempos.

c) Se calcula la MEDIA (tiempo promedio) por posición.

            MEDIA = INT(SUMA/26)    (INT = parte entera de SUMA/26)

d) Se calcula el ELO de acuerdo con la siguiente fórmula:

            ELO = 2400 - INT(250*Log10((1+MEDIA)/225))

en donde:

        ELO : Evaluación ELO buscada

        INT( : Parte entera de la operación en paréntesis

        Log10 : Logaritmo en base 10

5. Nivel de Saturación

Si aplicamos la fórmula a una solución de 8 horas como tiempo promedio obtenemos:

    ELO = 2400 - INT(250*Log10((1+28800)/225)) = 1874 ELO

Para una solución de 24 horas:

    ELO = 2400 - INT(250*Log10((1+86400)/225)) = 1754 ELO

Para explicar cómo un programa con respuesta promedio 24 horas puede obtener una puntuación ELO de 1754, basta considerar que estamos proponiendo posiciones de Frontera. Es decir, queda sin examinar el AREA CONSOLIDADA de respuesta segura en la región de los  6 - 7 plys. Es evidente que el área consolidada es capaz de proporcionar 1700 puntos ELO en los tiempos actuales (explica también las dificultades del área estudiada).

Por otra parte puede apreciarse claramente el efecto aplanador o saturante de la pendiente logarítmica. Se puede adoptar por tanto una decisión práctica perfectamente asumible, aplicando saturación a partir de la zona de nuestro interés.

Tomaremos entonces (saturación) 58800 segundos como tiempo de respuesta cuando ésta no se encuantra en el término de las 8 horas. Extrapolamos así los valores reales que obtendríamos llegando a las 24 horas y cometiendo sólo un error de ±50 puntos en cada uno de esos casos, que tienden a compensarse entre sí.

Naturalmente se puede afinar en más todo lo que se quiera, sobre todo con programas inferiores. Para programas de ELO inferior a 1700 puntos es preferible utilizar unos de los test ya conocidos de AREA CONSOLIDADA.

Reconocimientos

Deseo expresar mi agradecimiento a mis dos grandes amigos del "circuito" D. Máximo López y D. Luis Ángel Fernández, que han estado siempre cerca del "invento", dando estímulos y calor hasta su terminación.

Ángel Vega Varela

Gijón, Verano 1989