Hajautettu shakkipelien analysointi / Distributed Chess Game Analysis

 

Participate in: shakkiliitto.net:8000

(participation requires modern web browser with Web Workers -support. Firefox or Chrome recommended)

Quick Info in english: You go to above-mentioned website. Server sends you a batch of chess positions, which are then analysed using your devices CPU(s). When analyses are done, client app sends results back to server and you get a new batch of fresh positions.

Analysis is done using 3rd party Stockfish.js -engine (Javascript port of popular Stockfish chess engine). Analysis should run pretty quickly on modern computers, taking few seconds per position max. Wwe use fixed search ply 12 to make sure testing goes smooth. Later ply count will be increased to up the quality of analysis.

Contact for questions: Twitter: @jussi_ha

 

———————————————

Games analysed

19.4.2015, 1701 games*: http://shakkiliitto.net/distchess/public/downloads/mka0.pgn

22.4.2015, 2088 games  : http://shakkiliitto.net/distchess/public/downloads/evn0.pgn

6.5.2015,  3065 games: http://shakkiliitto.net/distchess/public/downloads/var0.pgn

 

* server crashed after 1701st analysed game. About 2000 games were left unanalysed.

———————————————

(Text in finnish only)

Osallistu osoitteessa: shakkiliitto.net:8000

 

Suomen Shakkiliiton kotisivustolle on ladattu testikäyttöön ensimmäisen version shakkipelien hajautetusta analysointijärjestelmästä, joka jakaa analysoitavia shakkiasemia www-käyttäjille. Käyttäjä voi ottaa analysointiin osaa tavallisella www-selaimella. Sovellus analysoi shakkiasemia käyttäen hyväksi nettisurffaajan tietokoneen keskussuoritinta (CPU). Käytännössä nettisurffaaja siis lahjoittaa CPU-aikaansa shakkipelien analysointiin. Analysointi hoidetaan suoraan www-sivun kautta – mitään ei tarvitse asentaa, jos vain soveltuva selain on käytössä. Tällä hetkellä soveltuvat selaimet ovat Mozilla Firefoxin ja Google Chromen viimeisimmät versiot. Ei tarvitse olla ihan viimeisin, mutta noin keskimäärin sovellus pyörii sitä paremmin, mitä tuoreempi versio (optimisaatiot kehittyvät selainversiosta toiseen yhä paremmiksi).

Vanhoilla selaimilla / selainversioilla sovellus ei toimi ja jos toimii, niin erittäin hitaasti.

Loppukäyttäjien sovellus hyödyntää automaattisesti moniydin-CPU:ta, jolloin on mahdollista analysoida x määrää asemia samanaikaisesti. Tällä hetkellä hyödyntäminen on vielä rajallista; sovellus lähtee analysoimaan kahta asemaa samanaikaisesti riippumatta CPU-ydinten määrästä. Nykyinen rajoitus on siksi, että eri ihmisillä on erilaisia koneita kotonaan, ja testivaiheessa on tärkeää varmistaa toimivuus. Tavoitteena on, ettei kenenkään kotikone lähde takkuamaan; sovelluksen on tarkoitus pyöriä niin, että tavallinen nettisurffailu onnistuu samanaikaisesti toista selainikkunaa käyttäen. Moderneilla tietokoneilla analysointi pyörii niin sujuvasti, ettei mitään eroa ole huomattavissa kun surffaa samaan aikaan muualla netissä.

Testiversiota pääsee kokeilemaan suoraan liiton kotisivustolla osoitteessa: shakkiliitto.net:8000

Analysoinnin voi aloittaa klikkaamalla ”Start analysing”. Analysointi lähtee pyörimään ja käyttäjä voi katsella analysoinnin etenemistä omalta ruudultaan. Mihinkään ei tarvitse koskea. Kun analysoinnin haluaa lopettaa, on kohteliasta klikata laudan alapuolen nappula tilaan ”Auto-analysis OFF” ja odottaa, kunnes kaikki CPU-ytimet (”Threads”) ovat tyhjäkäynnillä (= näkyvät punaisina Threads-palkissa). Kun analyysi on pois päältä ja Threadsit ovat punaisina, voi selaimen sulkea. Jos selainikkunan sulkee kesken analysoinnin, serveri joutuu laittamaan käyttäjälle uskotut asemat uudelleen kiertoon ja se vie jonkin verran aikaa. Mitään peruuttamatonta ei kuitenkaan tapahdu vaikka vahingossa sulkisi selaimen kesken kaiken.

Järjestelmään on testin vuoksi ladattu shakki.netin Suomitietokannan pgn-paketti ”Suomi 2015/02”, eli reilut 500 kpl suomalaisten shakinharrastajien shakkipelejä.

Analysoinnin etenemistä voi seurata suoraan liiton kotisivuston etusivulla – oikeassa sivupalkissa näkyy moduuli ”Massa-analysoinnin tila”, joka näyttää reaaliaikaisen tilanteen.

Järjestelmä käyttää Stockfish 5 -engineä analysoinnin suorittamiseen. Tällä hetkellä jokainen asema analysoidaan vaatimattomalla 12 plyn syvyydellä; myöhemmin syvyyttä voidaan nostaa kunhan testikäyttö on ohitse.

Sovellusta ei suositella käytettäväksi mobiililaitteilla koska raskas analysointi mobiililaitteella kuluttaa paljon akkua.