Go (boardgame)

beCamp 2018

Michael Holroyd, Ph.D.

History of Go

Go originated at least 2500 - 4000 years ago in China. It is the oldest game still played in its original form.

400-300 BC, Chinese scholars such as Confucius wrote about Go to illustrate correct thinking about filial piety and human nature.

In 1000 AD, it is in Japan and is seen in Murasaki's The Tale of Genji (first "novel" ever written)

by 1600's playing Go is one of the "Four Accomplishments" (with calligraphy, painting, and playing the lute) that must be mastered by the Chinese gentleman.

19 x 19 board, with black and white stones

Players alternate placing a stone (or passing)

Rule 1. A stone or solidly connected group of stones of one color is captured and removed from the board when all the intersections directly adjacent to it are occupied by the enemy. (Capture of the enemy takes precedence over self-capture.)

Rule 3. Scoring

Territory surrounded (not occupied) + captured stones

Quick Example 9x9 Game:

https://www.britgo.org/intro/intro3

Computer Go

Why is Computer Go considered "hard"?

Chess positions per move:
1, 20, 400, 5362, ...
http://oeis.org/A083276

Go positions per move:
361, 129960, 46655640, 16702719120, ...

Computer Go

Chess made significant progress using quick "position quality" estimation, and searching along paths with good positions. 1997:

Computer Go

Both the "position quality" estimation and the "search" problem are significantly more difficult in Go.

State-of-the-art in Go in 2008 was based on pattern-matching and search tree pruning. Actually fascinating code!

GnuGo: http://git.savannah.gnu.org/cgit/gnugo.git
`````` Pattern Nonterritory59
# gf New pattern. (3.7.2)
# See gunnar:58.

?OOX
X...
?OO?

:8,t

?OOE
Dabc
?OO?

;!oplay_attack_either(a,c,D,c) && !oplay_attack_either(c,a,E,a)

>non_oterritory(b);``````

post-2008

Computers finally fast enough for Monte-Carlo techniques

Monte-Carlo Tree Search (MCTS)

1. From any position, use a "dumb/fast" AI to play 100,000s of quick games to completion.

2. Even though these won't look like "real games", the percentage of "wins" is a good proxy for the quality of the board position

2008: Sudden, massive improvement in Computer Go ranking over previous approaches, but still not approaching professional play

AlphaGo

Started in 2014 funded by Alphabet (Google). Essentially uses MCTS but trains a position quality ranking from deep neural net.

2016 AlphaGo has already beat a professional player, and is facing off against one of the worlds top players, Lee Sedol.

Spoiler Alert: Lee Sedol loses 4 - 1

Thanks!

Scenethink (event data platform):
http://scenethink.com

Arqball (computer vision and visualization):
http://arqball.com

Michael Holroyd
http://meekohi.com

Go (boardgame)

By Michael Holroyd

Go (boardgame)

Rules. Quick History of Go AI through AlphaGo

• 199