[Computer-go] MCTS playouts per second

Aja Huang ajahuang at gmail.com
Wed Oct 26 19:23:21 PDT 2011

On 19x19, Erica's speed is around 5,500 lightweight playouts per second on a 
single i7 cpu. As far as I know, Lukasz Lew's libego, which is open source, 
is the fastest implementation of MCTS and can reach around 6,000-7,000 
lightweight playouts per second in the same cpu.


From: Scott Christensen
Sent: Wednesday, October 26, 2011 6:48 AM
To: computer-go at dvandva.org
Subject: [Computer-go] MCTS playouts per second

Just want to check what the expected playout performance is of well
tuned monte-carlo engines?  My MCTS engine is averaging apx 3,500
lightweight playouts per second on a single i5 32 bit cpu.  Any
suggestions on very efficient source code examples for fast
monte-carlo playouts?

I've spent a lot of time comparing recursive group formation vs
non-recursive but it doesn't seem to make a big difference.  It seems
that updating the list of likely moves after every play with something
similar to the mogo probability rules is the most time consuming part
as I currently recalculate the probabilities of moves at every empty
point on the board each turn. It seems necessary if one doesn't want
to handle all the exceptions to keeping the previous turn's play

Also any thoughts on combining pattern scoring and other conventional
techniques together with a UCT tree?   If two branches have very
similar simulated win ratios could one use other factors to choose the
best branch?  It seems if there is a very wide branching such as at
the beginning of the game, there is a lot of room to add other
heuristics to choosing the best move when monte-carlo scores are
within range of expected error.
Computer-go mailing list
Computer-go at dvandva.org

More information about the Computer-go mailing list