dinsdag 26 juni 2012

Houdini 2.0

Enige tijd geleden was ik verbaasd over de snelheid en precisie waarmee een correspondentiespeler 'Vass' op chesspub  analyses kon publiceren. Normaal mag je stellen dat als iemand op een forumpost binnen een uur met analyses antwoordt dat ze van een laag niveau zullen zijn maar deze keer kon ik er zelfs na enkele nachtelijke analyses nauwelijks een serieuze verbetering op vinden. Het was nog erger want ik moest Rybka en Fritz zelf eerst de juiste voortzetting tonen vooraleer ze de kritieke varianten wilden analyseren. Hieruit leidde ik af dat 'Vass' met veel snellere hardware werkt en/of met een sterker schaakprogramma.  Vorig jaar had ik pas een nieuwe desktop gekocht dus kon ik moeilijk geloven dat de hardware een doorslaggevende rol kon spelen. Mijn programma's Fritz 11 en Rbyka 3 waren daarentegen wel al enige tijd verouderd dus vond ik het meer opportuun om de software up te graden. 

http://www.cruxis.com/chess/houdini.htm
De keuze voor Houdini 2.0 was snel gemaakt. Vandaag staat het programma genoteerd op de meeste engineranglijsten als nummer 1 en bovendien is de auteur een Belg: Robert Houdart. Het mogelijk bezwaar dat Houdini 2.0 misschien niet in orde is met alle copyrightreglementen, vind ik persoonlijk geen serieuze reden meer om het programma te weren uit mijn arsenaal. Ik gebruik het woord 'meer' want vroeger vond ik dit wel degelijk een goede reden om programma's te bannen maar sinds de welbekende plagiaatgeschiedenis met Rybka ben ik tot de vaststelling gekomen dat het gros van de topprogramma's (zoniet allemaal) elkaar zitten te bestuderen en wellicht stukken copieren. Ik vind het dan ook beter om vandaag te kijken naar wat een programmeur heeft toegevoegd t.o.v. de concurrentie dan te concentreren op de gelijkenissen. 

Vorige week zond ik mijn aanvraag naar dedenksportkampioen voor Houdini 2.0 en enkele dagen later kreeg ik het netjes via de post bezorgd. Vele schakers (vooral jonge) zullen de engine op een illegale weg gedownload hebben maar ik verkies om het op de correcte wijze te doen en de erg aanvaardbare prijs van 40 euro te betalen. Ik heb zelf als professioneel en als amateur geprogrammeerd en besef hoeveel uren erin kruipen om een deftig programma te schrijven. Een kleine bijdrage toont m.i. een minimum aan respect voor het geleverde werk. Illegaal downloaden is hetzelfde als diefstal en hypothekeert tevens verdere ontwikkelingen aan het programma.

De installatie van Houdini 2.0 op mijn computers verliep vlot. Desalniettemin kreeg ik wel enkele vreemde (voor mij tenminste) gedragingen. 
- Op mijn portable werd de 32 bits versie geïnstalleerd terwijl op mijn desktop de 64 bits versie. De selectie gebeurde automatisch wellicht door een test ingebouwd in de setup maar uitleg hieromtrent kreeg ik niet. 64 bits versie zou 30% sneller zijn dus niet helemaal onbelangrijk.
- In de Chessbase/Fritz interface slaagde ik er niet in om Houdini 2.0 in parallel te laten werken met andere programma's (zoals mailserver, Google Chrome). Zelfs bij het aanklikken van de lagere prioriteitknop voor de engine, bleef het onmogelijk om te multitasken wat ik vaak doe als de engine in infinite analysis mode staat.  Dit soort klachten, bleek ook al gerapporteerd te zijn maar een serieuze oplossing was niet beschikbaar. Pas bij omleiden via de Rybkainterface (die eigenlijk geen echte verschillen heeft met Chessbase/Fritz) bleek multitasking geen probleem meer. Ik kan mij tal van redenen bedenken (recenter programma, andere default instellingen, corrupted files,...) maar ik ben ondertussen al lang blij dat het allemaal werkt.
- Tenslotte werd mijn lang afgelopen playchess-account opnieuw actief. Ik ben er zeker van dat bij Houdini 2.0 geen extra abonnement voor Playchess is inbegrepen dus was ik erg verwonderd dat ik plots terug in de 'mainroom' terecht kon en niet enkel in de 'caferoom'. Zo kan ik opnieuw voor een rating spelen wat toch interessanter is. 

Mijn eerste bevindingen met Houdini 2.0 zijn dat het programma duidelijk beter is dan Rybka 3 en Fritz 11 waarmee ik eerder had gewerkt. Enkele vergelijkende testen tussen Houdini 2.0, Rybka 3 en Fritz 11 bevestigden dit alhoewel ik moet toegeven dat je pas serieus kan vergelijken op grote schaal zoals in de IPON-Rating-List. Ik gebruikte de stelling van de forumpost in chesspub als 1ste test:
8.g4!
Zoals eerder vermeld geven Fritz noch Rybka het juiste resultaat zelfs na meer dan 10 minuten rekenen. Houdini 2.0 komt daarentegen wel met de juiste zet op de proppen maar de antwoordtijd fluctueert sterk van 3 minuten tot 15 minuten afhankelijk van de geselecteerde grootte van hashtabellen, gebruik van de computer, ... Dit verklaart uiteraard waarom 'Vass' wel in staat was om binnen het uur al goede analyses te publiceren.

