woensdag 20 juni 2012

Tablebases

De waarde van tablebases is m.i. erg beperkt voor bordschakers. Het is volstrekt onmogelijk om de tablebases van buiten te leren dus veel spelers maken er geen of nauwelijks gebruik van. Voor een kleine groep schakers die meer het spel vanuit wetenschappelijk oogpunt benadert, zijn tablebases een handig middel om dichter bij de perfecte partij te komen of nog beter het schaken compleet op te lossen. In correspondentieschaak wordt er veelvuldig van gebruik gemaakt maar als ik partijanalyses bekijk dan is dit eerder een uitzondering. Eerlijk gezegd was ik verwonderd toen op chesspub een Britse IM mij vertelde dat wellicht 9/10 IM's geen belangstelling had voor tablebases. Ik zou verwachten dat tablebases voor ambitieuze spelers (dat zijn IM's zeker) een vast onderdeel van hun schaakuitrusting zijn maar dit blijkt niet te kloppen. 

Persoonlijk vind ik het irritant wanneer in partijanalyses geen gebruik wordt gemaakt van tablebases. In partijanalyses verwacht ik dat de analyst/ commentator zijn best doet om de partij zo objectief en correct mogelijk te ontleden en dat doe je in deze moderne tijd met hulpmiddelen waaronder de tablebases. Het argument van de Britse IM dat een eindspel analyseren zonder tablebases meer fun is, vind ik gewoon een zwak excuus om de beperkte ambities, sterker gezegd luiheid te verdoezelen. M.a.w. ik vond de analyses op chessbase betreffende de tiebrakes van het afgelopen wereldkampioenschap absoluut ondermaats en      bedroevend.

In mijn eerder artikel analyseren-met-de-computer heb ik al besproken hoe ik met tablebases omga dus daar ga ik het deze keer niet meer overhebben. De echte reden van dit artikel zijn de recentste ontwikkelingen in de tablebases. Het is eerder zeldzaam dat er ontwikkelingen in dit domein gebeuren wat ik even verder wil documenteren met een beetje geschiedenis. Rond 1986 waren Ken Thompson, John Roycroft en andere progammeurs erin geslaagd om alle 4 stukkeneindspelen in tablebases te gieten. In 1995 waren alle 5 stukkeneindspelen definitief in tablebases en in 2004 was opnieuw een nieuwe mijlpaal bereikt met de 6 stukkeneindspelen. Onlangs las ik op het Rybkaforum dat men dichtbij de oplossing was om alle 7 stukkeneindspelen te verkrijgen. Er is nog wat werk over voor de eindspelen met meerdere zware stukken maar wellicht kan men afronden eind dit jaar, begin volgend jaar. Hiermee houden we voorlopig het schema aan van ongeveer 9 jaar per extra stuk. Zelfs al houdt men dit ritme aan dan nog is de oplossing van het schaakspel duidelijk niet voor morgen. Een kleine berekening vertelt ons dat 32 stukken - 7 stukken = 25 stukken en 9 jaar * 25 stukken geeft ons nog 225 jaar !! Gelukkig want een spel waarin geen onbekende elementen meer zijn, vind ik persoonlijk onaantrekkelijk. Een spel zoals 'vier op een rij', speelde ik frequent  in mijn jeugd en zelfs op een vrij hoog niveau tot ik vernam dat het opgelost was, waarna ik er de brui aangaf.

De nieuwe tablebases kan je vandaag al downloaden maar online controleren kan nog niet zoals bij de 6 stukkeneindspelen. Dit is voor de meeste schakers een probleem want de omvang van de tablebases is gigantisch en de nodige diskspace gaat ver over wat je standaard beschikbaar hebt op een gewone PC. Gelukkig kan je dit probleem grotendeels omzeilen dankzij een nieuwe tool: finalgen. Er zijn beperkingen aan deze nieuwe tool maar de meeste praktische eindspelen kan je er wel mee oplossen. Zelf gebruikte en testte ik deze tool voor het eerst in mijn analyses van het eindspel tegen Stefan Beukema.

