Leren leren van computers deel 2 met Matthew Sadler en Steven Giddins – “Re-engineering the Chess Classics”

De evolutie van computerschaak is altijd een grote fascinatie van mij geweest. De botsing tussen door mensen geprogrammeerde algoritmes en kunstmatige intelligentie werd naar een hoger niveau getild met de geboorte van AlphaZero, en later, Leela Chess Zero (Lc0), gevolgd door de met Neural Net-geïntegreerde Stockfish.

Matthew Sadler, naast Natasha Regan met wie hij het bekroonde boek “Game Changer” schreef (foto Lennart Ootes)

De opkomst van deze engines heeft me zowel geschokt als geïnspireerd. Het idee dat schaken, een spel dat zo diep in de menselijke cultuur is geworteld, zo drastisch kon evolueren door technologische innovatie, is opwindend en ontmoedigend tegelijk.

In oktober 2021 schreef ik een uitgebreide recensie over Matthew Sadler’s “The Silicon Road to Chess Improvement” – een boek dat diepgaand onderzoek deed naar computerschaak en de zetten van schaakengines. Ik was zeer geboeid door Sadler’s vermogen om de complexiteit van de algoritmes en de strategieën van de AI-engines op een toegankelijke manier te ontsluiten. Het boek schetste een beeld van hoe wij deze technologieën zouden kunnen gebruiken om ons eigen spel te verbeteren.

Sadler heeft, samen met Steve Giddins, hun inzichten naar een nieuw niveau getild in dit nieuwe boek “Re-engineering the Chess Classics”. In dit boek gaan Sadler en Giddins nog dieper in op de nuances van computerschaak, met een bijzondere focus op de invloed van AI op ‘de klassiekers’. Deze recensie zal zich richten op dit nieuwste werk, maar ik raad u aan om mijn eerdere stuk te lezen om een beter inzicht te krijgen in de achtergrond van deze technologieën en de impact die ze hebben gehad op het schaaklandschap.

Korte omweg

Zoals velen van jullie ongetwijfeld al weten, heeft ChatGPT een revolutionaire impact gehad op onze samenleving. Het behoort tot een specifieke categorie van kunstmatige intelligentie: taalmodellen. Hierdoor verwacht ik niet dat ChatGPT in de nabije toekomst (of ooit) meesterlijk zal gaan schaken. Het fundament van dit model is immers gericht op het voorspellen van het volgende woord in een reeks, niet op het uitwerken van schaakstrategieën. Zelf was ik niet zo overdonderd door de snelle opkomst en de veelbelovende mogelijkheden van ChatGPT als velen anderen leken te zijn. Dit komt omdat ik een soortgelijke doorbraak al eerder had gezien – Waar? Yep, in onze wereld – in de wereld van het schaken, met de komst van AlphaZero. Naar mijn mening staat ChatGPT tot tekstgeneratie zoals AlphaZero tot schaken stond.

Waarom zou ChatGPT nooit zo goed als onze schaakengines kunnen schaken?

ChatGPT is gebaseerd op de GPT (Generative Pretrained Transformer) architectuur. Het maakt gebruik van een vorm van machine learning genaamd unsupervised learning, waarbij het getraind wordt op grote hoeveelheden tekstgegevens en leert om tekst te genereren die statistisch gezien lijkt op zijn trainingsgegevens. Het model begrijpt de inhoud niet zoals mensen dat doen, maar gebruikt statistische patronen om mensachtige reacties te genereren.

De onderliggende architectuur van ChatGPT is een transformer, specifiek een transformer decoder, die inputs sequentieel verwerkt en outputs woord voor woord genereert. Het is een diep leermodel dat het belang van verschillende woorden bij het genereren van een reactie weegt.

AlphaZero is een computerprogramma dat een ander soort machine learning gebruikt, genaamd reinforcement learning, om bordspellen zoals schaken, shogi en Go te beheersen. AlphaZero leert niet van bestaande spel databases. In plaats daarvan speelt het spellen tegen zichzelf vanuit willekeurige initiële zetten, en na verloop van tijd, door een proces van trial en error, verbetert het zijn spel.