Ook in het eindspel blijkt Houdini sterker te zijn dan Fritz en Rybka. Zie een teststelling die in mijn vorig artikel 'tablebases' is aan bod gekomen.
42...Th4!
Hier hangt het resultaat erg sterk af van de grootte van de hashtabellen want de tijd varieert tussen de 3 en 6 minuten voor Houdini 2.0. Rybka 3 doet het iets trager met 7 minuten en voor Fritz 11 gaf ik het op na meer dan 10 minuten.
    
Feilloos is Houdini 2.0 zeker nog niet. Ik zag gisteren voor het eerst in een partijanalyse dat ik een Houdini 2.0 variant moest overrulen door Rybka 3. Het blijft dus goed om controles uit te voeren met een 2de programma op Houdini 2.0. Tenslotte slaagt ook Houdini 2.0 na een half uur rekenen en een waanzinnige diepte van 47 plies er niet in om de winnende zet te vinden in onderstaande positie (tevens uit het vorige blogartikel) wat wel mogelijk is via finalgen.
48....Kd5!
Ik ben tevreden over de aankoop want ik heb opnieuw een sterker programma om te analyseren. Perfectie hebben we nog lang niet zodat de zoektocht zal verdergaan.

Brabo

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

maandag 18 juni 2012

Aljechin met g5

Het is voor mij onmogelijk om als amateur alle theoretische ontwikkelingen te volgen ondanks mijn vrij beperkt repertoire. Af en toe word ik dan ook verrast met een moderne variant waarna ik op mijn intuïtie ben aangewezen om heelhuids door de opening te komen. Dit is geen evidente taak, zeker als het een complexe en scherpe variant betreft waar intuïtie niet opweegt tegen precies rekenwerk, liefst gecontroleerd door een sterk schaakprogramma. 

Om dit soort verrassingen te vermijden, maak ik veelvuldig gebruik van online blitzpartijtjes op Playchess. Je kan al snel een 30 partijtjes spelen in een (nachtelijke) sessie. Die sessies geven je als amateur een goede indicatie welke varianten momenteel hot zijn en waar de laatste ontwikkelingen gebeuren. Een hoge kwaliteit kan je uiteraard niet bereiken met die blitzpartijtjes maar je kan wel er iets van opsteken door achteraf met een engine snel de openingen te overlopen. Dit duurt veelal slechts een 10 minuutjes maar die gespendeerde minuten kunnen achteraf heel waardevol zijn voor het bordschaak.

Het spreekt voor zich dat serieuze openingsanalyses niet op deze wijze kunnen worden behaald. Met serieuze openingsanalyses bedoel ik dat je zowel voor wit als zwart alle bestaande varianten in een systeem controleert en tevens zoekt naar verbeteringen en/of alternatieven. Dit is een erg tijdrovend werk. Voor een beperkt systeem heb je al snel een weekje nodig als je het zorgvuldig wil doen. Het spreekt voor zich dat ik dit soort klusjes niet zomaar aanneem en dus enkel iets aanvaard wat ik ofwel voor mijn bordschaak noodzakelijk vind ofwel heel aantrekkelijk vind. 

Bij het grasduinen door de diverse schaaksites, vond ik een erg aantrekkelijk nieuwtje die kort werd besproken op chesspub. De Duitse grootmeester Henrik Teske had een venijnig nieuwtje voorbereid voor de Oostenrijkste interclub tegen de Duitse internationaal meester Stefan Bromberger, een expert in de vierpionnenaanval tegen de Aljechin. Het schaakprogramma Rybka 3 gaf aan dat het perfect speelbaar is dus wou ik wel eens weten hoe de vork precies aan de steel zit. Hieronder vind je de partij met een samenvatting van mijn analyses.
Ik ga dus akkoord met de statement op chesspub door Vass dat dit nieuwtje complete onzin is. Wellicht heeft zwart blindelings afgegaan op het oordeel van zijn schaakprogramma en zelf geen of nauwelijks studiewerk verricht. Een professional zoals Henrik Teske die vorig jaar 126 partijen afwerkte, tracht een maximaal financieel rendement te behalen met studiewerk en dan is het uiteraard geen optie om voor 1 specifieke partij, een week of meer analyses te maken. Het is dus een verkeerde opvatting van vele spelers dat nieuwe openingsideeën door grootmeesters steeds zorgvuldig zijn uitgewerkt en correct zijn.

Een heel gelijkaardig openingsidee heb ik eens voorgeschoteld gekregen door Robert Schuermans. Ook hier was het de g5-zet die gespeeld werd in de vierpionnenaanval tegen de Aljechin. Echter in tegenstelling met Stefan Bromberger, was ik er wel op voorbereid ondanks het feit dat ik Robert nog nooit de zet in een serieuze partij had zien spelen noch dat er een partij van Robert vermeld was in de databases. De partij is daarom tevens een mooi staaltje van hoever ik soms ga met mijn voorbereiding.
Het is geen foutloze partij geworden maar wel eentje waar ik dankzij mijn voorbereiding de hele partij voordeel had zowel op het bord als op de klok. Dit soort dubieuze ideeën vind ik persoonlijk iets te riskant voor de zwartspeler maar ik kan wel geloven dat je er af en toe eens een leuke punt mee kunt scoren, zeker als er gespeeld wordt met snellere tijdscontroles.

