DanaSah con regulación de Elo

Software, versiones y novedades
pedrox
Veterano
Veterano
Mensajes: 122
Registrado: 20 Ene 2013 20:03

Re: DanaSah con regulación de Elo

Mensaje por pedrox » 15 Ago 2013 08:28

Gracias Ricardo por todos los juegos.

Por los resultados parece que con Elo 2000 y el diff_computer_engine puesto en 260 (o 264 que solo son 4 puntos de diferencia) DanaSah está jugando unos 50-60 puntos más fuerte de lo que debería jugar, si queremos que juegue con 2000 como tu decías si podríamos aumentar ese valor de diff un poco, en teoría podríamos aumentarlo en 50 ó 60 puntos más, pero en algún otro test que hice también obtuve buenos resultados con 290-295, sería cuestión de jugar entre esos valores.

Pero estoy contento con los resultados, porque jugando unas pocas partidas contra las máquinas dedicadas si que parece que puede regular para tener fuerte luchas igualadas, me sorprende los resultados 3-3.

He modificado ligeramente los archivos para que te permita cambiar si lo deseas ese valor de diff, he puesto que se pueda cambiar entre 0 y 500. La descarga está en el mismo sitio que antes y la carpeta y motor se llaman igual pero ahora saldrá el nombre interno de DanaSah_Z 0.3b https://sites.google.com/site/danasah/danaz-UCI.zip

De todos modos estoy trabajando en la versión 0.4. He comprobado contra otros motores Winboard o UCI como funciona la regulación, antes la había probado pero ahora lo he hecho con muchos más juegos, la regulación más o menos estaba funcionando 50 puntos arriba o abajo entre 1400 y 2500 puntos que he probado ahora, salvo precisamente en el rango de los 2000 puntos donde estaba mal calibrada y jugaba unos 150 puntos menos, así que intentaré solucionar esos desajustes y puede que cambie algún número en la próxima versión, pero gracias a todos los juegos jugados contra otros motores y todas las partidas que has jugado contra máquinas dedicadas creo que tengo más o menos controlado como debería ser el ajuste. Los cambios no me llevarán mucho tiempo, unos pocos minutos, pero antes de publicar la versión 0.4 seguiré probando si está bien la calibración contra motores. Cuando tenga la versión lista lo anuncio.

Saludos.

Avatar de Usuario
ricard60
Avanzado
Avanzado
Mensajes: 545
Registrado: 21 Ene 2013 01:03
Ubicación: Puerto Ordaz

Re: DanaSah con regulación de Elo

Mensaje por ricard60 » 17 Ago 2013 21:27

Hola Pedro,

Ya baje la versión de DanaSah para aumentar la deferencia a 290. Como la maquina que tengo que esta mas cercana al elo 2000 ( Polgar elo activo 1997) la tengo prestada en un torneo de clubes. Usare la mephisto expert travel chess; 2019 en el elo activo de schachcomputer.info

Avatar de Usuario
ricard60
Avanzado
Avanzado
Mensajes: 545
Registrado: 21 Ene 2013 01:03
Ubicación: Puerto Ordaz

Re: DanaSah con regulación de Elo

Mensaje por ricard60 » 23 Ago 2013 02:52

He terminado los 6 juegos entre DanaSah y la Expert travel chess. Ha quedado 4 a 2 para DanaSah con lo cual habria que ajustar un poco mas de los 290 con los que ha jugado DanaSah. Aca pongo la configuracion

limitstrength true
elo 2000
elo_type computer
diff_computer_engine 290
diff_human_computer 70
easylevel 0
ownbook true
tourbook ./book/tourbook.bin
mainbook ./book/super.bin
hash 128
egbb_path ./egbb/
egbb_men 4
egbb_cache_size 4
egbb_load_type 1
noise 0
castling KQkq




El nuevo ajuste y las proximas partidas las jugare con la polgar. Ajustare el parametro a 310. No sera por ahora ya que para la semana que viene cruzare el atlantico. Lamentablemente no podre pasar por Valencia visitando a Luis. No consegui conexion. Voy al taller de Mysticum. Luego pegare algunas fotos en el apratado de taller.

Saludos
Ricardo

pedrox
Veterano
Veterano
Mensajes: 122
Registrado: 20 Ene 2013 20:03

Re: DanaSah con regulación de Elo

Mensaje por pedrox » 26 Ago 2013 11:40