AlphaZero gebruikt een combinatie van diepe neurale netwerken en Monte Carlo Tree Search (MCTS). De neurale netwerken begeleiden de zoektocht naar de beste zet, terwijl MCTS helpt het model verschillende potentiële sequenties van zetten te verkennen. De neurale netwerken in AlphaZero bestaan uit vele lagen van kunstmatige neuronen die getraind zijn om de kans op winnen vanuit een bepaalde bordpositie te voorspellen.

Hoewel beide AI-modellen zijn, dienen ze verschillende doelen en gebruiken ze verschillende methoden. ChatGPT genereert mensachtige tekst door de kans op elk volgend woord in een zin te voorspellen, gebruikmakend van patronen geleerd uit enorme hoeveelheden tekstgegevens. Een schaak AI (als AlphaZero) daarentegen beheerst strategische bordspellen door verschillende sequenties van zetten te verkennen en de kans op winnen in te schatten, gebaseerd op patronen van eerdere – tegen zichzelf gespeelde – spellen.

Het is ook belangrijk om te verduidelijken dat, hoewel ChatGPT gebaseerd is op de waarschijnlijkheid van woorden die elkaar opvolgen, het de inhoud niet echt begrijpt zoals mensen dat doen. Het heeft geen overtuigingen, meningen of gevoelens. Het voorspelt alleen wat het volgende woord is op basis van patronen die het tijdens zijn training heeft geleerd.

Hetzelfde geldt voor AlphaZero. Het heeft geen menselijke kennis van de spellen die het speelt, en het begrijpt deze niet op de manier waarop een mens dat zou doen. AlphaZero vormt geen overtuigingen of meningen over de spellen; het leert gewoon patronen te herkennen en strategieën te ontwikkelen die het waarschijnlijker maken om te winnen.

Maar, waarom dan leren van deze engines, als ze toch niks begrijpen?

Het cruciale onderscheid tussen tekstgenererende AI en schaak AI is de objectiviteit van schaken. Het schaakspel, met zijn vaste regels en eindige mogelijkheden, leent zich veel gemakkelijker voor de algoritmische benadering van optimalisatie van AI dan de complexiteiten en nuances van taal en tekst. In essentie, er is geen ‘beste’ volgende woord – *eend – (dat is er wellicht wel, maar veel lastiger om te verzinnen) maar er is wel een theoretisch beste volgende zet. (*was dit het beste volgende woord? Wie weet…)

Dus, hoewel deze AI-schaakengines het spel niet ‘begrijpen’ op dezelfde manier als een menselijke speler dat zou doen, hebben ze toch een zekere mate van ‘kennis’. Ze zijn geprogrammeerd om patronen en sequenties te herkennen die statistisch gezien waarschijnlijk tot een overwinning leiden. Ze excelleren dus in het identificeren van zetten die de winstkansen maximaliseren. En, dat is precies wat schaakspelers willen toch? Winstkansen maximaliseren? Dit brengt mij dus precies bij de daadwerkelijke recensie.

Het boek dan eindelijk

Het is nu cruciaal voor ons om niet alleen te leren hoe we effectief kunnen omgaan met deze technologieën, maar ook om ze echt te begrijpen. In veel opzichten is dit net zo belangrijk als het begrijpen van de complexiteit van een schaakspel – we moeten de nuances kennen om volledig te kunnen waarderen en benutten wat deze revolutionaire ontwikkelingen ons kunnen bieden. Dit boek kan ons daar zeker bij helpen.

Sadler is een ware virtuoos in het interpreteren van de manoeuvres, tactieken en ‘overwegingen’ van schaakcomputers. Je zou hem kunnen beschouwen als een soort fluisteraar voor schaakengines. Precies om deze reden is zijn boek van grote waarde.

Persoonlijk kijk ik ook graag naar partijen tussen schaakcomputers (van TCEC), zittend voor het bord in een bijna meditatieve staat, alsof ik begrijp wat er op het bord gebeurt. Daar zie ik ze, StockFish tegenover Leela, hun Elo-rating is zo hoog dat ze als buitenaardse wezens aanvoelen. Ik bestudeer hun zetten, zie de evaluaties fluctueren en op de meest intrigerende momenten, wanneer de evaluatie verschilt, roep ik uit: AHA!, alsof ik de onderliggende strategie begrijp, maar dat is in werkelijkheid niet zo.