Brabo

dinsdag 12 juni 2012

Correspondentieschaak

Bordschakers bekijken vandaag correspondentieschaak veelal als een absurde competitie waarin succes afhangt van wie de meeste centen heeft geïnvesteerd in hardware. Meer en meer schakers zijn overtuigd dat iedereen in staat is om dezelfde analyses te maken mits over evenveel tijd en middelen te beschikken. Creativiteit bij het analyseren is overbodig want spelers met een lage of zelfs geen bordrating zijn nu in staat om torenhoge ratings (+2400) te halen in de officiële internationale correspondentieschaakbond: iccf. Als we deze redenering verder trekken dan kunnen we stellen dat originele analyses niet bestaan daar iedereen toch in staat is om die onafhankelijk te reproduceren. Sommigen leiden hieruit af dat copyright niet bestaat voor analyses en dus hele openingsboeken zonder problemen gratis mogen worden gecopieerd.

In elk geval vandaag zal een goed georganiseerde ambitieuze bordschaker zeker over een correspondentiedatabase beschikken waar hij de laatste analytische ontwikkelingen in zijn favoriete systeempjes snel kan opzoeken. Je ziet dan ook vandaag dat heel wat bordnieuwtjes hun oorsprong hebben in correspondentieschaak. Correspondentieschaak brengt dus ook een meerwaarde voor de bordschaker. Een bordschaker moet een repertoire van duizenden openingsvarianten onderhouden en dat kan hijzelf uiteraard slechts oppervlakkig tenzij gebruik wordt gemaakt van het werk van vele correspondentiespelers die in elke individuele variant tientallen of zelfs honderden uren hebben gespendeerd. 

Natuurlijk blijft de vraag waarom iemand überhaupt zelf correspondentieschaak zou willen spelen. Erkenning van het gros van de schakers zal je niet krijgen, integendeel en geld is er evenmin mee te verdienen. Bovendien kost het aanschaffen van computers, programma's, ... flink wat geld. Vooreerst wil ik aantonen dat correspondentieschaak geen absolute wetenschap is waarin iedereen tot dezelfde conclusies zal komen ondanks evenveel tijd en middelen. In mijn eerder blogartikel: analyseren-met-de-computer legde ik mijn werkmethode uit voor het analyseren van bordpartijen. Mijn werkmethode voor correspondentie wijkt hier uiteraard van af maar is tevens een eigen ontworpen mechanisme. Vandaag zullen de meeste correspondentieschakers een eigen originele werkmethode hebben onafhankelijk van tijd of computers waardoor automatisch ook de analyses zullen afwijken. Schaken is bij mijn weten nog geen opgelost probleem waardoor er situaties ontstaan waar je ondanks erg diepe analyses geen finaal verdict kunt geven over welke voortzetting nu net de meest kansrijke is. Een subjectieve beoordeling zal af en toe de knoop moeten doorhakken. Enkele voorbeelden hiervan kan je lezen in het magazine : ccn.correspondencechess.com, zie issue 87, artikel ' The Quest for the Magic Triangle '. Tenslotte kan het spenderen van tijd op zich ook een talent zijn. Tijd is niet alleen een kwestie van prioriteiten stellen maar tevens een kwestie van doorzetting en volharding. Ik heb vele sterke bordspelers gezien die ondanks veel vrije tijd, te ongeduldig waren voor correspondentieschaak en hierdoor soms veel slechter presteerden dan laag gekwoteerde spelers die wel de energie hiervoor konden vinden. Voor mij staat het buiten kijf dat correspondentieschaak of ruimer genomen analytisch schaakwerk nog steeds als origineel bestempeld kan worden en dus is m.i. een competitie in dit domein geen absurditeit.

Nu ik ga niet ontkennen dat de originaliteit vandaag veel minder is dan pakweg 10 of 20 jaar terug in correspondentieschaak. Je moet vandaag al heel wat tijd spenderen in de analyses om een verschil te kunnen maken t.o.v. de computers. Dit feit gecombineerd met de aanhoudende negatieve kritiek door bordschakers heeft ertoe geleid dat in een 2 decennia het aantal correspondentiespelers in België gedecimeerd is met 90%. In andere Westerse landen zie je trouwens hetzelfde fenomeen. Deze evolutie betekent m.i. niet dat correspondentieschaak zal verdwijnen. Het is een nichemarkt geworden waar een bepaalde categorie van schaakspecialisten zich zullen verder in amuseren.

