What programming language did Google use to create AlphaGo?



What programming language did Google use to create AlphaGo?

4 Answers

Isaac Pei

Isaac Pei


This is not an answer, but some logical deductions:

My guess is that it's likely a mixture of several programming languages, such as C++, Lua etc. Looking at David's publications and some source codes (in C++, and Lua):

Written Feb 27 · View Upvotes

Related Questions

More Answers Below

Amit Thakur

Amit ThakurI Love C++


Language doesn't matter much.

If we have an AI algorithm, we can use any computer language to implement the algorithm.

So a good question would be :

What AI algorithm did Google's AlphaGo use to play the Go board game?

Written Mar 14 · View Upvotes

Páll Haraldsson

Páll HaraldssonI checked "I know about Programming Languages", but is it really true..? 🙂


It doesn't matter [much].. 🙂

See: Amit Thakur's answer to What programming language did Google use to create AlphaGo?

And: Isaac Pei's answer to What programming language did Google use to create AlphaGo?

But note that David Silver, that Pei links to at "chessprogramming", and while that site covers more than chess, chess uses different algorithms.

At that site, I however, found his paper: http://www.machinelearning.org/a…

"Finally, we compared the performance of our MonteCarlo search to GnuGo" [that seems to be in C++]

Silver references:

Finnsson, H., & Björnsson, Y. (2008). Simulation-based approach to general game playing. 23rd Conference on Artificial Intelligence (pp. 259–264).

Yngvi Björnson, was one of my professor, and taught the MonteCarlo [tree] search algorithm (another professor taught artificial neural networks (in MATLAB) and AlphaGo also uses a deep learning variant thereof).

Yngvi actually was very casual about what programming language was used (even though we also had a timed competition), while his framework code was in Java (had been ported from C++ if I recall), so we could take it or leave it. Norvig uses Python I believe for teaching AI. It would be slower.. but ok for learning.

The strength of chess playing is limited by RAM memory (and how much memory overhead, if say you use Python, you can eliminate), but that seems to apply less to MonteCarlo.

This may be a better paper (newer more to the point, might even be on AlphaGo, while I couldn't locate in paper[s] or any language mentioned):



"evaluated asynchronously on a GPU [..] GeForce GTX Titan Black GPU"

So a language that works for GPUs is at least better, or that language used with. Julia language could be that language (Java seems not as preferred for GPU work), with or without C++. Behind the scenes, some language for CUDA could be used.

Computer Go Programming

Free Software Foundation (FSF)

Written Apr 15

Gabriel Cojocaru

Gabriel Cojocarulove. peace. coffee.


Not a complete answer, as they've used surely more programming languages, but the main are C++, LUA.

Written Mar 9

Related Questions


电子邮件地址不会被公开。 必填项已用*标注