Evaluando Leela Chess Zero

Software, versiones y novedades
alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Evaluando Leela Chess Zero

Mensaje por alvaroi » 07 May 2018 20:38

Abro nuevo hilo para informaciones concretas acerca de la evaluación de este interesante programa, pruebas, evolución, usos, etc.
usuario fics: alvaroi

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 09 May 2018 21:27

En cuanto al tema táctico, dejo un enlace encontrado en un mensaje del foro de LC0 en el que hacen un seguimiento de la mejora táctica, también comparando con Stockfish. Ahí ya hay una referencia sobre la mejoría táctica de las redes que van saliendo de LC0.

https://docs.google.com/spreadsheets/d/ ... 1458572514

Por mi parte, tratando de entender mejor el comportamiento del programa, haré un seguimiento con algunas redes en posiciones de test conocidos como Colditz y Frontera.
usuario fics: alvaroi

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 13 May 2018 23:09

Pongo una interesante partida de Mephisto Risc II contra LC0 id287. Risc juega a ritmo de G/30min. LC0 juega en su web en modo Hard, tras analizar 400 nodos. Esto viene a ser menos de 1s con una GPU o 5-10 segundos según con qué CPU y 1 núcleo. Representa el drama táctico de LC0. Cuando el rival consigue no quedar paralizado y activarse, no tarda mucho en aparecer la omisión táctica y LC0 cae fulminada. Risc profundiza durante la partida entre 5 y 7 ply.



De esta partida salen dos posiciones de test para LC0 que aún no he podido comprobar. Una es 30.Txb7 y la otra es 46.Dg8+.
Última edición por berger el 15 May 2018 08:09, editado 1 vez en total.
Razón: Mejorada presentación código PGN
usuario fics: alvaroi

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 13 May 2018 23:42

Y la revancha, con similar desenlace por táctica. En planteos tácticos, LC0 no puede. Risc ve 16....,Axg3 en ply 4, y no perdona. Veremos en un enfrentamiento con versiones cpu y ritmo de torneo 40/2 qué sucede. Otras posición de test para LC0 es ese Axg3. Y nadie puede decir que es poco probable, porque se ha metido sola en esa posición. Es una línea principal del Marshall. LC0 juega la mala Cd2 y Risc remata impecablemente.

Última edición por berger el 15 May 2018 08:10, editado 1 vez en total.
Razón: Mejorada presentación de código PGN
usuario fics: alvaroi

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 14 May 2018 00:08

Dos partidas de LC0 CPU, con la red 119, que tiene una fuerza aproximada de 2300, según la escala de los desarrolladores de LC0.
Utiliza 1 núcleo con un i7 990X. Magellan, posicionalmente pobre, no tiene opción de utlizar su fuerza táctica en ninguna de las dos partidas. En la segunda, esta red más antigua de LC0 se hace un pequeño lío, que termina por resolver a base de "la magia de evitar la triple repetición" y un error mayúsculo de Magellan. El estilo paralizante de LC0 lo vemos aquí muy claro. Los programas débiles en el juego posicional, concretamente en coordinación y actividad de piezas, son víctimas fáciles para LC0, incluso usando redes poco entrenadas como la 119.



Última edición por berger el 15 May 2018 08:10, editado 1 vez en total.
Razón: Mejorada presentación de código PGN
usuario fics: alvaroi

Avatar de Usuario
Javier Ros
Avanzado
Avanzado
Mensajes: 588
Registrado: 20 Ene 2013 15:28
Ubicación: Sevilla

Re: Evaluando Leela Chess Zero

Mensaje por Javier Ros » 15 May 2018 00:14

Tras una larga conversación telefónica con Alvaro, donde me ha contado cosas increíbles de lczero, me he animado yo también a hacer unas pruebas.
lczero versión 253 corrió sobre un núcleo de un i5 a 15 minutos toda la partida, lo que en promedio no alcanzaba los 400 nodos de la versión web hard de lczero.
Y las expectativas se cumplieron porque lczero superó posicionalmente a Milano Pro de una forma impresionante,
es increíble como es capaz de jugar tan bien a pesar del bajo nivel táctico de lczero.






Avatar de Usuario
Javier Ros
Avanzado
Avanzado
Mensajes: 588
Registrado: 20 Ene 2013 15:28
Ubicación: Sevilla

Re: Evaluando Leela Chess Zero

Mensaje por Javier Ros » 15 May 2018 08:35

