BAGGRUND: AlphaZero spiller skak på en overnaturlig måde
Folkene fra DeepMind i London har gjort det igen. Lavet et nyt system, der mestrer kunsten at spille brætspil bedre end nogen på Jorden.
Det nye program AlphaZero er en generalisering af det tidligere program AlphaGo Zero, der lærte sig selv at spille det komplicerede asiatiske spil Go. Det nye program spiller ikke alene Go bedre end alle andre. Det er også verdens bedste til skak og shogi, også kaldet japansk skak.
Læs også: AlphaGo beviser: Kunstig intelligens bliver bedre uden ekspertviden fra mennesker
Partikelfysikeren og skakentusiasten Thomas Dorigo peger på denne situation som et godt eksempel på AlphaZeros næsten overnaturlige evne til at spille skak. Sort er kommet i en låst situation, hvor løberen på de hvide felter ikke er til megen nytte, mens hvid (AlphaZero) har mere rum for at udvikle spillet, men hvordan kommer hvid bedst videre? De fleste vil nok flytte tårnet til c1 eller måske overveje at bringe kongen i sikkerhed via e2 og f2, mener Dorigo, men AlphaZero valgte noget helt andet, nemlig at flytte kongen til e3. Det er normalt ikke anbefalelsesværdigt at flytte kongen ud på midten af brættet, men her åbner det for flere angrebsmuligheder for de øvrige brikker. Måske kunne de allerbedste skakspillere finde på noget lignende, men ingen andre skakprogrammer ville gøre det, mener Thomas Dorigo.Det er genialt, det der
I løbet af et døgn lærte AlphaZero sig selv at spille alle tre spil uden noget som helst andet input end reglerne for de forskellige spil.
Programmet blev ikke fodret med tidligere spillede spil, det modtog ingen ekspertviden om åbninger, taktik eller godt råd. Intet.
Selv om det er 20 år siden IBM’s DeepBlue slog verdens bedste skakspiller, Garry Kasparov, og interessen inden for kunstig intelligens de senere har været fokuseret på Go, som er meget kompliceret at analysere, så er det nok den måde, som AlphaZero spiller skak på, der har vakt mest interesse i denne omgang.
Til internationale medier har den danske stormester Peter Heine Nielsen, der er træner for den norske verdensmester Magnus Carlsen, sagt det rammende på denne vis:
»Jeg har altid tænkt over, at hvis vi fik besøg fra rummet, hvordan ville de så spille skak? Nu ved jeg det.«
Til Ingeniøren tilføjer han;
»Det er det mest fascinerende og skræmmende jeg har set.«
Tavlen var visket ren fra begyndelsen
AlphaZero begyndte som nævnt på bar bund som den dummeste amatørspiller eller med en 'rengjort tavle' - tabula rasa som det betegnes inden for erkendelsesteorien.
I skak og for den sags skyld Go og shogi forsøger man at forudse spillets udvikling mange træk længere frem - hvad enten man er menneske eller computerprogram. Computerprogrammer kan analysere mange flere kombinationer end mennesker, som i høj grad må bruge deres erfaring og intuition til at analysere meget få muligheder i dybden. Selv computerprogrammer må dog søge at begrænse antallet af søgninger bedst muligt for at komme gennem deres opgave. Den traditionelle teknik til at beskære i søgetræet går under navnet alfa-beta-beskæring og har sin oprindelse helt tilbage i 1950’erne. Med denne metode kan man på enkel vis finde grene i søgetræet, som det unødvendigt at undersøge, fordi de ikke kan lede til et resultat, som er bedre end et allerede fundet. AlphaZero bruger i stedet Monte Carlo-søgning, hvor man udvælger de dele af træet, der ser mest lovende ud. Denne metode har hidtil i praksis været dårligere end alfa-beta-beskæring, men DeepMind har udviklet deres egen version af denne søgeteknik, og med denne kan AlphaZero nøjes med at analysere 80.000 positioner i sekundet i skak, mens Stockfish analyserer 70 millioner - og alligevel gøre det meget bedre.Søgeprocedurer
Med en teknik kaldet reinforcement learning justerede AlphaZero løbende sit neurale netværk, så det blev bedre og bedre end alle andre programmer og mennesker på denne jord. Og det gik rasende hurtigt.
Det foregår ved, at AlphaZero spiller mod en variant af sig selv, hvor det neurale netværk er justeret en smule anderledes. På den måde opdateres det neurale netværk løbende, der bliver også tilført lidt støj til opdateringen af det neurale netværk under indlæringen , så det får afprøvet nogle indstillinger, som det ellers ikke ville have undersøgt.
Læs også: Nysgerrige maskiner lærer hurtigere
Efter fire timer træning var programmet bedre end verdens bedste hidtil bedste skakspiller programmet Stockfish. Det tog kun to timer at blive bedst til shogi.
Den samlede træningstid i skak var ni timer, og i denne periode spillede AlphaZero 44 millioner spil.
Stockfish blev nedspillet
Efter at have lært sig selv skak spillede AlphaZero mod verdens stærkeste kommercielle skakprogram Stockfish i en match over 100 partier.
I de 50 partier, hvor AlphaZero havde de hvide brikker, blev resultatet 25 sejre til AlphaZero og 25 remis.
Med de sorte brikker vandt AlphaZero 3 partier og spillede 47 remis. Altså ingen nederlag overhovedet.
I lyset af Peter Heine Nielsens kommentar er det interessant at se nærmere på, hvordan AlphaZero spiller skak.
Favoritåbninger skifter under læring
Af den videnskabelige artikel fremgår det, at AlphaZero selv lærer de 12 mest almindelige åbninger i skak. De opstår gradvist i læringsperioden.
Nogle af disse åbninger syntes AlphaZero dog at blive træt af igen.
AlphaZero kører på en enkelt maskine med fire tensorprocessorer (TPU), som er specielt udviklet af Google til dette formål. DeepMind er et datterselskab under Alphabet, som også er moderselskab for Google. Tensorprocessorer er optimeret med hensyn til antallet af beregninger og input/operationer på bekostning af beregningsnøjagtigheden. De er særligt velegnede til maskinlæring.Speciel hardware
Det gælder f.eks. Caro-Kann, som AlphaZero opdager efter to timer og spiller forholdsvis jævnligt, indtil der er gået seks timer, hvorefter programmet stort set ikke længere spiller denne åbning,
Det tager til gengæld lang tid for AlphaZero at opdage dronningegambit, som hører til AlphaZeros foretrukne åbninger ved afslutningen af de ni timers træning.
DeepMind har offentliggjort 10 partier spillet mellem AlphaZero og Stockfish. Diverse skak-sites har kastet sig over disse med stor interesse, og mange venter på endnu flere partier i håbet om at lære om det klassiske brætspil fra den nye mester i byen.
Er AlphaZero så det optimale skakprogram?
På ingen vis. I den videnskabelige artikel gør DeepMind opmærksom på, at der er lang række teknikker, som findes i en række tidligere programmer inkl. DeepBlue, der måske med fordel kan bruges i AlphaZero. I første omgang har forskerne dog valgt at fokusere på den rene form for reinforcement learning og efterlade dette til fremtiden.
