Next: Likelihood function
Up: Simple Inference
Previous: Reproduction of past results
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
space by using exponential functions to eliminate the negative values. The player uses an
evaluation function
of the form
 |
(1) |
where
-
the
are attributes (or advisors),
i.e. functions that characterise a particular position and give a numerical value representing its worth.
The total number of attributes is n. Basic attributes for chess that have been used are:
-
a1(P) = the material balance of the position (where, here,
Queen = 9, Rook = 5, Bishop = Knight = 3, Pawn = 1), being the
difference between the player's and opponent's total material;
-
a2(P) = the mobility balance, i.e. the difference between
the numbers of moves available to the player and the opponent.
-
the
are the weights attached to the attributes and the
values which we are trying to infer.
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
,
to which the player
can move from position P. (We can think here of the positions
as corresponding to the possible moves,
numbered
respectively, which the player can make
from the position P.)
- 3.
- Compute the evaluation v(Pi) of each position Pi,
.
- 4.
- Choose a move probabilistically from
according to
 |
(2) |
This multivariate logistic function maps position values, which range over
,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
1.
Let the chosen move be i*.
- 5.
- Make the necessary move to the chosen position, Pi*.
Next: Likelihood function
Up: Simple Inference
Previous: Reproduction of past results
Richard A O Wallbrink
2000-11-07