In maart 2016 verloor Lee Sedol — een van de beste Go-spelers aller tijden — drie partijen op rij tegen een computerprogramma. Hij weende. Miljoenen mensen keken toe. Het was een moment dat de wereld van AI fundamenteel veranderde.
Go is een bordspel met eenvoudige regels maar astronomische complexiteit. Het heeft meer mogelijke spelposities dan er atomen in het waarneembare universum zijn. Schaakcomputers konden brute-force rekenen — Go was altijd beschouwd als onmogelijk voor computers, omdat intuïtie en patroonherkenning domineerden boven berekening.
Hoe AlphaGo werkte
DeepMind (eigendom van Google) nam een radicaal andere aanpak dan Deep Blue bij schaak. AlphaGo combineerde:
- Supervised learning: trainen op 160.000 menselijke partijen
- Reinforcement learning: tegen zichzelf spelen om beter te worden
- Monte Carlo Tree Search: slim selectief vooruitrekenen
- Deep neurale netwerken: patroonherkenning op boardposities
De beroemde 37e zet
In de tweede partij speelde AlphaGo zet 37 op een positie die menselijke experts “menselijk onmogelijk” noemden. Lee Sedol verliet de zaal voor vijftien minuten. Commentatoren geloofden dat het een fout was. Het bleek een creatieve meesterzet die achteraf een sleutelrol in de overwinning speelde.
AlphaGo won vier van de vijf partijen. Lee Sedol won er één — partij vier — met een menselijke tegenzet die later “de God-zet” werd genoemd. In zijn pensioenverklaring in 2019 noemde hij AlphaGo als de reden: een entiteit die niet te verslaan is.
AlphaGo Zero: leren zonder menselijk voorbeeld
In 2017 publiceerde DeepMind AlphaGo Zero — een versie die helemaal zonder menselijke partijen werd getraind. Het leerde Go uitsluitend door tegen zichzelf te spelen, beginnend van nul. Na drie dagen versloeg het de versie die Lee Sedol had verslagen. Na 40 dagen was het het sterkste Go-programma ooit gemaakt.
AlphaGo Zero bewees dat machines menselijke kennis niet nodig hebben als startpunt — ze kunnen die kennis zelf ontdekken, en vervolgens overstijgen. Dat principe — self-play reinforcement learning — wordt nu gebruikt in robotica, medicijnontwikkeling en wetenschappelijke simulaties.