next up previous contents
Next: Likelihood function Up: Simple Inference Previous: Reproduction of past results

The algorithm employed

The process, as mentioned before, uses a probabilistic approach, the probabilities need to be calculated at each position for the ranking of the most likely to be moved to the least likely. The probabilities are calculated by using the evaluation function results, where the value of the current position is divided by the value of all the other possible positions. The probability is mapped onto a $0\ldots1$ space by using exponential functions to eliminate the negative values. The player uses an evaluation function $v(\_)$ of the form

 \begin{displaymath}
v(P) = \sum_{k=1}^n \lambda_k a_k(P),
\end{displaymath} (1)

where The simple model uses just these two weights and assumes no variance in the strategy used. Most strategies published for playing chess split the game into opening, middle and end games as it is widely acknowledged that these sections involve different needs, whether it is to play aggressively or defensively. This is ignored as the simple model is used here to demonstrate that some inference can be achieved by using this technique and also to show that past results are correct and reproducible. Many chess programs use linear evaluation functions of the form of Equation 1 and the attributes are usually chosen to match the way people weigh different positions against each other [35].

The same structure can be used for finding the information in the game databases for inference. This algorithm is as follows

1.
Input: position P.
2.
Generate all positions $P_1, P_2, \ldots, P_m$, to which the player can move from position P. (We can think here of the positions $P_1, P_2, \ldots, P_m$ as corresponding to the possible moves, numbered $1, 2, \ldots, m$ respectively, which the player can make from the position P.)
3.
Compute the evaluation v(Pi) of each position Pi, $i =
1, \ldots, m$.
4.
Choose a move probabilistically from $\{1,\ldots,m\}$ according to


 \begin{displaymath}\Pr(\hbox{move $i$ }) = {e^{v(P_{i})} \over \sum_{j=1}^{m}e^{v(P_j)}}.
\end{displaymath} (2)

This multivariate logistic function maps position values, which range over $(-\infty,\infty)$,to the interval [0,1] in a natural and elegant way. This is because the negative values of the evaluation function are converted into positive values that approach 0. Dividing by the sum of all the ev(Pj) restricts the domain to $\ge$ 1.
Let the chosen move be i*.
5.
Make the necessary move to the chosen position, Pi*.


 
next up previous contents
Next: Likelihood function Up: Simple Inference Previous: Reproduction of past results
Richard A O Wallbrink
2000-11-07