Foro SiliconChess - Programas de Ajedrez y Actualidad
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Programa de Don Dailey para comparar similitudes de las engines entre si

4 participantes

Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por Cepteo Lun Mar 19, 2012 1:12 pm

Hola, compañeros del Foro.

Ha aparecido una interesante aplicación de Don Dailey para detectar similitudes de las engines entre sí. Se puede bajar aquí "la Similary tester version 03 - Windows": http://komodochess.com/pub/sim03_win.zip

Hice un test con varias engines (lamentablemente, Houdini 2.0c se cuelga, pero no así 1.5a). Aquí están los resultados. (No hay casi documentación, pero entiendo que los valores son % de similitud comparados).

Se ve, tal como era de esperar, los hermanos Ivanhoe y Robbolito tienen la mayor correlación mutua. Pero también se da pie a los que advierten la próximidad de Vitruvius con los dos mencionados, cercana a la correlación de los hermanos entre sí... También se ve la poca correlación de los clones con programas que sabemos independientes como Hiarcs o Shredder.

Interesante, verdad?

=================================================================================================

Key:

1) Critter 1.4 32-bit (time: 100 ms scale: 1.0)
2) Deep Rybka 4w32 (time: 100 ms scale: 1.0)
3) Deep Shredder 12 UCI (time: 100 ms scale: 1.0)
4) HIARCS 13.2 MP (time: 100 ms scale: 1.0)
5) Houdini 1.5a w32 (time: 100 ms scale: 1.0)
6) IvanhoeB47dx32 (time: 100 ms scale: 1.0)
7) RobboLito 0.10 SMP w32 (time: 100 ms scale: 1.0)
Cool Stockfish 2.2 JA (time: 100 ms scale: 1.0)
9) Vitruvius 0.84b (time: 100 ms scale: 1.0)

1 2 3 4 5 6 7 8 9
1. ----- 55.05 47.57 44.34 63.39 60.35 59.81 50.78 56.94
2. 55.05 ----- 48.93 45.97 54.18 55.81 55.64 51.17 52.83
3. 47.57 48.93 ----- 45.92 47.21 48.58 48.58 47.34 47.12
4. 44.34 45.97 45.92 ----- 43.89 44.37 44.26 45.08 42.66
5. 63.39 54.18 47.21 43.89 ----- 60.86 60.97 49.68 59.20
6. 60.35 55.81 48.58 44.37 60.86 ----- 67.27 50.61 63.80
7. 59.81 55.64 48.58 44.26 60.97 67.27 ----- 50.33 63.51
8. 50.78 51.17 47.34 45.08 49.68 50.61 50.33 ----- 49.47
9. 56.94 52.83 47.12 42.66 59.20 63.80 63.51 49.47 -----

Cepteo

Mensajes : 11
Fecha de inscripción : 17/11/2011
Localización : Argentina, Bariloche

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por pedrox Mar Mar 20, 2012 2:31 am

Creo que los que hicieron primero algo parecido fueron los que hacen la lista de clasificación CCRL. En la página hay un apartado que se llama correlación y en la que se puede ver varias clasificaciones, unas del tipo ponder hit que quizás es algo parecido a lo que hace la herramienta de Don, comprueba el número de movimientos que un motor piensa que va a hacer el contrario. En dicha página también hay otras listas basadas en la diferencia de evaluación.

Con estas listas se comprobaba que el ponder hit era mayor al comparar por ejemplo motores parecidos como Fruit y Toga, también surgieron algunas sorpresas como que Loop tenía también un alto porcentaje de ponder hit con respeto a Fruit. Y de hecho hay una queja en la ICGA sobre este motor.

Por tanto un número alto puede ser una sospecha, pero no hay ningún tipo de garantía que esto sea así. No estoy seguro si esto sirve para detectar clones, pero para detectar derivados o similitudes parece que no.

Por ejemplo, de los resultados que muestras, creo que un motor que podría salir perjudicado es Critter, tiene un porcentaje alto comparado a Ivanhoe y Robbolito. Sin embargo en el caso de Critter parece haber una explicación, Critter utiliza unas tablas de valoración de la situación de las piezas, llamadas pst, que son muy parecidas a estos 2 motores, técnicamente utilizar tablas de números iguales no significa copiar código. Simplemente con dichas tablas iguales hace que los programas de una fuerza similar tengan un porcentaje muy alto de correlación aunque realmente el resto del código del motor sea diferente y el resto de la evaluación sea diferente.