Kan deze nichemarkt iets betekenen voor de gewone bordspeler behalve het downloaden van de gespeelde correspondentiepartijen? Ik meen van wel. Een bordspeler wordt er verplicht om een werkmethode aan te leren om stellingen dieper te analyseren dan de output van een computerprogramma wat achteraf handig van pas komt om grondige analyses te maken over bepaalde openingen of eindspelen. Daarnaast kan je ook enkele favoriete systeempjes eens in detail bekijken die je later in bordschaak kunt hergebruiken. Nu moet ik wel onmiddellijk toegeven dat dit voordeel niet overroepen moet worden. Het aantal correspondentiepartijen die je kunt spelen, is vrij beperkt terwijl het aantal varianten die je voorgeschoteld kunt krijgen in bordschaak, heel uitgestrekt is. Bovendien zijn de analyses in correspondentieschaak vaak zo diep en uitgebreid dat ze onmogelijk allemaal te onthouden zijn, laat staan te reproduceren jaren later. Ik herinner mij 1 duidelijk geval uit mijn praktijk waar ik wel degelijk gebruik kon maken van mijn correspondentieanalyses in bordschaak. In een Europees correspondentietornooi kreeg ik een nevenvariant  op het bord waarvan ik grondige analyses maakte. Ik heb gezien dat de huidige programma's wel enkele foutjes vinden in de analyses maar met de toenmalig beschikbare middelen en tijd, was het zeer behoorlijk wat ook af te leiden is uit de snelle winst. Ik heb de analyses weggelaten, behalve de lijn die later werd hergebruikt in mijn bordpartij.
In 2003 kreeg ik dezelfde nevenvariant op het bord maar nu in bordschaak, namelijk in de Open van Plancoet (Bretagne). Ik speelde de variant bewust anders dan in de correspondentiepartij maar gebruikte wel uitvoerig mijn correspondentiekennis, zie:
In de 6 jaren dat ik correspondentieschaak speelde, spendeerde ik gemiddeld zeker 3 uren/dag aan mijn correspondentiepartijen. Als je dit combineert met een full time job dan blijft er onvoldoende tijd over om serieus te werken aan het bordschaak. In die jaren ging ik dan ook nauwelijks of niets vooruit met mijn fiderating. Ook de Nederlandse ex-wereldkampioenschaker Gert Jan Timmerman bevestigde dat intensief correspondentieschaak geen goede invloed heeft op het bordschaak. Wellicht heeft hij hierdoor de internationaal meester titel (bij de Fide) gemist wat uiteraard een perfect aanvaardbaar offer is om wereldkampioen (bij iccf) te kunnen worden. Persoonlijk vond ik de doelen (titels, kampioenschappen) te ver weg in correspondentieschaak en waren er nog te veel andere zaken interessant om verder de minstens 3 uren/ dag gemiddeld op te brengen. Desalniettemin denk ik dat 1 of 2 jaar correspondentieschaak voor iedere bordschaker een goede investering is voor de schaakcarrière.

Brabo

vrijdag 8 juni 2012

Schaakintuïtie

Elke schaker krijgt door ervaring bepaalde vaardigheden. Deze vaardigheden worden een soort  schaakintuïtie  waardoor een schaker vaak door een oogopslag weet naar welke zetten hij moet kijken en of het de moeite waard is om wat langer de stelling te bestuderen. Het instuderen van tactische motieven, herkennen van zwakke velden, het verschil kennen tussen zwakke en sterke loper,... zijn allemaal onderdelen van onze schaakintuïtie. 

Echter schaken is een heel concreet spelletje waarbij algemene principes en regeltjes al snel plaats moeten ruimen voor precisie en doeltreffendheid. Een computer toont erg vaak haarfijn aan dat de stelling net anders moet worden behandeld dan wat jouw  schaakintuïtie vertelt. Vandaag mogen we uiteraard geen computer raadplegen voor het spelen van een partij maar voor de opening kunnen we dat omzeilen door vooraf grondig een aantal mogelijke systemen te bekijken en in te studeren. In feite doen we niets anders dan de vaak gebrekkige intuïtie uit te schakelen en te vervangen door computerprecisie in de hoop dat dit ook betere bordresultaten oplevert. 

Zonder twijfel is dit inderdaad het geval want anders kan je onmogelijk het succes verklaren van de vele openingsboeken en de enorme focus vandaag op het analyseren en verfijnen van openingssystemen met behulp van talloze computerprogramma's. Het is een tijdrovende job en voor velen vergalt het voor een groot stuk de sportiviteit waarbij het niet meer gaat om wie de beste vaardigheden heeft maar eerder wie het meeste studiewerk heeft gemaakt en over het beste geheugen beschikt. Het is dan ook geen wonder dat voor schaakvarianten zoals Fischerrandom een steeds grotere affiniteit bestaat alhoewel ik sterk betwijfel dat het ooit zo populair zal worden om het standaardschaak te kunnen vervangen.

