Padł kolejny bastion, w którym królował człowiek - komputer wygrał w go
Amerykański szachista i miłośnik gry go, zmarły w 1981 roku Edward Lasker powiedział, że skoro szachy to król gier, to go jest ich cesarzem. Ta pochodząca ponoć z 2000 roku p.n.e. prosta chińska gra jest spełnieniem zasady, którą powinny się kierować dobre gry: jest łatwa do nauczenia, ale trudna do wygrania.
Zasady gry w go można streścić w kilku zdaniach. Na pewno nie są tak złożone, jak zasady rządzące szachami (może nawet prostsze od warcabów). Nie istnieją w nich też różne figury - jedyne czym gramy to równoważne białe i czarne kamienie oraz plansza posiadająca rozmiary 19 na 19 linii - choć początkujący często grają dla uproszczenia na planszach mniejszych.
Proste zasady, złożona rozgrywka
Każdy z graczy wykłada po jednym kamieniu w kolejce. Położonego kamienia nie można przesunąć, ale można go zbić (lub całą grupę kamieni) przez kompletne otoczenie ich kamieniami innego koloru. Takie kamienie zdejmuje się z planszy. Obowiązuje również reguła nie kładzenia kamienia w miejsce zbitego - tak aby zapobiec możliwości rozpoczęcia "nieskończonej", nigdy nie rozstrzygniętej rozrywki.
Ponieważ w takiej grupie nie może być "dziur", podstawową strategią zabezpieczenia się jest zostawianie tzw. oczu (dwóch niewypełnionych pól) w grupie.
Rozgrywkę wygrywa ten z graczy, który na końcu gry będzie miał otoczony swoimi kamieniami większy obszar planszy (wraz z doliczonymi "więźniami", czyli zbitymi kamieniami przeciwnika). Koniec gry zaś następuje, gdy obaj przeciwnicy w tej samej kolejce uznają, że nie mogą zrobić ruchu.
Jak widać, gra jest rzeczywiście prosta. To, co przeczytaliście powyżej, jest już praktycznie wystarczające, aby rozegrać partię w go, szczególnie na mniejszej (np. 9 x 9) planszy.
Wydawałoby się więc, że stworzenie programu komputerowego grającego w miarę dobrze w tę grę, nie powinno być bardziej skomplikowane niż napisanie programu szachowego, których przecież jest bardzo wiele.
Okazuje się, że pod prostymi zasadami gry go kryje się złożona strategia. W szachach pierwszy ruch (tzw. otwarcie) ograniczony jest do kilkunastu możliwości - co umożliwia stworzenie przekalkulowanych drzew gry. W przypadku go jest odwrotnie - pierwszy ruch to kilkaset możliwości (19x19 = 361). W trakcie gry liczba możliwości spada aż do momentu pierwszego zbicia - wtedy ponownie rośnie. Zbicia potrafią zmienić sytuację na całej planszy, często w sposób dramatyczny przeważyć szalę zwycięstwa.
To wszystko powoduje, że efekt ruchu często możemy ocenić dopiero po kilkudziesięciu kolejkach, a żaden z programów grających w go nie zbliżył się dotąd do umiejętności człowieka.
Zadanie w sam raz dla sztucznej inteligencji
Nic dziwnego, że dla naukowców i firm zajmujących się rozwijaniem sztucznej inteligencji to właśnie go jest jednym z wyzwań, które warto podjąć, bo symbolizują ludzką dominację na tym polu. Niedawno Mark Zuckerberg wspomniał w notce na Facebooku, że ma w biurze specjalny zespół naukowców zajmujących się trenowaniem AI do celu gry w go. Jednym z jego członków jest doktor robotyki, Yuandong Tian, autor wielu artykułów naukowych na tematy sztucznej inteligencji i logiki rozmytej.
Jak się okazuje, Google także nie zasypiał gruszek w popiele i również wystawił swoich badaczy do pokonania człowieka w go za pomocą algorytmu. Sztuczna inteligencja nazwana AlphaGo została wytrenowana za pomocą danych o 30 mln ruchów w grach odbywanych przez profesjonalnych graczy. Proces trwał aż do momentu, w którym sieć neuronowa była w stanie przewidzieć ruch człowieka w 57% przypadków.
Wtedy rozpoczął się drugi etap treningu - sieci neuronowe zaczęły rozgrywać miliony partii go pomiędzy sobą, doskonaląc swój styl gry. Jest to metoda uczenia maszynowego o nazwie "uczenie przez wzmacnianie" (reinforced learning). Pozwala ona na wytworzenie własnej, nieznanej przedtem strategii. Powstały w ten sposób program nie jest zwykłym systemem ekspertowym, ale posiada samodzielnie wypracowaną strategię wygrywania.
Po zakończeniu etapu uczenia maszynowego, Google przeprowadziło wewnętrzny "konkurs" - AlphaGo zagrała z innymi programami do gry w go. Udało jej się wygrać 499 z 500 rozegranych meczy. Nie oznaczało to jednak jeszcze, że byłaby w stanie wygrać z ludzkim przeciwnikiem. Sprawdzono to w październiku zeszłego roku. Zaproszono w tym celu do londyńskiego biura Google zawodnika, który przez całe życie związany był z tą grą. Fan Hui, bo o nim mowa, jest trzykrotnym mistrzem Europy.
Mistrz przegrał z AlphaGo pięć rozgrywek na pięć. Był to pierwszy przypadek udokumentowanego pokonania profesjonalnego gracza w go przez program komputerowy.
Kolejnym krokiem dla AlphaGo będzie mecz w mistrzem świata, który odbędzie się w marcu.
Człowiek pokonany na kolejnym polu
W 1952 roku człowiek został po raz pierwszy pokonany przez komputer w grę w kółko i krzyżyk. W 1994 program okazał się lepszy od profesjonalnego gracza w szachy, a w 1997 roku komputer Deep Blue pokonał w szeroko komentowanej walce samego Garry'ego Kasparova. Przejęcie pałeczki w kolejnej z gier logicznych, w cesarskiej grze go, zdaje się być teraz kwestią czasu.
Źródła: Google Blog, Arxiv