bug-gnubg
[Top][All Lists]
Advanced

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

Re: [Bug-gnubg] Problems using Stop rollout when one move appears to be


From: Neil Robins
Subject: Re: [Bug-gnubg] Problems using Stop rollout when one move appears to be best option
Date: Sun, 23 Aug 2009 21:54:59 +0100


----- Original Message ----- From: "Michael Petch" <address@hidden> To: "Christian Anthon" <address@hidden>; "Neil Robins" <address@hidden>
Cc: <address@hidden>
Sent: Sunday, August 23, 2009 9:08 PM
Subject: Re: [Bug-gnubg] Problems using Stop rollout when one move appears to be best option



On 22/08/09 2:14 PM, "Christian Anthon" <address@hidden> wrote:

The code seems to work fine for me, but only if both kinds of
stop-on-jsd is
turned on. I'm checking in a simplification where there
is only one
kind.

Please report back if the problems continue.



If I use the windows release using the position, rollout the same 6 moves,
use the same seed, both stop on best move, and stop if JSD above limit
(3.1), and minimum trials of 217 - I don't see the same result but in my
case 8/7 6/2* end up achieving a JSD of >3.1 at about 1540 moves and
continues to rollout out until 1725. This seems very consistent on my
systems.

The number of threads doesn't seem to make much difference.

Christian, I get nearly similar results when I use your new code where both
JSD's are combined.

Whether I use your combined code or the regular windows release I have found this - The situation is far more pronounced if I take the same position and rollout all the possible plays. Some moves have JSD's that exceed 3.1 JSD's
and then continue to rollout all the way to the end. The results of the
revised are below. Of paarticular note are moves 13 and 24. Their JSD's were
well beyond 3.1 for almost the entire rollout but were rolled out the full
number of trials. Move number 21 was high most of the time but stopped
earlier at about 800 moves.

*********
One other anomaly I saw (I was using 16 threads) was the status bar was
moving along and a few occasions the progress bar jumped backwards
considerably and then caught back up within 20 seconds. This happened a few
times, and seems to be reproducible.
*********


GNU Backgammon  Position ID: hucZAxDYzmDABg
                Match ID   : 8AmmAAAAIAAA
+13-14-15-16-17-18------19-20-21-22-23-24-+     O: Player1
| X     O     O    |   | O  X  X     O    |     0 points
| X     O     O    |   | O  X  X     O    |
|             O    |   | O                |
|             O    |   | O                |
|                  |   |                  |
v|                  |BAR|                  |     5 point match (Cube: 1)
|                  |   |                  |
|                  |   |                  |
|                  |   | X                |
| O           X    |   | X  X  X          |     Rolled 41
| O           X    |   | X  X  X     O    |     4 points
+12-11-10--9--8--7-------6--5--4--3--2--1-+     X: Player2


