vrijdag 7 november 2014

Computerschaak

Met het internet is de stroom aan informatie vandaag de dag bijna onoverzichtelijk. Wie Chessbase volgt (en ik vernoem bewust niet Chessvibes, dat na de overname door Chess.com nog maar een schaduw is van de site van weleer) weet waarover ik spreek. Er zijn niet alleen de toptornooien, waar bij momenten het ene meteen het andere opvolgt, maar er is nog altijd de nationale en lokale actualiteit, twic en de vele andere blogs en sites. Om nog maar te spreken van DVD’s,  schaakmagazines en boeken – al dan niet van blijvende waarde.

Actueel loopt het zevende seizoen van TCEC, en de partijen zijn live te volgen. Voor wie TCEC nog niet kent – het kan doorgaan als het officieuze engine-WK voor tornooischaak. In de loop der jaren heeft het credibiliteit opgebouwd, de tornooien verlopen vlot en de website is voorbeeldig. Met het WK voor de deur (ik schrijf dit artikel op 6-7 november), zal het moeilijk kiezen worden. Ik heb in de vorige WK-match tussen Anand en Carlsen enkele partijen live gevolgd (gezien het tijdsverschil met Indië kon dat netjes na kantooruren) en het was echt genieten. Vooral de partij waarin Carlsen in het toreneindspel twee pionnen opgeeft om het met zijn opgerukte koning en pion het Anand toch maar moeilijk te maken, maakte live een grote indruk op mij. Met een engine op de achtergrond is het makkelijker om het partijverloop te snappen en daarin licht volgens mij de meerwaarde van het live volgen van grootmeesterpartijen.

Sommigen zullen misschien vinden dat het beoordelen van een stelling met één enkel getal het schaken tekort doet, maar voor veel “gewone” schakers – en ik reken mezelf hier ook toe – vervult de evaluatie de rol van commentator-grootmeester, die de partij onmiddellijk veel begrijpelijker maakt.
Recent – en eigenlijk nog altijd, want het tornooi is nog bezig – volg ik ook het zevende seizoen van TCEC. We zitten in stage 2 en ik betrap me er dagelijks op dat ik snel even kijk hoe het er voor staat in de partij die aan de gang is. Het tornooi is gruwelijk sterk – een Carlsen zou geen schijn van kans maken, want alle engines zijn sterker dan hem. Zo is de gemiddelde rekendiepte 25 à 30 halve zetten en gebeurt het dat je op het einde van de hoofdvariant een eindspel op het bord hebt, terwijl de opening nog niet voorbij is. Nog een voorbeeld: Chiron kondigde tegen Naum mat in 93 aan. Op zich geen record (in de Lomonosov databank zitten matsequenties van meer dan 500 zetten), maar het blijft toch indrukwekkend hoever de inbreng van schaakcomputers reikt. Maar de site biedt alle comfort om de partijen te volgen. Het leuke is dat er dit keer gespeeld wordt zonder openingen – de engines moeten zelf openingstheorie “uitvinden” en proberen in goede stellingen terecht te komen (hier wordt dus beroep gedaan op “zeer vroege” middenspelkennis al dan niet aanwezig in het programma – kennis die anders enkel hoeft aanwezig te zijn wanneer de tegenstander vroeg uit boek probeert te komen).

De vier topengines (Komodo, Stockfish, Houdini en nieuwkomer Gull) hebben hun eigen trekjes. Vooral Komodo’s analyse in zijn partij tegen Houdini maakte veel indruk op mij.
Komodo had een pion geofferd voor blijvende druk op wits stelling en je kon zien dat Houdini daar nooit ging uit raken zonder teruggave van het materiaal. Hier gaf Komodo constant een minieme plus aan voor wit (ondanks de pion die wit extra had) en het hield die evaluatie constant aan (de stelling veranderde ook niet gedurende 30 zetten). Houdini beoordeelde die stellingen wel op een iets verschillende wijze, hoewel er wezenlijk niets veranderde. Het was duidelijk dat Komodo hier een veel “menselijker” evaluatie van de stelling had en bijna het pure reken- en telwerk van minieme (en in dit geval nutteloze) voordeeltjes overstegen had. Op het einde brak Komodo dan ook door de stelling (ik laat nu in het midden of dit aan de betere evaluatie lag, of aan een beter zoekalgoritme – feit is dat Komodo de stelling juister en consequenter geëvalueerd had en wat mij betreft de partij terecht had gewonnen). Een dergelijke verbetering is een groot voordeel voor elke schaker en hierin lijkt een grote meerwaarde voor het analyseren met Komodo te liggen.

