bug-gnubg
[Top][All Lists]

 From: Joaquín Koifman Subject: [Bug-gnubg] Multithreaded Analysis bug? Date: Sat, 7 Feb 2009 19:23:28 -0200

Hello,

I was analyzing a match I played today when I found a strange number in the "Luck adjusted result" in the statistics window. It wasn't weird, just a -120% -everyone makes mistakes :P-.
But that was the second time I had analyzed that match and I hadn't remember seeing that number in the statisctics. So I re-re-analyzed it, four times, to be sure...

The settings were all the same, as I opened gnubg, analyzed, finished, open another instance, analized, finished, etc...

1. The total error of both players were never the same, they differed by less than 0,100 points, but it was a difference.
2. The luck also was different, but it was a greater difference: { +48%; +30%; +27%; +137% }

Looking for the bug, I found a move that was marked as extremetly lucky when it wasn't at all -in the other matches it was correct-:

The position:

GNU Backgammon  Position ID: 8pxvAAAznYMBAw
Match ID   : AQFrAQAACAAA
+12-11-10--9--8--7-------6--5--4--3--2--1-+     O: centralista (Cube: 2)
|             O    |   | O  O     O     O |     0 points
|             O    |   | O        O     O |     Rolled 62
|             O    |   | O                |
|                  |   |                  |
|                  |   |                  |
^|                  |BAR|                  |     11 point match
|             X    |   |                  |
|             X    |   |       X          |
|             X    |   | X     X          |
| O        X  X    |   | X  O  X          |
| O        X  X    |   | X  O  X     X    |     1 point
+13-14-15-16-17-18------19-20-21-22-23-24-+     X: pamalejo

The wrong analysis:

1. Cubeful 0-ply    13/11 13/7                   Eq.:  +0,586
65,4   7,6   0,0 -  34,6   4,9   0,0
0-ply cubeful prune [expert]
2. Cubeful 0-ply    13/7 8/6                     Eq.:  -0,463 ( -1,049)
23,0   0,7   0,0 -  77,0   1,3   0,0
0-ply cubeful prune [expert]
3. Cubeful 0-ply    13/11 8/2                    Eq.:  -0,469 ( -1,055)
22,8   0,8   0,0 -  77,2   1,6   0,0
0-ply cubeful prune [expert]
4. Cubeful 0-ply    13/7 6/4                     Eq.:  -0,470 ( -1,056)
22,7   0,7   0,0 -  77,3   1,4   0,0
0-ply cubeful prune [expert]

The correct analysis:

1. Cubeful 2-ply    13/11 13/7                   Eq.:  -0,490
21,8   0,6   0,0 -  78,2   1,1   0,0
2-ply cubeful prune [world class]

2. Cubeful 2-ply    13/7 8/6                     Eq.:  -0,491 ( -0,000)
21,8   0,6   0,0 -  78,2   1,1   0,0
2-ply cubeful prune [world class]
3. Cubeful 2-ply    13/5                         Eq.:  -0,491 ( -0,000)
21,8   0,6   0,0 -  78,2   1,2   0,0
2-ply cubeful prune [world class]
4. Cubeful 2-ply    13/11 8/2                    Eq.:  -0,493 ( -0,002)
21,8   0,6   0,0 -  78,2   1,3   0,0
2-ply cubeful prune [world class]

Correct analysis in 0-ply:

1. Cubeful 0-ply    13/7 8/6                     Eq.:  -0,463
23,0   0,7   0,0 -  77,0   1,3   0,0
0-ply cubeful prune [expert]
2. Cubeful 0-ply    13/11 13/7                   Eq.:  -0,465 ( -0,002)
22,9   0,7   0,0 -  77,1   1,3   0,0
0-ply cubeful prune [expert]
3. Cubeful 0-ply    13/11 8/2                    Eq.:  -0,469 ( -0,006)
22,8   0,8   0,0 -  77,2   1,6   0,0
0-ply cubeful prune [expert]
4. Cubeful 0-ply    13/7 6/4                     Eq.:  -0,470 ( -0,008)
22,7   0,7   0,0 -  77,3   1,4   0,0
0-ply cubeful prune [expert]

As can be seen, a move was given (in 0-ply) an incorrect and very high equity (13/11 13/7). I suppose that happened in some other moves, what explain the discrepancies between each analysis.

Various moves where marked as very unlucky, but the analysis was correct. Others also had a move with a wrong equity. For example, this move is in 2-ply:

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

1. Cubeful 2-ply    9/3 6/3                      Eq.:  -0,212
42,2   8,9   0,2 -  57,8   9,7   0,2
2-ply cubeful prune [world class]

2. Cubeful 2-ply    9/6 9/3                      Eq.:  -0,361 ( -0,149)
38,8   6,9   0,1 -  61,2  11,0   0,2
2-ply cubeful prune [world class]
1. Cubeful 2-ply    9/3 6/3                      Eq.:  -0,234
41,8   8,1   0,1 -  58,2   9,6   0,2
2-ply cubeful prune [world class]
2. Cubeful 2-ply    9/6 9/3                      Eq.:  -0,361 ( -0,127)
38,8   6,9   0,1 -  61,2  11,0   0,2
2-ply cubeful prune [world class]
The correct is the second one (the other instances gave the same result)

Finally, I analysed the match twice more, but with just one thread (I was analysing with 4 threads). An they give exactly the same result.