Saturday, April 23, 2016

Go Monte Carlo


Skynet may not be too far from becoming a reality, I guess? Last month, the computer program AlphaGo beat Lee Sedol, a professional 9-dan Go player, in a non-handicapped Go match.  I am not sure whether he is the best human Go player ever, but he is definitely regarded as the world champion at the moment. For a computer program to win against the best of us, it is definitely a milestone in AI research after Watson and Deep Blue. Although I didn't know how to play Go before the event, I did know some basics because I used to be quite good in a lesser version of Go : Dian Dian Qi (點點棋). To put it simply, it is Go without the area scoring and focus only on capturing. And we play with pens on paper instead of stones on board. I try to find the official rules but nothing found.  

I know this entry is kinda late compared to other news articles about the epic Go match-up. But I like to watch the match-up before I say anything about it. So I did it through several weekends. Yes, I said weekendS! Each of the 5 games is so long, each one lasts like around 4 hours. In fact, it is normal for a Go game to last very long. In ancient times, some games might even last beyond several days. Of course, I didn't sat down in front of computer watching all 5 games. I only kinda watched the first, the fourth and fifth game. Most of the time, I just let the video play at the background and I did something else. All 5 games and corresponding summary videos can be found on the DeepMind Youtube channel (DeepMind). I already expected AlphaGo to win before I watched the match. Anyway, I am glad that Lee Sedol was still able to win a game out of five. 

So why all the fuss and news reports about this event? If you pays attention, then you will know that it is all about creating a general purpose AI (artificial intelligence). The victory of AlphaGo indicates that we are heading to that direction. However, it is just a rung on the ladder, as the CEO of DeepMind, Demis Hassabis says. Two keywords basically sum up what AlphaGo is : Monte Carlo tree search and deep learning. Monte Carlo (MC) method is actually a broad term to all algorithms which use statistical approach and random sampling to solve a problem. As for now, I am really into MC method as I am currently working on one : MC for photon transport. MC method is powerful tool to accurately solve a lot of different problems, providing the random generator is of good quality and sufficiently large amount of random samples. 

Large amount of samples and especially deep learning, require certainly a lot of computing power, if you want solution to the problem in a reasonable limit of time. That's why my work in CEA Grenoble now is focusing mainly on accelerating the MC program by using GPUs. Last week Nvidia launched the new Tesla P100 GPU model and the DGX-1 supercomputer. Even though I know that there is no way that I can get my hand on a Tesla P100 shortly, I got to admit, the news really got me excited. But we need to keep a cool head, the real performance and applicability of this new generation of GPU still needs to be tested with time.     




















  

No comments:

Post a Comment