Dit was slechts één voorbeeld ten gunste van Komodo – tegen Protector strafte hij subliem een “mindere” damezet in het eindspel af (ik vraag me af of iemand als Carlsen of Caruana deze kans zou opgemerkt hebben). Op zet 54 speelt Protector Dd7 ipv het door Komodo geanticipeerde Db8., Hierop wordt zwart in een lange variant compleet uit verband gespeeld (Komodo’s evaluatie stijgt tot maximaal 0.85), maar het voordeel blijkt onvoldoende om te winnen, wegens te weinig materiaal op het bord. Meteen al een tegenvoorbeeld dus, maar niettemin eveneens een leerrijke fase en een epische partij.
Een tweede opmerkelijk feit dat ik opmerkte bij Komodo, was dat het programma naarmate de partij vordert, het sneller begint te rekenen – bij haast geen enkel ander programma is dit zo uitgesproken. In de partij tegen Houdini startte Komodo aan 17.000 knps en eindigde bij zo’n 40.000 knps – Houdini bleef zeer vlak net onder 30.000 knps gedurende de hele partij. Blijkbaar is Komodo zo geprogrammeerd dat in het eindspel minder factoren moeten berekend worden, zonder dat de speelsterkte daaronder lijdt. Tel daarbij een uitgekiend zoekalgoritme (Komodo rekent vaak dieper dan engines die wel sneller rekenen) en je hebt blijkbaar een recept voor een topprogramma. Het gebeurt vaak dat een nieuwe engine gepromoot wordt als “onmisbaar” of een grote stap vooruit, maar in de afgelopen tien jaren, kunnen we de game changers in computerland nog altijd op één hand tellen: Fruit, Rybka, Houdini en nu misschien wel Komodo. In een wereld waarin het gemakkelijk is om prima te analyseren met gratis engines, is Komodo misschien wel weer een aankoop waard.

Stockfish is minder extreem geworden in zijn evaluaties, maar was op het ogenblik van schrijven met Komodo de enige ongeslagen engine. Ik ben persoonlijk een fan van Stockfish, al was het maar omdat dit een freeware project is – een voorbeeld van de kracht van samenwerking over het internet. Het was trouwens het eerste programma dat sterker dan Houdini werd ingeschat op de CCRL-site. Cheng (nr 46 op de CCRL-lijst) werd in de onderlinge partij heel simpel van het bord getikt in amper 34 zetten – bijna grootmeester tegen amateur.

Houdini is een vaste waarde geworden, maar de rek lijkt eruit. Het programma heeft sinds versie 1.5 een matige vooruitgang geboekt, maar mist de consistente verbeterstapjes die het Komodo team nu al enkele versies kan voorleggen (wijlen Don Daily gaf tot voor zijn dood te kennen dat hij nog altijd ideeën had om het programma te verbeteren). Niettemin speelt het programma nog altijd bovenaards en wint haast altijd tegen de zwakkere programma’s. Een occasionele nederlaag tegen een bijna gelijkwaardige tegenstander (Komodo, Chiron) lijkt daarbij de kost die hiervoor betaald wordt . De winstpartijen zijn echter indrukwekkend. Wie denkt dat op een niveau van 3000+ combinaties niet meer mogelijk zijn en winst/verlies te wijten is aan slecht programmeerwerk, moet zeker de partij van Naum-Houdini bekijken, waar Houdini met 19…Txb3 een tijdelijk kwaliteitsoffer speelt, de witte dame wint voor twee torens, de witte pionnen uit elkaar slaat en ze uiteindelijk één voor één kan oprapen.
Deze drie engines verdelen onder elkaar alle finaleplaatsen van de afgelopen TCEC seizoenen – over hun suprematie kan moeilijk getwist worden.

Gull is de nieuwe ster aan het firmament – op CCRL40 (zo ongeveer de meest betrouwbare referentielijst voor enginesterkte) stond het al op plaats vier – maar hier lijkt het zijn reputatie te bevestigen. Sommige partijen lijkt het met “geluk” te winnen, maar computerschaak onderscheidt zich net van “menselijk” schaak dat geluk ontbreekt (geen slechte dag, geen schaakblindheid, geen vermoeidheid). Persoonlijk ken ik de engine nog onvoldoende, maar potentieel heeft het ding zeker en het kan misschien nog voor verrassingen zorgen in de volgende etappes (het is toegestaan om een nieuwe versie te laten spelen in latere tornooifases).

Junior is de nummer vijf – het programma heeft al een ganse kast wereldtitels in de wacht gesleept (hoewel men kan argumenteren dat die soms op WK’s behaald werden waarin niet alle topengines present waren). Het heeft ook enkele knappe partijen gespeeld, waarbij zijn evaluatie (die ik al altijd heel neutraal gevonden heb – een beetje zoals Komodo nu) nogal vaak de juistere bleek. Een opvallend voorbeeld was Junior-Chiron, waarin op lange termijn de h-lijn (en de zwakke positie van de zwarte koning) meer belang had dan de twee verbonden zwarte vrijpionnen in het centrum.
Engineschaak saai? Wel, het zal niet in detail vermeld worden in de schaakgeschiedenis, maar zoals het op TCEC gepresenteerd wordt, is het zeker genietbaar. En dat alle partijen in de analysesectie te downloaden zijn (eigenlijk overbodig, want op de site zelf zijn ze met alle informatie terug naspeelbaar), maakt de fun compleet. En hiermee zijn we weer aanbeland bij het begin: computerschaaksites genereren automatisch honderden extra partijen per dag – partijen van (zeer) hoge kwaliteit. Weer een extra informatiebron om partijmateriaal te checken…

HK5000

Geen opmerkingen:

Een reactie posten