Dit is exact het moment waarop de expertise van Sadler zijn waarde bewijst. In wezen fungeert hij als een vertaler, die de zetten, de nuances en de ‘overwegingen’ van deze schaakengines – voor zover je die overwegingen kunt noemen – ontcijfert en overbrengt naar mijn begripsniveau. Hij is in staat dit te doen omdat hij niet alleen een bekwaam schaker is, maar ook een diepgaande kennis heeft van deze engines en veel ervaring met hen heeft opgedaan. Daarbij heeft Giddins ook natuurlijk geholpen, al ben ik minder bekend met hem.

Matthew Sadler en Steve Giddins hebben 40 grootmeesterpartijen uit de afgelopen 150 jaar geanalyseerd met behulp van deze AI-engines. Door menselijke beslissingen te vergelijken met die van de engines, leren ze ons waar zelfs de beste menselijke spelers fouten maken. De AI-engines zijn bijzonder nuttig om ons begrip van strategische en technische patronen te veranderen en om de keerpunten in dergelijke partijen aan te wijzen.

Voorbeeld

De eerste partij die ze bespreken is Anderssen versus Dufresne. Elk hoofdstuk begint met het schetsen van de context van de specifieke partij. “Dit is een van Anderssen’s twee meest beroemde partijen, de ‘Immortal game’ tegen Kieseritzky is de andere. Deze partij heeft door de jaren heen veel analyse aangetrokken, vooral vanwege de 19e zet van zwart. We hopen dat we nu eindelijk de vragen eens en voor altijd kunnen beantwoorden.” (Daarom spring ik even naar de 19e zet)…

19.♖ad1!

Anderssen zet een prachtige val op, die terecht slaagt en de reden is voor de populariteit van deze partij. Maar objectief gezien is de stelling slechts gelijk, volgens Sadler & Giddins.

Het alternatief was 19.♗e4, wat objectief gezien de beste zet van wit was, nog steeds met een kans op een licht voordeel: 19…♕h3 20.g3 ♖xg3+ 21.hxg3 ♕xg3+ 22.♔h1 ♗xf2 (als 22…♕h3+?, dan wint 23.♘h2)

A) Als 23.♖e2??, dan wint 23…♘d4;

B) 23.♗d5 ♗xe1 (23…♕h3+ 24.♘h2 ♗xe1 25.♖xe1 ♘e5 26.♗xb7 ♖xb7 27.♕a6 ♖b6 28.♕xa7 d6 29.fxe7 (½½ Dragon 3.2-Stockfish, Classics 2023) 24.♖xe1 ♘e5! 25.♗xb7 ♖xb7 26w.♕e4 ♕xf3+ 27.♕xf3 ♘xf3 28.♖xe7+ ♔d8 29.♖xf7 werd ook gespeeld in de Classics-match van de engines en eindigde in een remise (½-½ Stockfish-Dragon 3.2, Classics 2023). Het eindspel zou remise moeten zijn, bijvoorbeeld 29…d6 30.♖xh7 ♘g5 31.♖g7 ♖b5 gevolgd door …♖f5;

C) 23.♗xe7 23…♕h3+ 24.♘h2 ♗xe1 25.♖xe1 werd ook gespeeld door engines en eindigde in remise (½-½ Stockfish-Dragon 3.1, Classics 2022). Een eenvoudige remise voor de engines… Sadler & Giddins gaan nog een paar zetten door: 25…♕h4! (de enige zet: 25…♕xc3 26.♘f3 is winnend voor wit) 26.♕d1 (ook de enige zet om de balans te behouden tegen de dreiging van …♘xe7) 26…♘xe7 27.♗xb7 ♕xf6! 28.♗g2 ♖b2 en zwart heeft genoeg tegenspel om de balans te behouden: 29.♕g4 ♔d8 30.♘f3 ♕g6 31.♕h3 ♖b1 32.♕h4 ♖xe1+ en de engines vonden dit ook prima zo, aldus Sadler & Giddins.