Gracias por los juegos Ricardo. Espero que disfrutes de tu viaje a Europa. Mientras tanto a ver si trabajo algo en danasah-z.

Con la versión actual, jugando con 2000 puntos de Elo parece que para jugar como una máquina dedicada el valor de diff tiene que estar alrededor de unos 300, digo 300 como algo general, podría ser un poco arriba o abajo. Y con esto puede pasar una cosa tal como el motor está configurado actualmente. El motor tiene programado (esto cambiará en la siguiente versión) que si diff es 300 o menos que juegue con bitbases y si es mayor lo hará sin ellas. Por ejemplo diff 299 juega con bitbases y en 301 sin ellas. Realmente la fuerza del motor solo son 2 puntos de diferencia, no se debería notar, pero podría ocurrir que jugar con bitbases o sin ellas tuviera mayor efecto que esos 2 puntos.

Desde hace mucho tiempo en los foros se ha cuestionado si el uso de Tablebases o Bitbases ayudan realmente a los motores ya que su uso hace generalmente al motor más lento en su búsqueda pero a veces también gana finales que sin ellas no ganaría. Hay personas que consideran que el uso de Tablebases dan 0 puntos de elo y yo no estoy muy seguro de ello. Hoy en día tenemos listas de motores con millones de juegos, pero no estoy seguro que nadie haya realizado un estudio realmente bueno si realmente estas bases de datos ayudan o no. Yo siempre he tenido la impresión de que las bitbases quizás en danasah podrían ayudar con 15 puntos de elo, bueno en esta versión con regulación el motor sólo incorpora 4 piezas para que la descarga no sea muy grande. Sería interesante hacer un test, desgraciadamente son necesarias cientos de partidas, con unas 250 que tiene cada motor en la lista de motores hispanos el error estadístico todavía es tan grande que no es suficiente para estudiar esto, posiblemente se necesiten más de 2000 partidas.

Avatar de Usuario
ricard60
Avanzado
Avanzado
Mensajes: 545
Registrado: 21 Ene 2013 01:03
Ubicación: Puerto Ordaz

Re: DanaSah con regulación de Elo

Mensaje por ricard60 » 26 Ago 2013 23:17

Hola Pedro,

La consulta o no bitbases o tablebases tambien dependera de que tanto tiempo le queda al motor para jugar ese final. Si el motor tiene mucho conocimiento de finales sencillos (3 o 4 piezas) tal vez no haga falta la consulta a bitbases o tablebases. Se que hay maquinas dedicadas que juegan el final de rey contra rey alfil y caballo muy bien y creo invierten muy poco tiempo en ganar ese final y son maquinas de bajo perfil como la designer display 2100 y la segunda campeona del mundo la Mark V. Estas maquinas por supuesto no tenian estas tablas de finales y tampoco hashtables. Claro ya a finales de 5 piezas no cabe duda que habria que consultar bitbases o tablebases y pienso es algo importante en la parte integral del programa de cualquier maquina.
Hoy comienzo el primer pequeño salto de 700 km para acercarme a las costas del oceano atlantico. Luego un salto gigante de 8000 km.

Avatar de Usuario
juank
Avanzado
Avanzado
Mensajes: 643
Registrado: 13 Ene 2013 00:01

Re: DanaSah con regulación de Elo

Mensaje por juank » 28 Ago 2013 09:29

Hola Pedro y Ricard60

Buen trabajo, que tengas buena experiencia en Europa y porqué no?, cuentanos tambien el periplo de la Polgar en ese "por equipos"...o la llevan como analista ?

Gracias.

Avatar de Usuario
ricard60
Avanzado
Avanzado
Mensajes: 545
Registrado: 21 Ene 2013 01:03
Ubicación: Puerto Ordaz

Re: DanaSah con regulación de Elo

Mensaje por ricard60 » 28 Ago 2013 14:29

Hola JunK,

Son jugadores que tienen elo entre 1900 y 2100 y como la polgar esta en medio y hacia arriba (1997+ 60 o 70) para el elo humano la usan para analisis y practica. Yo he estado tratando de convencer algunos jugadores con elo Fide para que se enfrenten en un duelo a 6 partidas a una maquina pero aun no he podido llegar a un acuerdo. Me imagino que en algun momento se dara.
Bueno ya en las costas del oceano atlantico y a pocas horas de dar el salto de 8.000 Km

Saludos Juan.

pedrox
Veterano
Veterano
Mensajes: 122
Registrado: 20 Ene 2013 20:03

