I include an AVL Tree to the state of the game to maintain the list of possible moves. It is a modified version of an AVL tree with random access in log n time, so it let us get random moves faster, so we get faster simulation. The difference is more evident when playing 19x19 games.