Op zet 41 speelde Stefan de illegale zet Kc3 wat vastgesteld werd bij de reconstructie. Ik zag tijdens de reconstructie dat 41.Tf6+ helemaal niet duidelijk was of zwart nog winstkansen heeft en dus was ik eerlijk gezegd blij dat de arbiter ons vroeg om gewoon verder te spelen met de illegale zetten, i.p.v. terug te keren naar zet 41. Pas later besefte ik dat ik onterecht bang was dat Stefan zichzelf zou kunnen corrigeren met 41.Tf6+ daar  ik nog altijd kon eisen dat hij een onmiddellijk verliezende koningszet moest spelen omdat hij met Kc3 al de koning had aangeraakt. Aanvankelijk analyseerde ik het eindspel op mijn gewone wijze door gebruik te maken van de schaakprogramma's en op het moment dat een variant uitmondde in 6 stukken, te controleren online met de 6 stukken tablebases. De eindevaluatie na enkele avonden analyseren was remise. Echter kort daarna vond ik via een post op chesspub de nieuwe tool die ik gratis mocht downloaden. I.p.v. nu te wachten tot de varianten uitmondden in 6 stukkeneindspelen, stopte ik op het moment dat er 7 stukken op het bord resteerden. De diverse kritieke posities werden 1 na 1 ingevoerd in de nieuwe tool en na ongeveer 2 uren rekenen en een 80Gigabytes genereerde tablebases had ik een definitief oordeel. Hieronder vind je de conclusies.
De tool verbeterde dus de oorspronkelijke analyses en veranderde de uiteindelijke evaluatie naar winnend voor zwart. Ook toonde de tool op diverse punten alternatieve winsten en soms zelfs snellere wat niet verwerkt werd in de bovenstaande analyses. Ik ben serieus onder de indruk van de nieuwe mogelijkheden die deze tool creëert. Het is een must voor de correspondentiespeler. Ondertussen heb ik gezien dat enkele bollebozen begonnen zijn met de eindspelstudiedatabase van Harold_van_der_Heijden te controleren met dit nieuw speeltje en blijkbaar zijn al tal van studies hierdoor op erg korte tijd weerlegd. Tja elke stap voorwaarts betekent tevens dat een bepaalde prijs betaald moet worden.

Brabo

6 opmerkingen:

  1. Tja, Brabo, waar is de tijd toen ik als kersverse schaker eens vier op een rij tegen je speelde :)
    Waar is de tijd dat ik de server van de UGent platlegde om analyses te kunnen laten lopen om ontbrekende gaten in m'n openingsboek te fixen :)
    Ik weet nog dat je toen zei dat schaken oneindig veel leuker was, en ondertussen kan ik inderdaad beter schaken dan vier op een rij.

    Ivm tablebases: teveel kan teveel zijn, teveel aanwezige tablebases kunnen de engine verzwakken omdat er teveel trage schijfaccess is ipv snelle ramaccess. Langs de andere kant, geen aanwezige tablebases maken zelfs Rybka dom. Een eenvoudig remise kp-k eindspel wordt dan als 2.67 gegeven.

    PS: Brabo, doe zo voort, deze blog is echt de moeite waard om te lezen, ik heb al ieder artikel bekeken.

    BeantwoordenVerwijderen
    Reacties
    1. Afhankelijk voor wat je Rybka (of andere engine) gebruikt, kan het handig zijn of niet om tablebases te linken. Ik gebruik Rybka enkel voor partijanalyses en dan is het m.i. efficienter om zonder tablebases te analyseren en manueel een 7 stukken-tablebase te creëren met finalgen als een analysevariant uitmondt in een 7 stukken positie. Zoals je zelf aangeeft, zullen aanwezige tablebases, vele trage schijfaccessen genereren waardoor een engine heel veel snelheid verliest. Bovendien zie ik het nut niet van bv. alle 5-stukken tablebases te linken aan een engine als je toch manueel de 7-stukken tablebases controleert. Met die werkmethode zal je 5-stukken tablebases pas tegenkomen in de zijvarianten van het algoritme en niet in de hoofdvarianten dus oninteressant. De reden hiervoor is dat een conversie van 7-stukken naar 5-stukken in de hoofdvarianten normaal vele zetten (gemakkelijk 10 of meer) duurt wat buiten de horizon ligt van een engine.

      P.s. Ik krijg heel weinig feedback over mijn blog dus blij om te horen dat sommigen toch mijn schrijfsels appreciëren want er kruipt heel wat werk in.

      Verwijderen
  2. Ik lees dit ook wel en vind het leuk.
    Te weinig tijd voor feedback.

    BeantwoordenVerwijderen
  3. Inderdaad - doe zo voort; ik blijf regelmatig checken of ik nog geen post gemist heb.
    Een tip voor snelle tbs toegang: een usb-stick van 8+ GB of HD met flashgeheugen kopen en je kan de 5/6 stukken veel sneller toegankelijk maken dan de klassieke HD. Als je een nieuwe PC hebt, zal daar ook USB-3 op zitten, dus een nieuwe stick kan wonderen doen.

    BeantwoordenVerwijderen
  4. En nog iets: al veel interessante links geleerd via je site - zo ga ik zeker finalgen uitproberen!

    BeantwoordenVerwijderen