Páginas

miércoles, 13 de junio de 2012

Módulos en la nube

"Optimice sus análisis con módulos en la nube de Chessbase".

Con este sugerente título nos anuncia Chessbase la última versión de uno de sus buques insignia: Deep Fritz 13. La filosofía que subyace detrás de esta idea no es otra que poder utilizar los ordenadores que otros usuarios hayan puesto a disposición de la nube de Chessbase para analizar partidas y posiciones propias.

Aparentemente, parece una buena idea poner a disposición de otros usuarios los recursos informáticos infrautilizados, mediante un modelo de pago concreto. Desde hace muchos años se ha contemplado la posibilidad de análisis informático distribuido y descentralizado aplicado a problemas con alto índice de consumo de recursos como el ajedrez y, sin duda, esta podría ser una de las primeras piedras.




Sin embargo, son muchas las dudas que asaltan este modelo propuesto por Chessbase, principalmente de tipo legal.

¿Es lícito que un usuario alquile Houdini, Rybka o cualquier otro módulo funcionando en su ordenador, cuando solamente fue licenciado a autorizar dicho software, no para dstribuirlo mediante su venta o alquiler?

¿Cuál es la responsabilidad de Chessbase sobre el hecho anterior por el mero hecho de poner a disposición de los usuarios la tecnlogía necesaria?

¿Está garantizada la privacidad de los análisis?

Hipotéticamente hablando, ¿se puede llegar a ganar dinero con este modelo de negocio, cubriendo costes como el consumo eléctrico, manteimiento del hardware, etc.?

¿Se puede acceder mediante este modelo al todopoderoso y deseado Rybka Cluster?

Poco a poco, iremos desgranando las respuestas a estas preguntas...

Queda abierto el debate.


lunes, 11 de junio de 2012

Estado del arte en software de ajedrez, Parte II - Bases de datos

Como su propio nombre indica se trata de una base dedatos de partidas de ajedrez, donde lo principal es el número de partidas que contiene (tamaño de la base de datos) y su calidad. La calidad de la base de datos se puede medir de muchas formas, pero existen una serie de parámetros críticos: origen de las partidas, por un lado, y partidas no duplicadas, por otro. Las bases de datos se van generando tras un permanente proceso de búsqueda en internet en los principales sitios que recopilan partidas humanas y partidas entre módulos informáticos. Adicionalmente a esto, existe también la posibilidad de comprar algunas de las bases de datos que se comercializan en el marcado, como Chessbase, Hugebase, Opening Master, etc.

Lo más importante es la frencuencia y modo de actualización del contenido de la base de datos, así como la disponibilidad de esta información para sus usuarios, es decir, el modo de acceso a la base de datos. Dado que la capactidad de los discos duros modernos ya no es un problema, el tamaño de la base de datos ha dejado también de serlo. El futuro está en las bases de datos en la nube (cloud) y en poder transferir la información a cuantos dispositivos móviles del usuario sea posible, por lo tanto el problema ya no es de capacidad de almacenamiento, sino de capacidad y velocidad de transferencia de la información así como del tamaño del archivo a transferir con la información solicitada. Cuanto más pequeño, mejor. Y ese es el principal problema. Cualquiera de las bases de datos antes mencionadas tienen más de 8 millones de partidas actualmente y su transmisión online es prácticamente imposible, sea cual sea el formato. Por lo tanto, las soluciones de futuro parece que pasan por bases de datos en servidores en la nube, mejorando la tecnología para transferir la información necesaria a los dispositivos que solicitan esta información. De nuevo, aparece el problema de los bits comentados en el post anterior. Si buscas una posición y aparecen 15000 partidas en la base de datos con dicha posició, ¿cómo transfieres todo esto al dispositivo cliente?

Hasta el momento, las bases de datos de ajedrez se han considerado prácticamente programas de ordenador en sí mismos (excepto para las actualizaciones de partidas), con todas sus debilidades; por supuesto, el hardware influye decisivamente en el rendimiento de cualquier proceso de la base de datos realizado por estos programas, por ejemplo, la búsqueda de una partida o posición, ordenar conjuntos de registros basándose en criterios concretos, eliminar partidas duplicadas, etc. Para que un sistema de este tipo pudiera funcionar online con cierta eficacia y rendimiento, se necesitaría un superordenador terriblemente caro como tecnlogía en el servidor. Esta es precisamente una de las mayores debilidades en la situación actual: los sistemas gestores de bases de datos existentes son muchísimo más potentes que las bases de datos de partidas en sí mismas que, de por sí, no pueden funcionar eficientemente en entornos cliente - servidor. Sin embargo, no se están utilizando ninguna de estas tecnlogías para almacenar partidas de una forma eficiente.

