|Jul-28-05|| ||chessgames.com: Shredder's only defeat from the 2005 Mercosur Cup was the result of an incomprehensible programming error.|
<Lafuente has just captured a black bishop on b7, after which White must recapture. But Shredder plays the unaccountable 19...Rfd8?? The official bulletin says it was definitely not a mouse slip or any other kind of operator error, but that Shredder thought for over three minutes, initially analysing 19...Qxb7 to a depth of 20 ply but then switching to the move it ultimately played. The evaluation showed a slight advantage for Black. Only after the next move the value suddenly dropped to show a decisive advantage for White. Afterwards the organisers tested the critical position again with Shredder and diagnosed the problem as a "one in a million" error in the hash tables.>
|Jul-28-05|| ||Rocafella: Even an idiot would have found Qxb7 so it must have been an error. Nevertheless it proves that computers are imperfect and are not incapable of error.|
|Jul-28-05|| ||Marvol: Computers are only human after all...|
|Jul-28-05|| ||Rocafella: They are effectively as human as the people who programme them...|
|Jul-28-05|| ||sandyobrien: Could you imagine being an operator and having to play a move like that?|
|Jul-28-05|| ||aw1988: One thing I don't understand is why they didn't just change it to Qb7 since it's such an obvious move.|
|Jul-28-05|| ||Caissanist: I don't think that the operator really knew whether it was a programming error or a hardware problem. In the Spanish text of the programming bulletin they mention both possibilities but don't try to speculate about which it was. |
My personal belief is that it was most likely a failure in the hardware, probably a memory (RAM) problem. It seems to me that this kind of memory problem is more common now then it was ten or fifteen years ago, since most memory sold today does not include a parity bit designed to trap this kind of error. Can't really be sure though, since problems reading memory now tend to manifest themselves as mysterious higher-level messages, similar to what happened here. Since the value was calculated it could also be a failure in the CPU, similar to the famous Pentium bug in 1994. For those who can read Spanish, here is the relevant section from the tournament bulletin:
Evidentemente, el programa leía la valoración almacenada en la tabla hash, y esta valoración o cálculo eran equivocados. Fallo de alguna rutina del programa o algún inconveniente con la memoria "física" (RAM) del ordenador? Lo que creo es que la posibilidad de que se repita ese fallo debe ser algo asi como 1 en 1 millón! El equipo funcionaba (y siguió funcionando normalmente) y el programa nunca se "colgó", pero lo cierto es que se escribió/leyó un valor incorrecto en la tabla hash, y esa fue la causa del error garrafal.
|Jul-28-05|| ||aw1988: It doesn't matter whether it was a hardware problem or a programming error. Actually, the most believable hypothesis is that it was a hash table problem. In any case, Qxb7 should have been forced.|
|Jul-28-05|| ||Marvol: <aw1988: One thing I don't understand is why they didn't just change it to Qb7 since it's such an obvious move.>|
Yeah but who should decide that? I'm not sure what you actually mean by 'they just change'. When? How?
It's the computer deciding that move, therefore that move should be played. Shredder is playing, not Shredder plus an operator plus who-knows-else.
|Jul-28-05|| ||jamesmaskell: Depending on which viewpoint you use...it didnt stop IBM back in 1997!|
|Jul-28-05|| ||Rocafella: <jamesmaskell> Glad you said it before I did! :)|
|Jul-28-05|| ||aw1988: Right, except what are the chances Shredder makes the same blunder twice in a row? They have to account for technical problems.|
|Jul-29-05|| ||blackjacki2: I just have to play shredder a million times and I will finally win one|
|Jul-29-05|| ||Autoreparaturwerkbau: <blackjack> Plus you have to play other 51 white's moves in the manner of Rating 2435 (as Lafuente's)! ;)|
|Jul-29-05|| ||Sneaky: <My personal belief is that it was most likely a failure in the hardware, probably a memory (RAM) problem.> I'm more inclined to believe that they were correct with their statement that it was "a one in a million error in the hash tables."|
Hash-tables are faster than convential searching techniques, like B-trees, but you pay for that speed with accuracy. It's hypothetically possible to get a wrong answer from a hash-table. This can be corrected with methods involving "collision resolution" but for some purposes the cost of administration isn't worth the few rare times when it's actually needed.
|Jul-31-05|| ||The 3 Gambiteers: I'd like to have seen Lafuente's face after Shredder played 19...Rfd8??.|
|Aug-07-05|| ||Caissanist: Sneaky, thanks for the elaboration, I didn't realize that "hash table" meant "hash table procedure" in this context. After re-reading the bulletin excerpt I now see that Shredder made exactly the same mistake when they gave it the position in the post mortem, which of course means you're almost certainly right. I'd still be curious to see if this same thing happened on a different hardware configuration, but it very likely would have. |
btw, according to the bulletin, LaFuente's "sorpresa fue mayuscala", a wonderful Spanish phrase that roughly translates as "his surprise was in all caps". LaFuente asked Shredder's operator if that really was the move, but under the rules he couldn't do anything but confirm that yes, indeed it was.
|Dec-17-05|| ||Knight13: <Rocafella: Even an idiot would have found Qxb7 so it must have been an error. Nevertheless it proves that computers are imperfect and are not incapable of error.> Yup. That's right. You can beat shredder. Sure you can. I can't wait to see that game...|
|Dec-17-05|| ||aw1988: <Knight13> He's not saying he's better than Shredder, he's just saying that even computers make mistakes.|
|Dec-19-05|| ||Knight13: <aw1988> Oh okay. Sorry for the misunderstanding...|
|Jan-25-06|| ||RandomVisitor: This link:
Talks about "Zobrist Keys" and how they allow a hash table to work. In short, a 64-bit number is created from the pieces and their location on the board. This number is "usually" unique, and can be used to store an evaluation of a position.
In this case, it appears that another position somehow had the same "Zobrist Key" and caused an erroneous evaluation to be retrieved from memory.
|Jan-29-06|| ||RandomVisitor: I decided to try and reproduce this amazing bug in Shredder 9.0.|
I entered the position before the 19...Rfd8 blunder, and after playing around with the hash table settings, here is what Shredder's display reads. Note that from 2 until 26 seconds into the analysis, Shredder thinks that Rfd8 is the best move. How humiliating.
[Actual snippet from display:]
19...Qxb7 20.Nf3 Rfd8 21.Rxd6 Rxd6 22.Ne5 Ne4 23.Qc2 f6 24.f3 Ng5 25.Ng4 a5 26.bxa6 Qxa6 = (-0.07) Depth: 14/20 00:00:02 911kN
= (-0.08) Depth: 14/20 00:00:02 1344kN
= (-0.08) Depth: 14/24 00:00:03 2095kN
= (0.17) Depth: 15/26 00:00:04 2330kN
² (0.67) Depth: 15/26 00:00:04 2417kN
19...Rfd8 20.Bc6 a6 21.Qc2
(3.81) Depth: 15/31 00:00:26 19137kN
(3.80) Depth: 15/31 00:00:26 19303kN
(3.45) Depth: 15/31 00:00:27 19375kN
19...Qxb7 20.Nf3 Rfd8 21.Rxd6 Rxd6 22.Ne5 a6 23.bxa6 Qxa6 24.f3 Nd7 25.Nxd7 Rxd7 26.Rb1 f6 27.e4 = (-0.04) Depth: 15/31 00:00:28 20505kN
19...Qxb7 20.Nf3 Rfd8 21.Rxd6 Rxd6 22.Ne5 a6 23.bxa6 Qxa6 24.f3 Nd7 25.Nxd7 Rxd7 26.Rb1 f6 27.e4 e5 = (-0.08) Depth: 16/23 00:00:30 21969kN
|Feb-13-06|| ||Achilles87: My 15 year old friend beat Shredder with the limit strength box unchecked.
Shredder can be beaten, perhaps even without it making glaring mistakes.|
|Jan-29-08|| ||xrt999: <Caissanst says: btw, according to the bulletin, LaFuente's "sorpresa fue mayuscala", a wonderful Spanish phrase that roughly translates as "his surprise was in all caps". LaFuente asked Shredder's operator if that really was the move, but under the rules he couldn't do anything but confirm that yes, indeed it was.>|
If this is true, I would surmise that Fuentes was in shock for missing something! When the computer makes a move like that, 100% of the time it is a solid play, and you just blundered away the game. You dont just win a full piece! No, your piece is negligible in the attack beat down the computer is about to give you, a series of moves on the order of 10 or 11 forced moves deep. Everyone here knows what I am talking about.
I would go on to further surmise that fuentes spent a good 10 minutes trying to see where he is about to lose. Just a guess.
Furthermore, with 20.Bc6, I would say Fuentes showed this shock, because Shredder could have played 20...Rxc6 then win the c pawn. I really dont like this move. Still, even after 20...Ng4 I would say in the back of his mind for the next 4 or 5 moves, this nagging feeling was eating away at him that he was missing something.