Monte Carlo Tree Search is a powerful decision making algorithm
Learnt about this while working on ChessHacks
4 key steps
Selection
Start from the root node (current state) and choose child nodes according to a policy
Expansion
When you reach a node that hasn’t been fully explored you add one or more new child nodes that represent next possible moves
Simulation
From the new node, you simulate the game to the end by making random or heuristic moves
Backpropagation
The result of the simulation is propagated back up the tree