On Fri, Nov 08, 2002 at 06:43:42AM +1300, Joseph Heled wrote
No magic involved here. getBearoffGammonProbs takes the position of the
side wanting to bear one checker. (Since it is a bearoff, all other 19
points are know to be empty, so only 6 are needed). It return the
probability of doing so in 1,2,3 or 4 moves, just like the one sided
database does for complete bearoff.
Then you do exactly the same thing as in the bearoff computation - I save
the gammon if I bear one checker in the next move, and if I don't and op
can't bear all of his in his next move, I save by bearing one checker in 2
moves etc.
I do exactly the same for the bearoff-databases. Besided storing the
probabilities for bearing off all chequers the probabilities for
bearing at least one chequer off are stored. Extremely good gammon probs
can be calculated by combining the former with the latter.
The problem is that the probabilities for bearing at least one chequer
off was not stored in gnubg.bd, so gnubg used some heuristic scheme to
calculate gammon probs, but apparently the scheme was often wrong by a
"large" margin ruining the rollouts.