GO for IT Guillaume Chaslot Jaap van den Herik Mark Winands (UM) (UvT / Big Grid) (UM) Partnership for Advanced Computing in EUROPE Amsterdam, NH Hotel, Industrial Competitiveness: Europe goes HPC Krasnapolsky, September 3, 2008 PRACE meeting Dinner Talk 1
From Maastricht to Tilburg Tilburg University: TiCC TiCC stands for Tilburg Centre for Creative Computing The start was September 1, 2008 So, you are privileged to become familiar with TiCC already now 2
Technology and Future 1950 Mechanization Intelligent Programs Intelligent E-commerce 1970 1990 2000 Computerization Information handling Communication (ICT) E-commerce 2005 Agent Technology 2010 Ant Technology (Grid) 2030 Singularity Point 3
Go for IT Data Handling Information Technology Knowledge Engineering Agent Technology Grid Technology / Supercomputing 4
Go for Intelligence Games Gaming Serious Gaming 5
Go for Power PCs IBM 360 / 65 370 / 158 370 / 168 Supercomputers 1997: RS 6000 defeats Kasparov on Chess TERAS HUYGENS defeats Kim Myungwan on Go (9-stone handicap) 6
Four Challenging Questions 1. Can a computer play Go? 2. Can a computer defeat the human world champion? 3. Can a computer solve the game? 4. Are some generic ideas applicable elsewhere? 7
Computer Olympiad Initiative of David Levy (1989) Since 1989 there have been 12 olympiads; 4x Londen, 3x Maastricht, 1x Graz, 1x Ramat-Gan, 1x Taipei, 1x Turin, 1x Amsterdam Goal: Finding the best computer program for each game Connecting programmers / researchers of different games Computers play each other in competition Demonstrations: Man versus Machine Man + Machine versus Man + Machine 8
Computer versus Computer 9
Computer Olympiad In Amsterdam, June 2007 80 participants in several categories Competitions in Olympiad's history: Abalone, Awari, Amazons, Backgammon, Bao, Bridge, Checkers, Chess, Chinese Chess, Dots and Boxes, Draughts, Gipf, Go-Moku, 19x19 Go, 9x9 Go, Hex, Lines of Action, Poker, Renju, Roshambo, Scrabble, and Shogi In September 2008 in Beijing 10
Overview Solved Super human World champion Grand master Amateur Connect-four Amazons Go Qubic Gipf Draughts (10x10) Bridge Arimaa Go-Moku Othello Chinese Chess Shogi Renju Scrabble Hex Kalah Backgammon Poker Awari Lines of Action Nine men s morris Checkers (2006) Bao Chess (2006) 11
Go Computer Go programs are weak Problem: recognition of patterns Top Go programs:handtalk and MoGoTitan 12
13
Go for Go NWO: 2005 Maastricht / Tilburg Jaap van den Herik Jos Uiterwijk Mark Winands Jahn Saito Guillaume Chaslot (link to French) 14
- top contributors: MOGO University of Paris Sud: 2006 - Jean-Yves Albert - Remi Munos - Guillaume Chaslot - Julien Perez - Christophe Fiter - Arpad Rimmel - Sylvain Gelly - Olivier Teytaud - Jean-Baptiste Hoock - Yizao Wang - Other contributors are: Vincent Danjean, Thomas Herault, Georges Bolsilca, David Silver - Most important institutes are (i) Tao, Inria, Cnrs, Universite Paris- Sud, Grid 5000, (ii) Institutes supporting G. Chaslot 15
Development of MoGo and MoGo Titan - Started in 2006 by Sylvain Gelly and Yizao Wang at University of Paris- Sud - August 2006: Takes the highest rank program on the 9x9 Computer Go Server. It still holds this rank for 2 years long. - June 2007: wins the 12th Computer Olympiads in Amsterdam, and first program ever to defeat a professional on 9x9 in a blitz game. - April 2008: wins the first non-blitz game against a professional. - May 2008: involvement of the project GoForGo leading to MoGo-Titan. - August 2008: wins the first match ever against a professional on 19x19 with 9 stones handicap (running on Huygens). This result is acknowledged as a milestone for AI. 16
MOGO is the French part MOGO TITAN IS THE NEW NAME and TITAN is the finding by Christian Huygens (a satellite moon around Saturnus) The name is taken as a tribute to Supercomputing in the Netherlands 17
The 9 stone Match - The professional commented: I think there s no chance on nine stones, it would even be difficult with eight stones. MoGo played really well; after getting a lead, every time I played aggressively, it just played safely, even when it meant sacrificing some stones. It didn t try to maximize the win and just played the most sure way to win. It s like a machine. 18
Financial partners: Partners of MoGo-Titan Partners providing computational time: 19
National Supercomputer in NL What When Flop/s Processors CDC Cyber205 1983 100 M100 1 CDC Cyber205 1987 200 M 200 M 2 Cray YMP 1990 1.3 G 1.3 G 4 Cray C90 1994 4 G 4 G 4 Cray C90 1997 12 G 12 G 12 SGI Origin 2000 1 T 1 T 1024 SGI Altix 2003 3.2 T 3.2 T 1440 IBM p5+ 2007 15 T 15 T 1920 IBM p6 2008 >60 T >60 T >3000 Software effort So the gain will be almost 1 M in 25 years 20
P6- architecture # of processors 3328 Water cooled Huygens at SARA MoGo had 800 processors at its disposal This was over 1000 times as powerful as the RS 6000 (1997) defeating Kasparov. 21
August 8, 2008 Portland - Oregon MoGo Titan plays Kom Myungwan A 9-stones handicap match The machine wins 22
IBM Supercomputer Huygens Used - MoGo using Huygens (provided by SARA) is called MoGo-Titan - The processors are IBM Power6 at 4.7Ghz. - Each node has 32 cores, and 256 GB of RAM. - It uses generally 10 to 25 nodes, out of 104 nodes. - Parallelization is using OpenMPI. 23
Human-Computer Matches in Go - For a long time, a prize of 40,000,000 NTD (1,400,000 $) for the first computer Go-playing program that would succeed in beating a Taipei Go Professional without handicap. The prize was donated by Ing Chang-Ki and was valid until 2000, due to the death of Ing Chang-Ki. - 400,000 NTD (14,000 $) were offered to a program that would beat a professional at 9 stones. Numerous attempts were made but no program ever won. - More information on the numerous attemps are listed here: http://senseis.xmp.net/?ingprize 24
Rank of the best programs: 9 dan Evolution of the level of programs 1 dan 9x9 19x19 20 kuy 1968 1978 1988 1998 2007 2008 (Albert Zobrist) 25
The Difference between Chess and Go Chess: Search Tactics play an important role Go: Pattern Recognition Strategy is much more important 26
Two breakthroughs that enabled Go to play at acceptable level 1. Monte Carlo Search (Brügmann and Bouzy) 2. UCT algorithm (Chaslot, Coulom, Kocsis) UCT stands for Upper Confidence bounds applied to Trees 27
- Monte-Carlo Tree Search: underlying idea 28
- Exploration-exploitation dilemma: If only the best moves are explored (too few explorations), the algorithm is focusing on a few moves, and moves that - did not seem promising are forgotten. If too many moves are explored, the branching factor is too high and the search is not deep enough Alternative solutions have to be found (Progressive strategies, RAVE, etc ) 29
SUPERCOMPUTING, CONCLUSION MONTE CARLO TREE SEARCH and the UCT algorithm have sped up the performances in computer Go 30
FUTURE EXPECTATIONS MoGo-Titan defeats a top Go player in 2008-9 stones handicap 2009-8 stones handicap 2010-7 stones handicap 2011-6 stones handicap 2012-5 stones handicap 2014-4 stones handicap 2016-3 stones handicap 2018-2 stones handicap 2019-1 stones handicap 2020 - MOGO-TITAN defeats the human Go World Champion The singularity point in Go is reached 31
MESSAGE Ray Kurzweil (2007): The singularity point is near The general point is due 2030 (Kurzweil) 2048 (others) 2400 (disbelievers) Nobody will deny the development. Everybody will think about the future. 32