Es decir, dicha herramienta lo que permite es saber como de parecidas son las tablas pst de 2 motores. Es difícil ganar mucho ELO ajustando los valores de las tablas pst, quizás puedas conseguir 30 puntos de ELO, así que tampoco es algo fundamental del motor, puedes copiar las tablas de Ivanhoe y que tu motor juegue con 2000 puntos de ELO.

Tengo curiosidad por saber cual sería el valor en el caso de la primera versión de Houdini y Robbolito 0.085 g3, que se decía que era prácticamente un clon.

pedrox

Mensajes : 81
Fecha de inscripción : 14/11/2011

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por Karbunclo Mar Mar 20, 2012 9:37 am

Yo pienso en si el Noise que hace jugar tan impersonal a un motor sería suficiente como para disfrazar un clon.

Los primeros test que hice con Scorpio fueron con 10 centipeones de Noise. Esto es, a cada posición 5 puntos mas o menos. En ese momento la versión modificada gano dos partidas y entablo la tercera y ya en ese momento no elegía 2 veces la misma posición, por lo que quizás el elo era el mismo y ese ruido tan bajo puede ser suficiente como para disfrazar a cualquier motor clonado.

Obviamente hay muchas maneras de detectar un motor clonado, pero... quizás haya mas motores clonados de los que pensamos sin saberlo.
Karbunclo
Karbunclo

Mensajes : 38
Fecha de inscripción : 09/11/2011

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por FireBirdPetLosifvich Mar Mar 20, 2012 2:14 pm

Muy bueno ese estudio técnico de Cepteo. Aunque Don Dailey en lo debería trabajar más es en sacar la versión DeepKomodo 4..........que la debe estar perfeccionando mucho, o quizas se haya tomado unas vacaciones.
FireBirdPetLosifvich
FireBirdPetLosifvich

Mensajes : 437
Fecha de inscripción : 09/11/2011
Edad : 63
Localización : ESPAÑA

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por pedrox Vie Mar 23, 2012 9:46 am

En la página de Rebel hay un estudio muy completo realizado con esta herramienta, el estudio incluye unos 100 motores.

http://www.top-5000.nl/clone.htm

Los motores que tienen un mayor porcentaje de realizar los mismos movimientos son:

Código:

Engine 1   Engine 2    % Matched Moves  Standard Deviations from Mean
Fruit 2.2.1   Loop 2007             84.73                    13.18
Fruit 2.2.1   Loop 10.32f             84.13                    12.99
Strelka 1.8   Rybka 1.0 Beta     73.11                      9.49
Fruit 2.1   TogaII 1.0             72.43                      9.24
Fruit 2.1   Loop 2007             70.81                      8.97
RobboLito 0.085d1 Houdini 1.00 70.37                      8.79
Crafty 18.15 Thinker 4.7a     68.78                      8.30
Rybka 2.1o   Naum 3.1             68.66                      8.12
Onno 1.04   Loop 2007             68.56                      8.20
Strelka 2.0 B Rybka 1.0 Beta    68.52                      7.88
Houdini 1.5   Strelka 5.1             67.43                      7.72
Fruit 2.1   Onno 1.04            66.75                        7.55
Rybka 2.1o   Strelka 2.0 B     65.96                        7.01
Fruit 2.0   Alaric 707             64.57                        6.83
Fruit 2.1   Philou 3.14.1     64.31                        6.63
Stockfish 1.51   Philou 3.51     63.97                        6.53
Diablo 0.51   Alfil 7.6             63.51                        6.41
Strelka 2.0 B Thinker 5.4d Inert 63.41                        6.24
Strelka 2.0 B   Naum 4.2     62.99                        6.10
Critter 1.4   Houdini 1.5             61.91                        5.87
Strelka 2.0 B Naum 3.1             61.51                        5.60
Crafty 18.15 Aristarch 4.4.131  61.36                        5.67
Aristarch 4.4.131   List 5.12     60.12                        5.22
RobboLito 0.085d1 Rybka 3      59.81                        5.08
Fruit 2.0   Rotor 0.5              59.64                        5.10
TogaII 1.2.1 Colossus 2008b     59.53                        5.06
TogaII 1.2.1 Naraku 1.31     59.48                        5.04
Glaurung 1.2.1 Alfil 8.1.1 Optimized   59.47                  5.05
Rybka 3   Houdini 1.00     59.37                        4.91

