Programa de Don Dailey para comparar similitudes de las engines entre si
4 participantes
Foro SiliconChess - Programas de Ajedrez y Actualidad :: GENERAL, Sobre Ajedrez :: AJEDREZ INFORMATICO (Máxima actualidad de los programas de ajedrez pc windows mac os linux).
Página 1 de 1.
Programa de Don Dailey para comparar similitudes de las engines entre si
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)
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 -----
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)
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
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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.
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
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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.
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- Mensajes : 38
Fecha de inscripción : 09/11/2011
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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- Mensajes : 437
Fecha de inscripción : 09/11/2011
Edad : 63
Localización : ESPAÑA
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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:
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.
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
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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
Re: Programa de Don Dailey para comparar similitudes de las engines entre si
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.
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.
pedrox- Mensajes : 81
Fecha de inscripción : 14/11/2011
Temas similares
» Banco de pruebas para para chess-engines.
» Problemas de Ajedrez para engines y humanos
» Droidfish nueva versión: el mejor programa para plataforma Android!
» Perspectivas y prospectiva 2011- 2012 ( II)
» Un programa autodidacta de ajedrez gana el premio Mamdani
» Problemas de Ajedrez para engines y humanos
» Droidfish nueva versión: el mejor programa para plataforma Android!
» Perspectivas y prospectiva 2011- 2012 ( II)
» Un programa autodidacta de ajedrez gana el premio Mamdani
Foro SiliconChess - Programas de Ajedrez y Actualidad :: GENERAL, Sobre Ajedrez :: AJEDREZ INFORMATICO (Máxima actualidad de los programas de ajedrez pc windows mac os linux).
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.