domingo, 3 de junio de 2012

Estado del arte en el software de ajedrez - parte I, La partida de ajedrez

Como punto de partida para analizar dónde nos encontramos en la actualidad en lo que a software de ajedrez se refiere, definiremos en primer lugar algunos conceptos básicos que iré desglosando en los próximos posts.

Tenemos:

a) partida de ajedrez
b) base de datos de partidas, por ejemplo: Chessbase, Opening Master, Hugebase
c) programa de base de datos, por ejemplo: Chessbase, ChessAssistant, SCID
d) módulos de ajedrez, o motor; por ejemplo: Houdini, Rybka, Stockfish
e) interfaz de usuario o, lo que generalizadamente se ha entendido como programa de ajedrez. Esto es lo más extendido entre la mayoría de los aficionados, pues son entornos gráficos donde se permite jugar contra el ordenador, analizar posiciones y partidas, examinar bases de datos y, en muchas ocasiones permiten acceso a las plataformas de juego online; por ejemplo: Fritz, Aquarium, Chess King, etc.

La partida de ajedrez
Consiste en un conjunto de información que contiene principalmente dos tipos de datos: los datos relativos a los movimientos en sí mismos y los datos relativos a la identificación de la partida: quién la ha jugado, cuándo, el resultado, el lugar y otros parámetros útiles para clasificarla y localizarla posteriormente. Las partidas comenzaron a divulgarse en formato PGN, posteriormente aparecieron otros como .cbf, .cdp, .cbh. Estos últimos formatos son mucho más eficientes que el estándar PGN, pero son formatos propietarios, es decir el estándar no es abierto y para trabajar sobre ellos se necesitará normalmente acceder desde programas de la misma marca propietaria. No es posible, en principio, crear un desarrollo propio con acceso a tales formatos.
Todos estos formatos fueron inventados hace cierto tiempo, y la mayoría de sus intrucciones no fueron optimizadas al máximo para el manejo de grandes volúmenes de información; concretamente, no llegaron al nivel de bits sino al nivel byte, desperdiciando por lo tanto espacio de almacenamiento y velocidad del tratamiento de la información.
Pongamos un ejemplo: el resultado de una partida podría almacenarse como victoria, derrota, tablas, o indefinido. Por lo tanto, estos cuatro estados podrían representarse como la combinación de dos de los ocho bits de un byte:
- victoria: 1 0 - 000000
- derrota: 0 1 - 000000
- tablas: 1 1 - 000000
- indefinido: 0 0 - 000000
Esto quiere decir que los 6 bits restantes están libres para almacenar información. Llegamos a la conclusión que si cogemos el formato más eficiente en la actualidad (.cdp), aún podríamos ahorrar hasta un 50% en términos de eficacia en el almacenamiento y rendimiento en el tratamiento de esta información.

jueves, 31 de mayo de 2012

7º Campeonato del Mundo de Computadoras de Ajedrez

... en ese mismo año, 1992, se celebró en Madrid la séptima edición del Campeonato del Mundo de Computadoras de Ajedrez (WCCC). Se permitía el acceso a ordenadores dedicados, programas informáticos, y las populares máquinas de ajedrez que tanta fama tenían en aquellos tiempos. En esta edición participaron algunas de las primeras versiones de conocidos programas informáticos de la actualidad, como Fritz o Hiarcs, entre otros.

Se proclamó campeón Chessmachine tras ceder únicamente unas tablas en 5 partidas disputadas, contra su rival RISC 2500. Chessmachine funcionaba en un ordenador IBM PC y se comecializó para el gran público hasta el año 1995.

Esta fue la clasificación final:

RankProgramCountryScoreGames


1Chessmachineflag NLD4.55


2Zugzwangflag DEU4.05


3Cumulus 2flag FRA4.05


4Kasparov Sparcflag USA3.55


5Fritz 2flag NLD3.55


