Nu lærer computeren selv at spille skak

Nu lærer computeren selv at spille skak

Share
Et nyt princip

Alle hidtidige, populære skakmotorer er baseret på minimax-algoritmen, hvor det træk udvælges, der giver den største fordel uanset, hvad modstanderen spiller. Minimax forbedres med alfa-beta-beskæring, som reducerer antallet af variationer, der skal undersøges.

Når computeren overvejer et træk, analyserer den alle modstanderens mulige svar. Lad os sige, at der er 20 mulige svar. Et af disse svar fører til mat – eller tab af en vigtig brik. Derefter vil programmet opgive det skridt uanset, hvor dårligt den ville stå efter nogle af de 19 andre svar.

Dette princip kombineres med andre principper som for eksempel kendskab til tidligere spil og forventningen om gentagelse af bestemte mønstre.

AlphaZero bruger derimod Monte Carlo Tree Search eller MCTS. MCTS evaluerer en position ved at generere et antal bevægelsessekvenser (kaldet “playouts”) tilfældigt og beregne de gennemsnitlige slutresultater. Dette tilfældighedsprincip gør, at maskinen i sin læringsproces tager skridt, som et menneske aldrig ville tage. Derfor oplever vi dens spil som fremmed eller ligefrem vanvittigt.

Men fordi den har kraft nok til at gennemgå ufattelige mængder af spil giver denne fremgangsmåde også maskinen en erfaring, hvor disse tilsyneladende vanvittige træk virker. Disse træk tager den uden tilsyneladende at tænke meget over det. Og det skaber illusionen af at møde en maskine med en ”over-menneskelig” intuition.

En svaghed i MCTS er, at dens playouts er tilfældige. Derfor kan det gå helt galt i bestemte stillinger, hvor der kun er én bestemt linje til optimalt spil. Hvis programmet ikke tilfældigvis vælger denne linje, vil det sandsynligvis tabe.

Det begyndte med en skaktyrken i 1770

Skaktyrken var verdens første skakcomputer – uden at være det.

Den første skakspillende maskine blev præsenteret i 1770. ”Skaktyrken” havde form som en træfigur i tyrkisk klædedragt bygget sammen med et stort skrivebord, hvorpå der stod et skakspil. Bag låger i skrivebordet kunne man skimte en urværk-lignende mekanik, som sammen med lyden af drejende tandhjul og løbende stålkæder gav indtryk af, at der virkelig var tale om en mekanisk robot, der var i stand til at spille skak uden menneskelig indblanding.

Se også:  Det bedste fra IFA: Teknologiske tigerspring i Berlin

Skaktyrken blev dog styret af en lille person, der gemte sig i skrivebordet, og som fulgte med i spillet ved hjælp af magnetiske skakbrikker og et omvendt skakbræt under bordet. Men det blev først afsløret mange år senere og inden det, nåede Skaktyrken at slå både Napoleon og den senere amerikanske præsident Benjamin Franklin. Turing kom på banen Den første rigtige skakcomputer blev dog først fremstillet senere.

En af frontfigurerne var Alan Turing (ham der knækkede nazisternes enigma-kode), der udviklede ideen bag skakcomputer-programmer. For Turing, der begyndte at arbejde på programmet i 1948, havde ikke en computer at køre sit program på og gennemførte derfor selv de lange rækker af beregninger i hånden ved hjælp af en blyant og strimler af papir.

Se også:  Sony Xperia XZ3 [TEST]: Afsindig lækker skærm i Sonys slanke topmobil

Det tog ham efter sigende i omegnen af 30 minutter at gennemføre et træk. I 1956 lykkedes det at programmere en Univac Maniac I computer til at spille skak på et 6 x 6-bræt uden tårne. Men allerede året efter programmerede man på MIT i USA en IMB 704 til at spille skak på et fuldt bræt. I 1958 tabte et menneske for første gang til et computerprogram.

Den menneskelige spiller havde dog aldrig spillet skak før. Den første skakstormester, der tabte til en computer, var Michael Stean i 1977. I 1985 udfordrede den daværende verdensmester Kasparov de 15 bedste skakcomputere i verden og vandt hvert eneste spil.

I 1997 lykkedes det så folkene bag IMB Deep Blue at slå Kasparov. Men Kasparov har aldrig accepteret resultatet, og i 2003 spillede han uafgjort mod Deep Blues efterfølger, Deep Junior.

Er den intelligent?

Hvordan skal vi som almindelige ikke-computer-specialister forstå en skakcomputer, der lærer sig selv at spille ved hjælp af metoder, specialisterne kalder kognition, intuition og intelligens?

”Kognition, intuition og intelligens er menneskelige kompetencer, som vi gerne vil overføre til computere. Der er ikke nogen fysisk grund til, at det ikke skulle kunne ske. Hjernen er stadig, både i bredde, dybde og energieffektivitet, mange gange bedre end vore computersystemer. Men computerne kommer tættere og tættere på,” siger Lars Kai Hansen.

Del denne