19…♕xf3?

Sadler & Giddins: “Het nemen van materiaal werd destijds bijna gezien als een morele plicht, maar dit stelt Anderssen in staat om zijn geniale idee te tonen.”

A) De auteurs stellen dat er tientallen jaren van analyse zijn besteed aan 19…♖g4 en het lijkt een volkomen redelijke voortzetting voor zwart, hoewel het niet de topkeuze van de engines is. Wat nu wel een goede voortzetting is, is:

A1) 20.♖e4 ♖xe4 21.♕xe4 d6 22.♖e1 ♕g6 23.♕xe7+ ♘xe7 24.♖xe7+ ♔d8 25.♗xg6 hxg6 26.♗c1 ♗d5 27.h3 ♗xa2 28.♖e4 ♔g8 29.♗h6 ♗d5 30.♖h4 ♗xf3 31.gxf3 g5 (noodzakelijk om de zwarte koning te bevrijden voordat ♗g7 gebeurt) 32.♗xg5 ♗c5 33.♔g2 ♖b2 34.♖g4 (½-½ Dragon 3.2-Stockfish, Classics 2023). Gelijk voor de engines, nog steeds een scherp, ongebalanceerd eindspel voor mensen;

A2) 20.♗c4 werd door Stockfish aangegeven volgens de auteurs en leidt tot enkele complexe tactieken: 20…♕f5 21.♖xd7 ♔xd7 (21…♕xd7 22.♖xe7+ ♘xe7 23.♗xf7+ is het idee: 23…♔xf7 24.♘e5+ ♔xf6 25.♘xd7+; 21…♖xg2+ 22.♔xg2 ♕g4+ 23.♔f1 ♕h3+ 24.♔e2 ♕xd7. (bedreigt …♘d4+) 25.♕b5 ♘g6 26.♕g5 en de aanval gaat door) 22.♘e5+ ♔c8 23.♘xg4 ♘d5 24.♖e8+ ♘d8 25.♗e7 c6 26.♗xd8 ♗xd8 27.♘e5 ♔c7 28.♕a5+ ♘b6 29.♖f8 (½-½ Stockfish-Dragon 3.2, Classics 2023). 29…♗xf6 30.♖xf7+ ♔c8 en alle drie de resultaten zijn mogelijk! Wit kan een remise nemen door herhaling met 31.♖f8+ om te beginnen.

B) In plaats daarvan stellen Sadler & Giddins dat de eerste keuze van de engines 19…♗d4! is, een desperado-offer om de d-lijn te blokkeren. Na 20.cxd4 (20.♗f1 ♗xf6 elimineert de f6-pion en laat wit alleen vechten om de balans te behouden; 20.♗xe7 ♖xg2+ 21.♔xg2 ♘e5 is het verbazingwekkende idee, waarbij het genie achter 11…b5 eindelijk wordt onthuld!) 20…♕xf3 21.♗e4 ♖xg2+ 22.♔h1 ♖xh2+ 23.♔xh2 ♕xf2+ 24.♔h1.

Zwart kan eeuwig schaak geven met 24…♕h4+ 25.♔g2 en een remise door eeuwig schaak, (½-½ Stockfish-Dragon 3.1, Classics 2022), en kan dat zelfs nog spectaculairder worden met 24…♘f5 25.♗g2+ (25.♗xf5+ ♘e5+ 26.d5 ♕xf5 is ook alleen maar remise) 25…♘e3 26.♖xe3+ ♕xe3 27.d5 ♕h6+ 28.♔g1 ♕e3+ enz.;

