Opponent-Model search is a game-tree search method that explicitly uses knowledge of the opponent. There is some risk involved in using Opponent-Model search. For adequate forecasting, two conditions should be imposed. Both the prediction of the opponent's moves and the judgement of future positions should be of good quality. The two conditions heavily depend on the evaluation functions used. In the article we distinguish evaluation functions by type. Three fundamentally different types are introduced. Thorough analysis of a variety of characteristics leads to eight possible orderings. The role of the evaluation functions is studied by attempting to answer five research questions. Moreover, actual computer game-playing programs investigate the research questions by a series of experiments in which Opponent-Model search is performed. The game of Bao is our test bed, it was selected because of its relatively narrow game tree, which allowed for an appropriate search depth in the experiments. We restrict ourselves to five evaluation functions generated with the help of machine-learning techniques. A set of round-robin tournaments between these evaluation functions show that when the above conditions are met, Opponent-Model search can be applied successfully. Answers to the research questions are given in the conclusions.
Donkers, H. H. L. M., van den Herik, H. J., & Uiterwijk, J. W. H. M. (2005). Selecting evaluation functions in opponent-model search. Theoretical Computer Science, 349, 245-267. https://doi.org/10.1016/j.tcs.2005.09.049