Ondanks de duidelijke puntenwinst met het instuderen van openingen, kan het ook soms een averechts effect teweegbrengen. Ook in een voorbereiding sluipen fouten en het geheugen kan iemand wel eens in de steek laten (steeds vaker bij het ouder worden). Een welbekend en extreem voorbeeld van het negatief effect bij moedwillig uitschakelen van de intuïtie, is de 8ste wk-partij tussen Kramnik en Leko, gespeeld in 2004 te Brissago, Zwitserland. Kramnik volgde blindelings zijn voorbereidingen en begon pas zelf te rekenen toen het kalf al lang verdronken was, zie onderstaande partij:
Recent kwam ik iets gelijkaardigs tegen. Dit interclubseizoen in de laatste ronde speelde ik met zwart tegen de jonge Nederlandse FM Quinten Ducarmon, een variant die ik enkele maanden eerder nog hier op het blog besproken had en tevens thuis bestudeerd had: de Bartelvariant.  Quinten speelt voor zover ik weet altijd 1.e4 dus kwam zijn openingskeuze als een totale verrassing waardoor ik moest trachten de varianten te herinneren die al ver in het geheugen zaten. Soms lukt dit maar hier slechts gedeeltelijk want ik mixte 2 varianten door elkaar zodat ik na 13 zetten nog dacht in mijn analyses te zitten maar eigenlijk een totaal verloren stelling had op het bord, zie partij:
Het uitschakelen van de intuïtie is dus niet zonder gevaar. Tevens wil ik met deze partij aantonen dat een blog schrijven, ook enige risico's inhoudt voor je bordspel daar sommige potentiële tegenstanders uiteraard meelezen. Dit is ook de reden waarom ik geregeld enkele cruciale analyses weglaat in de gepubliceerde partijen om zelf nog iets over te kunnen houden. Ik ben wel bereid om op persoonlijke aanvraag meer te  tonen maar niet zomaar aan iedere anonieme lezer.

Brabo 

vrijdag 1 juni 2012

Eindspelen paard tegen paard

Begin vorige maand werd in Italië de interclub afgewerkt in de 1ste afdeling. In tegenstelling met de meeste interclubs wordt de hele interclub afgehaspeld in 5 dagen waarin 7 wedstrijden worden gespeeld. Ik vermoed dat hiermee voor de teams het gemakkelijker is om professionals in te schakelen maar wellicht zijn er nog andere drijfredenen. Het spreekt voor zich dat dit enkel kan met een snel tempo waarbij de hoger gekwoteerde spelers gemiddeld iets bevoordeeld worden en een foutenlast al snel oploopt.

Op chessbase vond ik een leuk eindspel van paard tegen paard, gespeeld in dit teamkampioenschap waarbij de verdediging staat of valt bij het correct uitvoeren van een blokkade. Dit lukt niet en de op papier sterkere witspeler gaat voor de bijl.
Een extreem voorbeeld van een blokkade tussen paard en paard, zette ik op het bord in mijn interclubpartij van 2003 tegen Willem Bor. In tegenstelling met het eindspel uit Italie, moest ik eerst nog een blokkade bouwen.
Paardeneindspelen kunnen veelal op dezelfde wijze behandeld worden als pionneneindspelen. Een pion extra is in de meeste gevallen beslissend maar je moet altijd opletten voor blokkades zoals oppositie. Correct rekenen is belangrijker dan creativiteit of intuitie.

Brabo

woensdag 30 mei 2012

Analyseren met de computer

Bij het nalezen van de partijcommentaren van de Russische grootmeester Sergey Shipov op het wereldkampioenschap schaken, viel mij 1 uitspraak bijzonder in de smaak: 'Three aren't enough for me now' zie: chessintranslation. Hiermee bedoelt hij dat zelfs 3 computers onvoldoende zijn om kwalitatief optimale verslaggeving te doen. Uiteraard is dit een relatief begrip maar ik begrijp wel dat vandaag tezelfdertijd gebruikmakend van verscheidene computers betere analyses gemaakt kunnen worden, zeker als die online en dus onder grote tijdsdruk moeten gebeuren.

Ik beschouw mijzelf als 1 van de eerste schakers die opgegroeid zijn compleet omgeven door computerprogramma's. De meeste spelers van mijn leeftijd zullen nog wel het pre-computertijdperk meegemaakt hebben maar omdat ik pas op mijn 20ste een eerste officiële rating kreeg, heb ik het jeugdschaken toen nog zonder (serieuze) computerassistentie bijna helemaal overgeslagen. 

Over welke methodes toe te passen bij het analyseren met computers bestaat weinig lectuur. Het is ook een onderwerp waarover meestal niet gepraat wordt op de clubavonden want computers worden nog steeds gezien als pretbedervers. Ik kreeg laatst de vraag op chesspub waarom iets analyseren als je dit zelf toch niet speelt. Analyseren, wordt dus eerder bekeken als een noodzakelijk kwaad om punten te scoren en/of progressie te maken en niet iets plezierig. Persoonlijk heb ik vaak evenveel plezier bij het uitwerken van een analyse met computerprogramma's dan het spelen van een bordpartij wat niet betekent dat ik exclusief thuis wil analyseren want af en toe menselijk contact is nodig.

'Modern chess analysis' van de in 2009 overleden Amerikaanse correspondentiegrootmeester Robin Smith is wellicht het beste wat er op de markt beschikbaar is van materiaal over analyseren met de computer maar het boekje dateert weeral van 2004 en dus zou een opvolger welkom zijn. Dit ga ik hier niet doen maar ik zal wel even kort bespreken welke evolutie ik meegemaakt heb in dit domein en dan specifiek betreffende het analyseren van gespeelde bordpartijen. Vandaag kan ik toch al buigen op ongeveer 20 jaar expertise als we mijn tablecomputers mogen meerekenen.