6RISC 2500flag NLD3.05


7Hitech B*flag USA3.05


8Chess Geniusflag GBR3.05


9Woodpusherflag GBR3.05


10MChess Proflag USA2.55


11Hiarcsflag GBR2.55


12Lachexflag USA2.55


13Pandixflag HUN2.55


14Kallistoflag NLD2.05


15Ulyssesflag DEU2.05


16Prochessflag NLD2.05


17Centaurflag RUS2.05


18Nimzo Guernicaflag AUT1.55


19Échecflag FRA1.55


20Mirageflag RUS1.05


21Nightmare (D)flag DEU1.05


22Delicate Bruteflag GBR0.55




Resulta instructivo analizar algunas de las partidas disputadas y compararlas con análisis modernos, tal y como publicaré próximamente.

Como ejemplo, aquí presento una de las partidas que ganó Chessmachine con negras, contra el cuarto clasificado, jugando una línea de la tablífera Defensa Petroff.

Kasparov Sparc - Chessmachine

Result: 0-1
Site: Madrid, Spain
Date: 1992.11.27
[...] 1.e4 e5 2.¤f3 ¤f6 3.d4 ¤xe4 4.¥d3 d5 5.¤xe5 ¥d6 6.O-O O-O 7.c4 ¥xe5 8.dxe5 ¤c6 9.cxd5 £xd5 10.£c2 ¤b4 11.¥xe4 ¤xc2 12.¥xd5 ¥f5 13.g4 ¥xg4 14.¥f4 ¤xa1 15.¦c1 c6 16.¥e4 f6 17.¤c3 fxe5 18.¥xe5 ¦ad8 19.¦xa1 ¦d2 20.b3 ¦fxf2 21.¥g3 ¦f7 22.¦f1 g6 23.¦xf7 ¢xf7 24.¥f4 ¦d7 25.¢f2 ¥f5 26.¥xf5 gxf5 27.¤a4 b6 28.¤b2 c5 29.¢f3 ¢f6 30.¤c4 ¢e6 31.¤a3 a6 32.¤c4 ¦d3+ 33.¢e2 ¦d4 34.¢e3 b5 35.¤b2 ¢d5 36.¤d3 a5 37.¥g3 ¦e4+ 38.¢d2 ¦e8 39.¥c7 a4 40.¢c3 b4+ 41.¢d2 axb3 42.axb3 c4 43.¤xb4+ ¢c5 44.¢c3 ¦e3+ 45.¢d2 ¦f3 46.¤c2 cxb3 47.¤a3 ¢d5 48.¥b6 f4 49.¥a7 ¢e4 50.¢c1 ¦h3 51.¤b1 ¢d3 52.¢b2 ¦xh2+ 53.¢xb3 f3 54.¤a3 f2 55.¥xf2 ¦xf2
Powered by Aquarium


















sábado, 19 de mayo de 2012

¡Bienvenidos!

Bienvenidos a mi nueva blogaventura.

Todos mis amigos conocen mi pasión por el ajedrez informático, también conocido en muchos otros foros especializados como "ajedrez avanzado". No cabe duda que el enorme desarrollo que han tenido durante las últimas décadas en general y, muy en particular en el siglo XXI, los procesarores de los ordenadores de uso doméstico, los discos duros, las generalización del uso de bases de datos de partidas de ajedrez y, muy especialmente, los módulos o motores de análisis, han revolucionado definitivamente la forma de analizar el ajedrez, tanto para los aficionados y estudiantes del ajedrez, como para los Grandes Maestros del más alto nivel en la competición internacional.

Pretendo desde este blog divulgar mis conocimientos y experiencia en este ámbito. Todos aquellos que hayáis seguido mi trayectoria en el mundo del ajedrez informático, reconoceréis algunas de mis teorías y explicaciones. Encontraréis también análisis detallados a los que he hecho, hago y haré referencia en algunos de los foros en los que colaboro activamente.

Poco a poco me iré presentado e iréis conociendo algo más de mi. Por supuesto, os animo a todos a que realicéis todas las sugerencias que creais oportunas y a que participéis con vuestros comentarios.

Antes de despedirme, os dejo un regalito;  se trata de la primera parte de una mítica actuación de la lengendaria banda Dire Straits en su gira española en el año 1992. 



¡Gracias por vuestro tiempo!