DanaSahZ 0.4

Mensaje por pedrox » 27 Sep 2013 22:37

En la página Web de DanaSah se puede descargar la versión 0.4 de DanaSahZ.

https://sites.google.com/site/danasah/s ... -danasah-z

Teneís toda la información sobre el motor y los parámetros en la misma página.

Antes de nada tengo que comentar que me he dado cuenta lo realmente complicado que es hacer la regulación de un motor, no tanto por la programación del mismo ya que con solo el número de nodos por segundo tenemos ya una buena herramienta para controlar el nivel de Elo, sino más bien por la diferencia de Elo que puede haber de una lista a otra de motores. Y es que para realizar el cálculo actualmente contamos con 3 herramientas diferentes que calculan diferentes valores de Elo, la herramienta más antigua es Elo_stat que es la que mayor semejanza tiene con el calculo que hace la FIDE, la organización SSDF y actualmente la CEGT utilizan este sistema, sin embargo la organización CCRL y la lista hispana utilizan BayesElo, con BayesElo (y ordo) la diferencia entre los mejores motores y los peores es más amplia que con Elo_stat. Esto podría hacer que un mismo motor pudiera tener quizás hasta 400 puntos de desfase entre una lista y otra incluso aunque otros motores tuvieran un Elo parecido. Además no ayuda el hecho de que al hacer la lista uno puede determinar un valor medio para el total de la lista y otra persona otro diferente, o una persona puede dar un valor relativo a un motor para calcular el resto de valores y otra persona puede dar un valor diferente a ese motor de partida.

Así que en el caso de DanaSahZ no solo tengo que tener en cuenta la diferencia que puede haber enter la lista Activa de máquinas dedicadas y las lista hispana de motores, por ejemplo la máquina Mephisto Roma32 tiene un elo activo de 2076 puntos pero solo 1610 en la lista hispana, son 466 puntos. Además de esa diferencia hay que tener en cuenta que la lista hispana los calculos están hechos con BayesElo y en la lista Activa con Elo_stat. Ese valor de 466 puntos va siendo más pequeño a medida que los motores son más débiles y quizás en torno a los 700 puntos esa diferencia entre una lista y otra desaparece.

Los cambios realizados en esta versión:

- Mejorada la regulación Elo cuando el motor se enfrenta a otro motor, anteriormente la regulación estaba bastante bien pero la fuerza era unos 166 puntos inferior en torno a los 2000 puntos.
- Mejorada la regulación Elo cuando el motor se enfrenta a una máquina dedicada, sobretodo contra máquinas muy débiles. Ahora la diferencia son 466 puntos entre las 2 lista (este valor era el anterior que más o menos habíamos calculado entre Ricardo y yo más esos 166 puntos que jugaba más débil).
- Por tanto la regulación de Elo contra humanos también debería ser mejor.
- Ahora al cambiar los parámetros del motor en modo UCI no es necesario reiniciar el motor al menos en la GUI de Fritz y Shredder, en Arena si que es necesario y no se el motivo.
-Añadido 5 estilos de juegos, desde muy pasivo hasta muy agresivo, aunque de momento creo que no se nota mucha diferencia.

He testeado un poco el motor, pero todavía faltaría testearlo mucho más.

Cuando el Elo seleccionado es bajo en el modo computer (máquina dedicada), quizás por debajo de los 1700 puntos, es posible que el motor necesite más tiempo para jugar decentemente, es posible que 15 segundos por movimiento no sea suficiente y que el juego sea mejor con 30 segundos por movimiento. Esto es debido a que en DanaSahZ utilizo no solo los nodos por segundos para reducir la fuerza, sino también un factor aleatorio que afecta más a las profundidades bajas. Así que recomiendo el tiempo de control que utiliza la lista Activa más que blitz.

Para la siguiente versión añadiré la posibilidad de crear personalidades basadas no solo en el Elo sino también en el estilo de juego por variar parámetros de la evaluación, por ejemplo la posibilidad de hacer cambios en la movilidad, ataque al rey, seguridad del rey, estructura de peones, etc. Pero esto llevará su tiempo.

japena
novato
novato
Mensajes: 3
Registrado: 03 Oct 2013 14:12

Re: DanaSah con regulación de Elo

Mensaje por japena » 03 Oct 2013 16:44

Buen trabajo Pedro, lo estoy probando y seguro que encuentro un rival de mi nivel.

Responder