16 Threads (Linux/SSE/O3/New combined JSD code):

   1. Rollout          20/16 6/5                    Eq.:  +0.046
      0.532 0.188 0.019 - 0.468 0.153 0.005 CL  +0.046 CF  +0.046
     [0.002 0.004 0.002 - 0.002 0.002 0.000 CL   0.003 CF   0.003]
       Full cubeful rollout with var.redn.
       2592 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   2. Rollout          21/16                        Eq.:  +0.031 ( -0.016)
      0.523 0.172 0.017 - 0.477 0.152 0.004 CL  +0.031 CF  +0.031
     [0.002 0.004 0.002 - 0.002 0.002 0.000 CL   0.003 CF   0.003]
       Full cubeful rollout with var.redn.
       2514 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   3. Rollout          8/7 6/2*                     Eq.:  +0.018 ( -0.029)
      0.517 0.173 0.015 - 0.483 0.155 0.004 CL  +0.018 CF  +0.018
     [0.002 0.004 0.002 - 0.002 0.002 0.001 CL   0.005 CF   0.005]
       Full cubeful rollout with var.redn.
       1718 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   4. Rollout          13/9 6/5                     Eq.:  +0.018 ( -0.029)
      0.516 0.163 0.012 - 0.484 0.135 0.003 CL  +0.018 CF  +0.018
     [0.002 0.005 0.002 - 0.002 0.002 0.000 CL   0.005 CF   0.005]
       Full cubeful rollout with var.redn.
       1321 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   5. Rollout          6/2*/1                       Eq.:  +0.008 ( -0.039)
      0.511 0.176 0.011 - 0.489 0.143 0.004 CL  +0.008 CF  +0.008
     [0.004 0.010 0.003 - 0.004 0.004 0.001 CL   0.008 CF   0.008]
       Full cubeful rollout with var.redn.
       446 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   6. Rollout          13/8                         Eq.:  +0.004 ( -0.042)
      0.508 0.180 0.010 - 0.492 0.118 0.003 CL  +0.004 CF  +0.004
     [0.004 0.011 0.003 - 0.004 0.003 0.001 CL   0.008 CF   0.008]
       Full cubeful rollout with var.redn.
       360 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   7. Rollout          6/1                          Eq.:  -0.032 ( -0.078)
      0.492 0.162 0.008 - 0.508 0.136 0.004 CL  -0.032 CF  -0.032
     [0.005 0.012 0.003 - 0.005 0.004 0.001 CL   0.011 CF   0.011]
       Full cubeful rollout with var.redn.
       216 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   8. Rollout          8/3                          Eq.:  -0.034 ( -0.080)
      0.491 0.131 0.008 - 0.509 0.147 0.004 CL  -0.034 CF  -0.034
     [0.006 0.009 0.003 - 0.006 0.005 0.003 CL   0.013 CF   0.013]
       Full cubeful rollout with var.redn.
       220 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
   9. Rollout          13/9 8/7                     Eq.:  -0.039 ( -0.085)
      0.490 0.158 0.008 - 0.510 0.182 0.003 CL  -0.039 CF  -0.039
     [0.006 0.013 0.002 - 0.006 0.005 0.002 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       215 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  10. Rollout          21/20 6/2*                   Eq.:  -0.043 ( -0.089)
      0.485 0.171 0.018 - 0.515 0.161 0.000 CL  -0.043 CF  -0.043
     [0.006 0.012 0.004 - 0.006 0.006 0.004 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       220 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  11. Rollout          8/7 8/4                      Eq.:  -0.047 ( -0.094)
      0.482 0.191 0.010 - 0.518 0.123 0.001 CL  -0.047 CF  -0.047
     [0.006 0.016 0.002 - 0.006 0.004 0.001 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       220 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  12. Rollout          8/4 6/5                      Eq.:  -0.048 ( -0.094)
      0.484 0.148 0.007 - 0.516 0.137 0.004 CL  -0.048 CF  -0.048
     [0.006 0.012 0.002 - 0.006 0.004 0.000 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       222 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  13. Rollout          13/9 4/3                     Eq.:  -0.055 ( -0.101)
      0.483 0.144 0.012 - 0.517 0.190 0.005 CL  -0.055 CF  -0.055
     [0.002 0.003 0.001 - 0.002 0.002 0.000 CL   0.004 CF   0.004]
       Full cubeful rollout with var.redn.
       2592 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  14. Rollout          6/2* 4/3                     Eq.:  -0.093 ( -0.139)
      0.465 0.131 0.008 - 0.535 0.204 0.006 CL  -0.093 CF  -0.093
     [0.006 0.012 0.003 - 0.006 0.007 0.001 CL   0.011 CF   0.011]
       Full cubeful rollout with var.redn.
       220 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  15. Rollout          13/9 5/4                     Eq.:  -0.105 ( -0.151)
      0.457 0.131 0.014 - 0.543 0.181 0.004 CL  -0.105 CF  -0.105
     [0.006 0.011 0.006 - 0.006 0.006 0.001 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       212 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  16. Rollout          21/20 13/9                   Eq.:  -0.111 ( -0.157)
      0.455 0.151 0.010 - 0.545 0.192 0.005 CL  -0.111 CF  -0.111
     [0.005 0.013 0.003 - 0.005 0.006 0.001 CL   0.011 CF   0.011]
       Full cubeful rollout with var.redn.
       222 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  17. Rollout          6/2* 5/4                     Eq.:  -0.129 ( -0.175)
      0.445 0.144 0.010 - 0.555 0.181 0.005 CL  -0.129 CF  -0.129
     [0.006 0.014 0.005 - 0.006 0.006 0.002 CL   0.013 CF   0.013]
       Full cubeful rollout with var.redn.
       217 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  18. Rollout          20/16 8/7                    Eq.:  -0.135 ( -0.181)
      0.450 0.149 0.038 - 0.550 0.272 0.012 CL  -0.135 CF  -0.135
     [0.005 0.010 0.017 - 0.005 0.006 0.002 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       220 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  19. Rollout          21/20 8/4                    Eq.:  -0.145 ( -0.192)
      0.436 0.134 0.015 - 0.564 0.180 0.004 CL  -0.145 CF  -0.145
     [0.006 0.010 0.005 - 0.006 0.006 0.001 CL   0.011 CF   0.011]
       Full cubeful rollout with var.redn.
       222 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  20. Rollout          20/16 4/3                    Eq.:  -0.159 ( -0.205)
      0.438 0.121 0.015 - 0.562 0.302 0.010 CL  -0.159 CF  -0.159
     [0.006 0.010 0.005 - 0.006 0.006 0.004 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       224 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  21. Rollout          6/5 6/2*                     Eq.:  -0.166 ( -0.212)
      0.427 0.120 0.009 - 0.573 0.188 0.005 CL  -0.166 CF  -0.166
     [0.003 0.005 0.002 - 0.003 0.003 0.001 CL   0.006 CF   0.006]
       Full cubeful rollout with var.redn.
       867 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  22. Rollout          20/16 5/4                    Eq.:  -0.166 ( -0.212)
      0.431 0.126 0.024 - 0.569 0.264 0.007 CL  -0.166 CF  -0.166
     [0.006 0.011 0.008 - 0.006 0.006 0.007 CL   0.012 CF   0.012]
       Full cubeful rollout with var.redn.
       216 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  23. Rollout          5/4 5/1                      Eq.:  -0.205 ( -0.251)
      0.405 0.115 0.002 - 0.595 0.142 0.003 CL  -0.205 CF  -0.205
     [0.005 0.012 0.001 - 0.005 0.005 0.002 CL   0.010 CF   0.010]
       Full cubeful rollout with var.redn.
       223 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  24. Rollout          8/4 5/4                      Eq.:  -0.205 ( -0.252)
      0.406 0.113 0.010 - 0.594 0.185 0.003 CL  -0.205 CF  -0.205
     [0.002 0.003 0.001 - 0.002 0.002 0.001 CL   0.004 CF   0.004]
       Full cubeful rollout with var.redn.
       2592 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  25. Rollout          5/1 4/3                      Eq.:  -0.225 ( -0.271)
      0.401 0.109 0.003 - 0.599 0.251 0.007 CL  -0.225 CF  -0.225
     [0.006 0.011 0.001 - 0.006 0.007 0.002 CL   0.013 CF   0.013]
       Full cubeful rollout with var.redn.
       224 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  26. Rollout          8/7 5/1                      Eq.:  -0.226 ( -0.272)
      0.399 0.103 0.003 - 0.601 0.222 0.007 CL  -0.226 CF  -0.226
     [0.006 0.010 0.001 - 0.006 0.006 0.001 CL   0.013 CF   0.013]
       Full cubeful rollout with var.redn.
       222 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]
  27. Rollout          21/20 5/1                    Eq.:  -0.311 ( -0.357)
      0.358 0.106 0.005 - 0.642 0.247 0.007 CL  -0.311 CF  -0.311
     [0.005 0.010 0.002 - 0.005 0.007 0.001 CL   0.011 CF   0.011]
       Full cubeful rollout with var.redn.
       223 games, Mersenne Twister dice gen. with seed 359697340 and
quasi-random dice
Stop when best play is enough JSDs ahead: limit 3.1 (min. 217 games)
       Play: 0-ply cubeful [expert]
       Cube: 0-ply cubeful [expert]


The progress bar jumps backwards when a move starts to reroll when it comes back within the JSD limit. In versions of GNU up to about a year ago a move that came back in would roll exclusively till it either caught up with the other rolls or went back outside the JSD limit. Now it just rolls permanently behind which can lead to the rollout finishing with the progress bar not at the end and that roll not either rolled to the full number of trials nor outside the JSD limit. In addition, just like not all rolls stop when they go outside the JSD limit, some rolls that have stopped do not restart at all if they come back within the limit.




reply via email to

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