La herramienta supongo que ayudará a encontrar clones exactos, cuando el resultado sea un 100% de movimientos iguales. Nos ahorra comprobar manualmente que motor ha utilizado el clon, el proceso se puede hacer automáticamente. También algo parecido en el caso de ser un derivado.

El mayor porcentaje de movimientos iguales es para Fruit 2.2.1 y Loop 2007 con un 85%, con la herramienta sabemos que tenemos un posible motor que ha hecho algo ilegal, Loop y sabemos que tenemos que comparar dicho motor con Fruit. Pero el porcentaje por muy alto que sea no da ninguna garantía de que Loop sea un derivado o haya hecho algo malo, simplemente podría ser una casualidad, motores de la misma fuerza podrían elegir de una forma similar. Este caso es muy similar al caso Fruit - Rybka, sería necesario una investigación.

Lo malo de esta herramienta es que si tu motor aparece en dicha lista por una casualidad, automáticamente habrá personas que consideren que uno de los 2 motores (el más nuevo) ha hecho algo ilegal.

En la lista completa vi que se había estudiado DanaSah, tuve curiosidad por saber a quien se parecía en su juego, el resultado fue que el mayor porcentaje de movimientos era con ProDeo, una explicación que he encontrado es que los 2 motores utilizan el mismo libro de aperturas, si los han hecho jugar con estos libros entonces lo hicieron mal y el resultado no es válido, ambos motores podrían haber jugado hasta ply 60 del libro.

pedrox

Mensajes : 81
Fecha de inscripción : 14/11/2011

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por Cepteo Vie Mar 23, 2012 11:27 am

una explicación que he encontrado es que los 2 motores utilizan el mismo libro de aperturas, si los han hecho jugar con estos libros entonces lo hicieron mal y el resultado no es válido, ambos motores podrían haber jugado hasta ply 60 del libro.

Hola, Pedrox.

Según la página de Rebel que tu mismo citas, el test de Don "presents engines with 8238 positions and records the best move
determined for each position. The commands encoded into the program are
for the UCI protocol."

Así pues, por lo menos en lo que respecta a este test concreto, no existe ningún "efecto libro".

Cepteo

Mensajes : 11
Fecha de inscripción : 17/11/2011
Localización : Argentina, Bariloche

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por pedrox Vie Mar 23, 2012 11:50 am

Cepteo escribió:
una explicación que he encontrado es que los 2 motores utilizan el mismo libro de aperturas, si los han hecho jugar con estos libros entonces lo hicieron mal y el resultado no es válido, ambos motores podrían haber jugado hasta ply 60 del libro.

Hola, Pedrox.

Según la página de Rebel que tu mismo citas, el test de Don "presents engines with 8238 positions and records the best move
determined for each position. The commands encoded into the program are
for the UCI protocol."

Así pues, por lo menos en lo que respecta a este test concreto, no existe ningún "efecto libro".

Me quedó la duda, vi todo de forma rápida. Lo normal es que no utilizaran libro.

Pero entonces me queda la duda porque el motor más parecido a DanaSah es ProDeo, ummmm! tendré que pensar que Ed Shröeder está cogiendo cosas del código fuente de DanaSah o que al menos está siguiendo el curso de programación de la página.

Laughing

Ahora más en serio, la página de Rebel es una de las mejores páginas de programación en inglés, al retirarse de la competición con Rebel decidió enseñar muchos trucos de programación que utiliza en su programa, así que su página es de lectura obligada para todos los creadores de motores. Me he leído unas cuantas veces dicha página, pero eso no creo que tampoco explique que mi motor se parezca a Rebel, cualquier otro programador podría sacar más provecho de la información que yo. Por otra parte como muchos usuarios de ProDeo dicen que se trata de uno de los motores que más humano juega, supongo que la comparación no será del todo mala. Very Happy

pedrox

Mensajes : 81
Fecha de inscripción : 14/11/2011

Volver arriba Ir abajo

Programa de Don Dailey para comparar similitudes de las engines entre si Empty Re: Programa de Don Dailey para comparar similitudes de las engines entre si

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.