alvaroi escribió:Y la revancha, con similar desenlace por táctica. En planteos tácticos, LC0 no puede. Risc ve 16....,Axg3 en ply 4, y no perdona. Veremos en un enfrentamiento con versiones cpu y ritmo de torneo 40/2 qué sucede. Otras posición de test para LC0 es ese Axg3. Y nadie puede decir que es poco probable, porque se ha metido sola en esa posición. Es una línea principal del Marshall. LC0 juega la mala Cd2 y Risc remata ..1
Parece que el mejor juego posicional de los programas de Schroeder respecto de los de Morsch es clave para hacer frente al juego de lczero.

El concepto de tramo ciego de la partida creado por Angel Vega tenía lugar tras la apertura, cuando los programas habían terminado el desarrollo y tenían las piezas en los escaques mejores según su programa. En ese momento no sabían que hacer y empezaban a mover las piezas de un lado a otro, siendo uno de los puntos débiles de los programas de ordenador. Pues bien el tramo ciego toma ahora todo el protagonismo, pues como me comentaba Alvaro el otro día, ahí es donde lczero tiene una gran superioridad y logra la ventaja decisiva con jugadas de gran maestro.

Tambien hay que decir que yo he realizado las pruebas con lczero sin libro frente al buen libro de Milano Pro.
Me parece que lczero de la pagina web juega con un pequeño libro de aperturas, esto para jugar variado y sin repeticiones, pero esto puede hacer que juegue variantes que no encajen con su estilo posicional y la lleve al desastre.
Por ejemplo, lczero sin libro con blancas siempre juega la variante del cambio de la Española, la favorita de Fischer nada menos, esto hubiera evitado el Marshall de la partida con Risc II.
Alvaro, sería interesante jugar la variante del cambio a ver que pasa.

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 15 May 2018 19:51

Estoy haciendo un torneo de tanteo entre varias redes de LC0, versión GPU, con otros programas de diferente nivel, usando éstos un único núcleo, a nivel todos de 10 segundos por jugada. Tras la primera ronda y ver que no hay apenas sorpresas, voy a retirar las redes antiguas, que claramente están por debajo del nivel medio, y algún programa para agilizar las siguientes rondas. Van a jugar el mismo planteo con ambos colores, a partir de la jugada 8, por aquello de dar las mismas oportunidades a todos.

Ronda1:

Motor______________________________________________Puntuación StKoDeKoDeFrDeHoLcRyLcLcLcLcSOCoLcLc S-B
01: Stockfish_9_x64_popcnt_____________________________15,0/17 · = 1 = 1 1 1 1 1 = 1 = 1 1 1 1 1 1 117,00
02: Komodo-11.01-64bit ________________________________14,0/17 = · = = = = 1 1 1 1 1 = 1 1 1 1 1 1 103,50
03: Deep Shredder 13 UCI x64___________________________14,0/17 0 = · = = = 1 1 1 1 1 1 1 1 1 1 1 1 99,25
04: Komodo-9.02-64bit__________________________________13,0/17 = = = · 1 = 1 0 = = 1 1 1 1 1 1 1 1 94,75
05: Deep Rybka 4 SSE42 x64_____________________________11,5/17 0 = = 0 · = = = = 1 = 1 1 1 1 1 1 1 76,00
06: Fritz 15___________________________________________11,0/17 0 = = = = · 0 = 1 1 1 = 1 = 1 1 = 1 78,50
07: Deep Shredder 12 UCI_______________________________10,0/17 0 0 0 0 = 1 · = = = 1 1 0 1 1 1 1 1 61,25
08: Houdini 4 Pro x32___________________________________9,5/17 0 0 0 1 = = = · 1 = 0 1 0 1 1 = 1 1 64,50
09: Lczero GPU 10.0 id223-2733__________________________9,0/17 0 0 0 = = 0 = 0 · 1 = = 1 1 1 = 1 1 54,75
10: Rybka 2.3.2a 64 bit_________________________________8,5/17 = 0 0 = 0 0 = = 0 · = 1 1 0 1 1 1 1 51,00
11: Lczero GPU 10.0 id290-2816__________________________7,5/17 0 0 0 0 = 0 0 1 = = · = 1 = 0 1 1 1 42,00
12: Lczero GPU 10.0 id285-2755__________________________6,5/17 = = 0 0 0 = 0 0 = 0 = · 0 = 1 = 1 1 40,50
13: Lczero GPU 10.0 id253-2873__________________________6,5/17 0 0 0 0 0 0 1 1 0 0 0 1 · = 0 1 1 1 34,25
14: Lczero GPU 10.0 id287-2783__________________________6,5/17 0 0 0 0 0 = 0 0 0 1 = = = · = 1 1 1 32,00
15: SOS 5.1 for Arena___________________________________5,5/17 0 0 0 0 0 0 0 0 0 0 1 0 1 = · 1 1 1 22,25
16: Colossus2006f_______________________________________3,0/17 0 0 0 0 0 0 0 = = 0 0 = 0 0 0 · = 1 13,50
17: Lczero GPU 10.0 id146-2500__________________________2,0/17 0 0 0 0 0 = 0 0 0 0 0 0 0 0 0 = · 1 7,00
18: Lczero GPU 10.0 id119-2300__________________________0,0/17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 · 0,00