Aanvankelijk analyseerde ik mijn partijen zoals vandaag de meeste amateurs hun partijen analyseren. Ik keek waar mijn partij afweek van de theorie. Vanaf dat punt vermeldde ik bij elke gespeelde zet of het dezelfde zet was als de computer na een paar minuten rekenen en indien niet dan gaf ik op hoeveel de evaluatie afweek + welke zet met optimale variant beter was volgens de computer (in de beginjaren geen automatische feature in de programma's). Eenmaal de hele partij door de mangel gehaald, kleurde ik de analyses op met persoonlijke proza en analysetekens om het achteraf leesbaarder te maken.

Ik heb gedurende de vele jaren, gebruik gemaakt van vele engines: de Fritzserie, Rebel, Shredder, Rybka,... en dit leerde mij dat programma's vaak andere hoofdvoortzettingen kiezen die bovendien soms grondig afwijken in evaluatie. Omdat het voor een speler moeilijk of zelfs onmogelijk is om te weten welke engine nu de juiste evaluatie opgeeft (soms geen van beiden want de evaluatie ligt in het midden) , liet ik de engines het onderling uitvechten. Omdat het onderling controleren van de engines een exponentieel tijdsverslindende activiteit is, leerde ik al snel dat ik mijzelf moest beperken tot maximaal mijn 2 topengines.

Het algoritme dat ik gebruikte bij het bepalen van de juiste evaluatie, is uiteraard over de jaren sterk geëvolueerd. Al snel zag ik in dat het onmogelijk was om voor elke andere zet dat een engine opgaf, een nieuwe diepgaande analyse te maken zodat ik mij beperkte tot de zetten waar het evaluatieteken veranderde. Dit betekent bijvoorbeeld van gelijke stelling (=) naar licht voordeel (+/=). Een 2de grote evolutie (ergens toegepast rond 2004 voor het eerst) betekende de toepassing van het retrogradesysteem. Je analyseert niet meer van de beginstelling maar start van de eindpositie waar de evaluatie veelal heel duidelijk is. Het grote voordeel is dat je automatisch altijd over een vrij nauwkeurige evaluatie beschikt van de gespeelde zet en je dus enkel moet concentreren op de eventueel betere computerzetten. Hieronder wordt het algoritme uitgelegd:

Algoritme
Evalulatiepartijkeuze is gekend op voorhand door gebruikmakend van retrogradeanalyse
Programma 1 en 2 zijn de 2 sterkste schaakengines beschikbaar.
Evaluatiefunctie heeft 2 parameters (op welke zet, met welk programma).
De gekozen zet voor de evaluatiefunctie gebeurt ofwel op een specifiek gekozen zet ofwel op de laatste zet van een analysevariant.
De evaluatie heeft als ouput: +-; +/-; +/=;=;-/=;-/+;-+. Dit is gelinkt aan het gekozen programma in infinite analysis mode. Bij het bepalen van de evaluatie van een zet, stop ik normaal na maximaal 1 minuut behalve als het een specifiek gekozen computerzet is en de evaluatie verschilt t.o.v. de partijzet dan wacht ik maximaal tot 10 minuten.
De evaluatie van 2 zetten zijn gelijk wanneer de output gelijk is.
De analysefunctie heeft 2 parameters (op welke zet, met welk programma).
Voor de analysefunctie wordt gebruik gemaakt van correspondentieanalyses. Ik gebruik normaal 10 plies diep, 1 hoofdvariant, geen zijvarianten, 60 seconden per zet.
De vergelijkfunctie heeft 2 parameters (variant A, variant B).
De output van de vergelijkfunctie is een zet, genoemd vergelijkzet hieronder waar de 2 varianten afwijken. Programma 1 wijkt af wanneer programma1 een zet voorstelt in een variant die uiteindelijk tot een slechtere evaluatie leidt voor hetzelfde kleur van de afgeweken zet. Het omgekeerde geldt voor programma 2.
Het beschreven algoritme hieronder is reitiratief en eindigt als een stop wordt gehaald wat soms wel eventjes kan duren.


1) Evaluatiepartijkeuze = Evaluatie (programma 1keuze, programma1)
2) Ja: vervolg; Nee: ga naar nr 39
3) Evaluatiepartijkeuze = Evaluatie (programma 2keuze,programma 2)
4) Ja: stop; Nee: vervolg
5) Analyse (programma2keuze, programma 2)
6) Evaluatiepartijkeuze = Evaluatie (Analyse (programma2keuze, programma 2), programma2)
7) Ja: stop; Nee: vervolg
8) Evaluatiepartijkeuze = Evaluatie (Analyse (programma2keuze, programma 2), programma1)
9) Ja: stop; Nee: vervolg
10) Analyse (programma2keuze, programma 1)
11) Evaluatie (Analyse (programma2keuze, programma 1), programma1) = (Analyse (programma2keuze, programma 2), programma1)
12) Ja: vervolg; Nee: ga naar nr 15
13) Evaluatie (Analyse (programma2keuze, programma 1), programma2) = (Analyse (programma2keuze, programma 2), programma2)
14) Ja: stop; Nee: vervolg
15) Vergelijk (Analyse (programma2keuze, programma 1), Analyse (programma2keuze, programma2))
16) programma 1 wijkt af: vervolg; programma 2 wijkt af: ga naar nr 32
17) Analyse (vergelijkkeuze, programma 1)
18) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma1) = (Analyse (programma2keuze, programma 2), programma1)
19) Ja: vervolg; Nee: ga naar nr 22
20) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma2) = (Analyse (programma2keuze, programma 2), programma2)
21) Ja: stop; Nee: vervolg
22) Vergelijk (Analyse (vergelijkkeuze, programma 1), Analyse (programma2keuze, programma2))
23) programma 1 wijkt af: ga naar nr 17; programma 2 wijkt af: vervolg
24) Analyse (vergelijkkeuze, programma 2)
25) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma1) = (Analyse (vergelijkkeuze, programma 2), programma1)
26) Ja: vervolg; Nee: ga naar nr 29
27) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma2) = (Analyse (vergelijkkeuze, programma 2), programma2)
28) Ja: stop; Nee: vervolg
29) Vergelijk (Analyse (vergelijkkeuze, programma 1), Analyse (vergelijkkeuze, programma2))
30) programma 1 wijkt af: vervolg; programma 2 wijkt af: ga naar nr24
31) Analyse (vergelijkkeuze, programma 1) en ga naar nr 25
32) Analyse (vergelijkkeuze, programma 2)
33) Evaluatie (Analyse (programma2keuze, programma 1), programma1) = (Analyse (vergelijkkeuze, programma 2), programma1)
34) Ja: vervolg; Nee: ga naar nr 37
35) Evaluatie (Analyse (programma2keuze, programma 1), programma2) = (Analyse (vergelijkkeuze, programma 2), programma2)
36) Ja: stop; Nee: vervolg
37) Vergelijk (Analyse (programma2keuze, programma 1), Analyse (vergelijkkeuze, programma2))
38) programma 1 wijkt af: ga naar nr 31; programma 2 wijkt af: ga naar nr32
39) Analyse (programma1keuze, programma 1)
40) Evaluatiepartijkeuze = Evaluatie (Analyse (programma1keuze, programma 1), programma1)
41) Ja: stop; Nee: vervolg
42) Evaluatiepartijkeuze = Evaluatie (Analyse (programma1keuze, programma 1), programma2)
43) Ja: stop; Nee: vervolg
44) Analyse (programma1keuze, programma 2)
45) Evaluatie (Analyse (programma1keuze, programma 1), programma1) = (Analyse (programma1keuze, programma 2), programma1)
46) Ja: vervolg; Nee: ga naar nr 49
47) Evaluatie (Analyse (programma1keuze, programma 1), programma2) = (Analyse (programma1keuze, programma 2), programma2)
48) Ja: stop; Nee: vervolg
49) Vergelijk (Analyse (programma1keuze, programma 1), Analyse (programma1keuze, programma2))
50) programma 1 wijkt af: vervolg; programma 2 wijkt af: ga naar nr 66
51) Analyse (vergelijkkeuze, programma 1)
52) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma1) = (Analyse (programma1keuze, programma 2), programma1)
53) Ja: vervolg; Nee: ga naar nr 56
54) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma2) = (Analyse (programma1keuze, programma 2), programma2)
55) Ja: stop; Nee: vervolg
56) Vergelijk (Analyse (vergelijkkeuze, programma 1), Analyse (programma1keuze, programma2))
57) programma 1 wijkt af: ga naar nr 51; programma 2 wijkt af: vervolg
58) Analyse (vergelijkkeuze, programma 2)
59) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma1) = (Analyse (vergelijkkeuze, programma 2), programma1)
60) Ja: vervolg; Nee: ga naar nr 63
61) Evaluatie (Analyse (vergelijkkeuze, programma 1), programma2) = (Analyse (vergelijkkeuze, programma 2), programma2)
62) Ja: stop; Nee: vervolg
63) Vergelijk (Analyse (vergelijkkeuze, programma 1), Analyse (vergelijkkeuze, programma2))
64) programma 1 wijkt af: vervolg; programma 2 wijkt af: ga naar nr58
65) Analyse (vergelijkkeuze, programma 1) en ga naar nr 59
66) Analyse (vergelijkkeuze, programma 2)
67) Evaluatie (Analyse (programma1keuze, programma 1), programma1) = (Analyse (vergelijkkeuze, programma 2), programma1)
68) Ja: vervolg; Nee: ga naar nr 71
69) Evaluatie (Analyse (programma1keuze, programma 1), programma2) = (Analyse (vergelijkkeuze, programma 2), programma2)
70) Ja: stop; Nee: vervolg
71) Vergelijk (Analyse (programma1keuze, programma 1), Analyse (vergelijkkeuze, programma2))
72) programma 1 wijkt af: ga naar nr 65; programma 2 wijkt af: ga naar nr66


