[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-gnubg] Bug: Double/Beaver

From: Christopher D. Yep
Subject: Re: [Bug-gnubg] Bug: Double/Beaver
Date: Fri, 22 Aug 2003 07:57:30 -0400

At 11:21 AM 8/22/2003 +0000, Jørn wrote:

gnubg will take any cube position into account, but the forward pruning
at the intermediate plies will be performed with the original cube value
and cube position.

This may give problems in positions where the gammon price changes
dramatically upon turning the cube. Examples, are initial doubles in
money game with Jacoby rule, and many match scores.

I think I understand everything else you wrote in the rest of the e-mail , but I'm still unclear about the above paragraphs. By the first sentence do you mean that if the original cube position is, for example, a centered cube then all checker plays will be chosen based on a centered cube even if the cube gets turned for some (later) dice sequences in the lookahead?

If so, is this the case for both N-ply evaluations and the "no-double" branch of a cube decision rollout (checker plays always based on a centered cube even though the cube will almost always be turned at least once during each rollout game).

If yes, then I assume the "double/take" branch of the cube decision rollout is similar but starts with the opponent owning the cube (and all future checker plays are chosen based on the opponent owning the cube, even if the cube gets turned later within the rollout).

The above is a reasonable way to do it, I just want to make sure I understand it.

> For every N-ply evaluation and every rollout, if some of the nodes of the
> lookahead end in double/pass before N-plies are reached, for the purpose of
> the win/gammon/backgammon breakdown, gnubg uses the final
> win/gammon/backgammon estimate for these nodes rather than continuing all
> the way to N-ply, correct?

Rollouts: yes (the rollout is implicitly truncated at double pass)
Evaluations: no (the evaluation is *not* truncated)

Thanks for the clarification. I now see that this is the case for evaluations by looking at 2-ply, 4-ply, and 6-ply numbers. The cubeless equity changes from -0.038 to -0.045 to -0.047 (although the game always ends within 1-ply since player1 will cash the game if player0 doesn't roll 6-x, while player0 will cash the game at the next opportunity if his first roll is 6-x). I understand how gnubg works for evaluations now, thanks.

> If so, gnubg can be marginally improved by using
> minimax as you note,

I'm not sure if the improvement is "marginally". In your original
example the equity change is from -0.107 to -0.118, or around 10%, when
we choose another cube value/cube position for the forward pruning.

Careful how you define improvement. gnubg improved by 0.011 in this rare position. If the equity instead had changed from -0.001 to -0.012 I would still say it improved by 0.011 rather than by 1100%. If the improvement is from 0 to -0.011, it's not an infinite improvement. If you want, you could call it about a 1.1% improvement. :-)

I've made a few notes available from


It would be great if you could expand the chapter. I can provide the
texi source for the chapter if you want to work on it.

Thanks, I just read through this material and will try to read it a second time later today. Can you send me the texi source? I promise to work on it in the next week or so. Thanks.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]