Lessons Learned from AlphaGo
Steffen Hölldobler, Sibylle Möhle, Anna Tigunova
Young Scientists' International Workshop on Trends in Information Processing
The game of Go is known to be one of the most complicated board games. Competing in Go against a professional human player has been a long-standing challenge for AI. In this paper we shed light on the AlphaGo program that could beat a Go world champion, which was previously considered non-achievable for the state of the art AI. Introduction The game of Go has been around for centuries and it is indeed a very popular brainteaser nowadays. Along with Chess and Checkers, Go is a game of perfect
... ormation. That is, the outcome of the game solely depends on the strategy of both players. This makes it attractive to solve Go computationally because we can rely on a machine to find the optimal sequence of moves. However, this task is extremely difficult due to the huge search space of possible moves. Therefore, Go has been considered a desired frontier for AI, which was predicted to be not achievable in the next decade [BC01] . Until recent time, many computer Go bots appeared, still they barely achieved the level of a master player, let alone play on a par with the professionals [RTL + 10]. However, in the beginning of 2016, Google DeepMind published an article, where they stated that their program, AlphaGo, was able to win over a professional player [SHM + 16]. Several months after that AlphaGo defeated the world Go champion in an official match, an event of a great importance, because now the "grand challenge" [Mec98, CI07] was mastered. The problem with Go is the size of the board, which yields a 10 170 positions state space [MHSS14, VDHUVR02]. In comparison, Chess' state space is about 10 43 [Chi96]. Such games are known to have a high branching factor -the number of available moves from the current position. The number of possible game scenarios in Go is greater than the number of atoms in the universe [TF06] . The authors of AlphaGo managed to solve this problem. The system they designed is based on tree search, boosted by neural networks predicting the moves. However, all these techniques are not novel in computer Go and have been utilized by other authors, too. So what makes AlphaGo so special? In our paper we address this question. Here we discuss how AlphaGo is designed in the context of the history of computer Go. By unfolding the architecture of AlphaGo we show that every single detail of its implementation is a result of many years' research, but their ensemble is the key to AlphaGo's success. The rest of the paper is structured as follows. First, we provide an overview of Go. After that we show how the state of the art research tried to solve Go, followed by the description of AlphaGo's approach.