Het is m.i. perfect mogelijk om hiermee een programma te schrijven maar ik heb het nooit geprobeerd. Niet enkel omdat er flink wat werk zou inkruipen maar ook omdat het manueel doorlopen van het algoritme ervoor zorgt dat je veel beter ziet waar de angels zitten en waar soms toch nog extra analysewerk nodig is. Je onthoudt ook veel beter het werk dan puur te rekenen op de output van de computer. Deze methode levert erg goede partijanalyses op die zeker beter zijn dan de eenvoudige blundercheckfuncties die de meeste schaakprogramma's bezitten.

Een aanrader bij het gebruiken van dit algoritme is minstens 2 processoren en minstens 2 schermen te bezitten. 2 processoren omdat multitasking op 1 processor veelal leidt tot groot verlies van analysesterkte en soms ook de programma's laat bevriezen. Mijn computers zijn altijd singleprocessors dus ik heb er altijd 2 tot mijn beschikking. Ik raad tevens aan om 2 schermen te gebruiken zodat je niet hoeft te klikken tussen de 2 programma's en op elk moment duidelijk kunt zien hoever de analyses gevorderd zijn. Handig is tevens een 3de processor/ computer te hebben om zelf nog wat te kunnen experimenteren met varianten of opzoekwerk te kunnen doen zodat je niet hoeft te wachten op de 2 andere.  Een n-de processor/computer zou tevens nuttig kunnen zijn om specifieke stellingen die soms verder in de analysevarianten te voorschijn komen, eens dieper in infinite mode of correspondentiemode te laten rekenen. Ik kan dus heel goed GM Shipov volgen met het statement dat 3 computers nog niet genoeg zijn. Zelfs al heb je voldoende centen om dit laboratorium volledig te bekostigen dan nog moet je als operator ook voldoende tijd hebben om het allemaal manueel te organiseren. Vroeger gebruikte ik steevast 2 computers maar vandaag gezien mijn drukke familiale situatie, beperk ik mij tot 1 computer. De analyses gaan hierdoor 3 keer trager maar ik speel veel minder dan vroeger zodat computeranalyses minder dringend zijn en bovendien laat het mij toe om geregeld voor lange tijd afwezig te zijn van de computer.

