Improvements in Monte Carlo Tree Search for Inductive Program Synthesis

More Info
expand_more

Abstract

A recent development in program synthesis is using Monte Carlo Tree Search to traverse the search tree of possible programs in order to efficiently find a program that will successfully transform the given input to the desired output. Previous research has shown promising results as Monte Carlo Tree Search is able to escape local optima that occur during the search. I have continued this previous research by changing some components of Monte
Carlo Tree Search and testing them on three different domains; robot planning, string transformations and ASCII art.
Most notable, I have found that by changing the exploration constant Cp to slowly decrease during the running of the algorithm, you can improve the algorithm’s accuracy. This makes it easier for the algorithm to escape local optima, however here it is crucial the parameters are tuned well. Furthermore, I have also found that improvements can still be made in the expansion step of MCTS. However, changes to which values are backpropagated have not shown an improvement in the accuracy of MCTS in program synthesis.