C) 19…♕h3 is de tweede keuze van de engines en leidt ook tot een soortgelijke gelijkheid na 20.♗f1 ♕f5 en nu – verbazingwekkend genoeg voor zo’n complexe stelling – lijken er meerdere manieren te zijn waarop wit kan spelen die de balans van de stelling niet beïnvloeden, waaronder 21.♗d3, 21.♔h1 en zelfs 21.h4 ! Sadler & Giddins laten hier ook de meest ‘schandalige’ variant zien: 21.c4 ♗a8 22.♔h1 ♕xf6 23.♗xe7 ♘xe7 24.♖xd7 ♔f8 25.♖exe7 ♕xf3 26.c5 ♕xg2+ 27.♗xg2 ½-½ (Dragon 3.2-Stockfish, Classics 2023). 27…♗xg2+ 28.♔g1 ♗h3+ 28.♔h1 ♗g2+ is een remise door eeuwig schaak.

20.♖xe7+! ♘xe7!?

Zwart gaat in op Anderssen’s uitdaging, maar deze zet verliest snel. 20…♔d8 was de enige kans, maar faalt vanwege 21.♖xd7+! ♔c8 (21…♔xd7 22.♗f5+ ♔e8 23.♗d7+ ♔d8 24.♗xc6+ ♔c8 25.♗d7+ ♔d8 26.♗e7#) 22.♖d8+! ♔xd8 (22…♖xd8 23.gxf3, terwijl 22…♘xd8: 23.♕d7+!! ♔xd7 24.♗f5+ ♔c6 25.♗d7#) 23.♗e2+ (of 23.♗f5+ ♕xd1+ 24.♕xd1+ ♘d4 25.♗h3 en wit wint) 23…♘d4 24.♗xf3 ♗xf3 25.g3 ♗xd1 26.♕xd1 en wit wint uiteindelijk op een prozaïsche manier in het eindspel (Kasparov).

21.xd7+!!

Fantastisch!!

21…xd7 22.f5+ e8

22…♔c6 23.♗d7#.

23.d7+ f8

23…♔d8 24.fxe7#.

24.xe7#

Tot slot:

Matthew Sadler en Steve Giddins hebben in hun boek een grondige en zeer gedetailleerde analyse geleverd van 40 klassieke schaakpartijen. Ze hebben de onderliggende strategieën en technieken geprobeerd te begrijpen en te versterken met behulp van AI-schaakmachines, wat de lezers in staat stelt om hun schaakinzicht te verbeteren. De uitvoerige en heldere uitleg maakt dit boek een uiterst waardevolle bron voor elke schaakliefhebber. Ik kan dit boek dan ook van harte aanbevelen aan iedereen die zijn of haar schaakspel naar een hoger niveau wil tillen.

Hoewel ik in deze recensie voornamelijk over Matthew Sadler heb gesproken, gezien mijn grotere bekendheid met zijn werk, wil ik benadrukken dat Steve Giddins ongetwijfeld een significante bijdrage heeft geleverd aan dit indrukwekkende boek. Het is evident dat hun gecombineerde inspanningen hebben geresulteerd in een uitgebreide en verhelderende analyse van klassieke schaakpartijen.

Bestelpagina op de website van de uitgever: newinchess.com/re-engineering-the-classics

Inkijk (pdf): newinchess.com/media/wysiwyg/product_pdf/9157.pdf

 

TitelRe-Engineering the Chess Classics

Auteurs: M. Sadler & S. Giddins

Uitgeverij: New in Chess

Pagina’s: 440

Gepubliceerd: 2023

Prijs: € 34.95/€ 29.95

ISBN: 9789083311265/978908311272

Type: paperback/e-book

15 Reacties

    • Avatar
      Ariton8 27 mei 2023

      Je hebt gelijk! Dat is een auto-correct geweest. Ik heb het aangepast!

  1. Avatar
    Matty 27 mei 2023

    Naar aanleiding van dit artikel over computerschaak, heb ik de volgende vraag:

    Is er iemand die net als ik problemen ondervindt bij het compileren van Stockfish 15 met Wasm als target?

    Bij het gebruik van Emscripten ondervind ik diverse problemen en aan een compilatie met Clang begin ik liever niet.

    P.s. Lichess.org heeft Stockfish 14 naar Wasm gecompileerd, maar hun oplossing op GitHub kan ik niet nabootsen.

    • Avatar
      Ariton8 27 mei 2023

      Ik weet niet of ik hier de goede heb, maar de Lichess oplossing op Github lijkt ook geen NNUE te hebben. Ik heb hier zelf geen ervaring mee, heb je het al een keer binnen het TCEC kanaal op Twitch geprobeerd te vragen?

      • Avatar
        Matty 28 mei 2023

        Twitch is van Amazon. Dat is Big Tech en bovendien een vreselijk naar bedrijf.

        Twitch zal ik dus niet bekijken, maar toch bedankt voor de tip.

        • Avatar
          Matty 28 mei 2023

          PS: In Stockfish 14 komt NNUE reeds voor. Dit is te lezen in de aankondiging van Stockfish 14.

          Stockfish heeft de NNUE-code in eigen folder ondergebracht: ./official-stockfish/Stockfish/src/nnue/.

  2. Avatar
    Caesar64 27 mei 2023

    Ariton, ga je er na het lezen van het boek van Sadler ook beter door schaken als je de schaakmachine begrijpt?

    • Avatar
      Ariton8 27 mei 2023

      Ik moet dat nog toetsen :). Ik geloof dat dit boek absoluut kan bijdragen aan het vormen van nieuwe strategieën. Daarnaast ben ik van mening dat het begrijpen van de schaakmachine je in staat stelt om je eigen partijen beter te analyseren, wat kan leiden tot aanzienlijke verbeteringen.

  3. Avatar
    Frits Fritschy 27 mei 2023

    Klein puntje: ik vind principieel dat recensies onder  eigen naam geschreven moeten worden. Behalve het aan te bevelen ‘open vizier’, moet een lezer kunnen nagaan of de schrijver niet op een of andere manier betrokken is bij het effect van de recensie.

    • Avatar
      Matty 28 mei 2023

      Vanwege de privacy schendingen die aan de orde van de dag zijn, is het verstandig om niet onder je eigen naam te schrijven. Je kunt aan de Schaaksite redactie laten weten wie je bent. Dan ben je niet anoniem, maar wel enigszins beschermd tegen de privacy schenders.

      • Avatar
        Frits Fritschy 28 mei 2023

        Nou, dat is dan blijkbaar erg onverstandig van al die anderen die hier wél onder hun eigen naam schrijven. Míjn privacy is de afgelopen tien jaar in ieder geval niet geschonden.

        • Avatar
          Ariton8 28 mei 2023

          Ik had zelf ook gedacht dat het klikken op mijn profiel hier zou leiden naar een pagina waar je mijn volledige naam kon vinden. Maar dat is niet zo. Ik heb wel degelijk mijn naam ingevuld, maar ik heb er bewust voor gekozen om mijn bijnaam/username te gebruiken!

          Ik begrijp dat er enige verwarring kan ontstaan. Hoewel ik van mening ben dat een extra zoekactie op schaaksite naar ‘Ariton‘ geen grote inspanning zou moeten zijn (vergelijkbaar met het achterlaten van een comment), zal ik toch mijn naam hier verduidelijken voor gemak: Ariton Debrliev.

          Zal het ook even bespreken. Bedankt voor de comment! 🙂

    • Avatar
      Ariton Debrliev 29 mei 2023

      Hi Frits,

      Bedankt voor de input eerder en ik heb inderdaad besloten mijn bijnaam na wat na wat nadenken te verwijderen.

      Gr, Ariton

  4. Avatar
    Wimvanderwijk 29 mei 2023

    Dank voor deze doorwrochte recensie die inderdaad een normale ondertekening verdient. De kwalificatie van Matthew Sadler als Schaakengine Fluisteraar is een geweldige vondst. Een vlag die de lading dekt. Een speelse eretitel die hem volledig toekomt!

    • Avatar
      Ariton Debrliev 29 mei 2023

      Hartelijk dank voor je vriendelijke woorden en je waardering voor mijn recensie. Goed om te horen dat de kwalificatie van Schaakengine fluisteraar als een schot in de roos wordt gezien! Ik heb inmiddels de bijnaam aangepast. Gr, Ariton

Alleen geregistreerde gebruikers kunnen een reactie achterlaten.