Eindspelanalyses heb ik steeds behandeld met de grootste zorg in tegenstelling tot de meeste amateurs die vandaag vaak nog nauwelijks de moeite doen om zich hierin te verdiepen. In die fase wordt het spel ook heel concreet en is creativiteit veel minder belangrijk dan het haarfijn uitrekenen van varianten. Ondanks er nog steeds smalend wordt gedaan over schaakprogramma's in het eindspel, zijn ze toch heel goede instrumenten om een oordeel te kunnen vellen. Als het materiaal enigszins beperkt is dan tracht ik de positie te analyseren tot een definitief oordeel (winst, remise, verlies) zelfs al zijn de tablebaseshits nog heel ver weg. Ik gebruik hetzelfde algoritme als in het middenspel met dit verschil dat ik de analysevariant niet laat stoppen tot 10 plies maar verder laat gaan tot winst, verlies of remise op het bord staat. Winst beschouw ik als een +5 score of bij een tablebasewinst. Bij lagere scores kan soms nog sprake zijn van een vesting maar bij +5 is dat in 99,9% van de gevallen niet. Verlies is het omgekeerde van winst. Remise kan bestaan uit een tablebasehit, een computerevaluatie met gelijk spel of bij sprake van een vesting. Een vesting wordt geconstateerd wanneer een groot voordeel ondanks 20 extra plies spelen niet meer verder wordt uitgebouwd. Ik link tegenwoordig niet de tablebases met de programma's omdat ik het gevoel heb dat een programma bij het opzoeken in de gigantische tablebases meer tijd verliest dan het gewoon verder te laten rekenen en het geen meerwaarde betekent voor de analyses. Bovendien houden de tablebases geen rekening met de 50-zettenregel waardoor je soms foute resultaten verkrijgt. Als een analysevariant uitmondt in een tablebasestelling dan check ik de evaluatie manueel via Tablebasesite.

Ik heb in het verleden heel weinig tijd gespendeerd aan openingen maar dat is sinds een jaar of 5 serieus veranderd. Nu keer ik veel verder terug dan het punt waar ik afweek van de bekende paden. Zo bekijk ik ook de alternatieven voor zowel wit als zwart waarmee meesters goed hebben gescoord of wat in correspondentie recent nog getest werd. Bijzondere aandacht schenk ik aan de + 2600 partijen of nog beter + 2700 partijen waarin veelal de kritieke openingssystemen worden gespeeld in tegenstelling tot de iets lager gekwoteerde meesters. De output van een programma in een opening is nog vrij beperkt in waarde maar mits gebruik makend van de correspondentiemodus kan je toch interessante zaken ontdekken die je een voorsprong kunnen opleveren t.o.v. de tegenstanders. Ik gebruik normaal diepte 12 plies, 3 hoofdvarianten, 3 1ste zijvarianten, 2 2de zijvarianten met 100 seconden per zet. 1 rondje correspondentiemodus met deze parameters duurt ongeveer een 6 uren = 12*3*3*2*100 seconden dus ideaal om de computer 's nachts te laten doorrekenen terwijl je zelf lekker in bed ligt te slapen. 's Morgens verwijder je dan de vele nutteloze varianten en kan je beslissen om voor een bepaalde kritieke stelling nog een rondje correspondentiemodus volgende nacht te laten uitvoeren.

Ik ben er overtuigd van dat mijn analysemethodes hoogstaande resultaten opleveren. De computer doet het leeuwendeel maar het persoonlijk werk mag je toch ook niet onderschatten want het is geen simpele druk op de knop. Ik ken weinig of niets af van de methodes die andere spelers gebruiken om intensief te analyseren. Personen die meer willen weten over hoe het algoritme nu precies in praktijk werkt en/of raadgevingen hebben i.v.m. optimaliseren van het analyseproces mogen altijd hieronder posten of een mailtje sturen (te vinden o.a. op de Deurnse website).

Brabo