Más o menos refleja bien los niveles en los que nos movemos, en cuanto a fuerza relativa de unos y otros. Haré unas rondas más para ver cómo se manejan y centrar los objetivos de las evaluaciones.

La red 223 no sorprende que quede comparativamente mejor, por ser la última de 10x128 y que se corrompió menos por los problemas de los errores encontrados con la regla de las 50 jugadas. ver --> https://github.com/glinscott/leela-ches ... from-ID253
Ahora LC0 debe recomponer con su entrenamiento lo retrocedido por ese error, cosa que está haciendo. La red 296 ya se acerca al techo de la 253. Sobre estas valoraciones de fuerza, se hacen con enfrentamientos entre distintas versiones de las redes, por lo que la 253 está claramente inflada. Mi interés en poner algún programa con un nivel estable y probado es precisamente para poder detectar inflación en las estimaciones de fuerza de las sucesivas redes de LC0. En cuanto a los libros de aperturas, pienso que un programa que aspira a una fuerza por encima de los mejores del momento, debe rendir bien en cualquier situación. La debilidad en táctica es temporal. Los desarrolladores están muy tranquilos con este tema y ahora lo importante es entrenar a la red lo antes posible y sumar partidas (y eliminar errores, si los hay). Cuando la red esté entrenada, ya verán si modifican el árbol de búsqueda, que ahora lo tienen optimizado para entrenar, o eso me ha parecido entender leyendo la documentación en github. Veremos los diferentes temas (táctica, estrategia) por separado, que dan mucho juego y tenemos LC0 para rato, afortunadamente.
usuario fics: alvaroi

alvaroi
Veterano
Veterano
Mensajes: 226
Registrado: 13 Ene 2013 22:52

Re: Evaluando Leela Chess Zero

Mensaje por alvaroi » 16 May 2018 23:11

Tras unas cuantas partidas más, y la evolución de la red tras solventar el error, podemos tener una selección de nivel de fuerza donde seguir las mejoras de LC0.

Motor________________________Puntuación_Ko___Ko___De___De___Lc___Lc___S-B
1: Komodo-9.02-64bit___________17,0/20 ···· ===1 =1=1 1111 1=11 1111 134,75
2: Komodo-5.1r2-64bit__________15,0/20 ===0 ···· ==1= 1111 =111 111= 115,00
3: Deep Rybka 4 SSE42 x64______12,0/20 =0=0 ==0= ···· ==== 1=11 1111 86,75
4: Deep Shredder 12 UCI_________7,0/20 0000 0000 ==== ···· 1001 11== 45,50
5: Lczero GPU 10.0 id297-2868___5,5/20 0=00 =000 0=00 0110 ···· 1010 43,00
6: Lczero GPU 10.0 id223-2733___3,5/20 0000 000= 0000 00== 0101 ···· 25,50


La red 223 ya se va hundiendo frente a las nuevas que acumulan entrenamiento sin el error. Por otro lado, en cuanto a los programas, la idea es poner una serie de ellos, cubriendo una banda amplia de elo, y hacer partidas en modo "reto", probando sucesivas redes contra todos ellos, sin hacer liga para reducir el número de partidas.
usuario fics: alvaroi

Avatar de Usuario
Javier Ros
Avanzado
Avanzado
Mensajes: 588
Registrado: 20 Ene 2013 15:28
Ubicación: Sevilla

Re: Evaluando Leela Chess Zero

Mensaje por Javier Ros » 18 May 2018 19:39

Muy interesante la prueba, es increíble comprobar como aprende conforme avanzan las versiones!!

Responder