
![]() |
Last update: 14/01/98 |


| Program | CPU/Mhz | Hash table | Move | Value | Plys/Max | Time | Notes |
|---|---|---|---|---|---|---|---|
| Chess Master 2175 | P100 | 2 Mb | Nf3xg5+ | +3.05 | 9 | 00:05:18 | can't see it |
| Chess Master 2175 | P100 | 2 Mb | Nd5xc7 | +5.36 | 11 | 01:08:49 | can't see it |
| Chess Genius 1.0 | P100 | 320 Kb | Nf3xg5+ | Mate10 | 7/19 | 00:08:38 | seen at 11m |
![]() Rebel Decade 2.0 |
P100 | 512 Kb | Nf3-g5+ | Mate9 !! | 4 | 00:00:13 | Bug !? |
![]() Rebel 8 |
K6/233 | 60 Mb | Nf3xg5+ | Mate9 | 4 | 00:00:01 | Bug !? |
![]() Rebel 9 |
Pentium Pro 200 Mhz | 60 Mb | Nf3xg5+ | Mate9 | 4 | 00:00:01 | Bug !? |
![]() Crafty 12.6 |
Pentium Pro 200 MHz | 24 Mb + 16 Mb | Nf3xg5+ | Mate11 | 6 | 00:00:01 | see notes |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | Nf3xg5+ | Mate10 | 6 | 00:00:01 | |
![]() MChess Pro 5.0 |
Pentium Pro 200 Mhz | 10 Mb | Nf3xg5+ | Mate10 | 5 | 00:00:42 | seen at < 1 sec. |
![]() Patzer 2.99y |
Sun Ultra1/167 Mhz | 32 Mb | Nf3xg5+ | MateX | 5 | 00:00:04 | see notes |
|
Notes: This mate was the pretty finale of a game won by USSR Grandmaster Bronstein against a 1963 chess computer called EVM "M-20", and in this position Bronstein announced mate in 10 moves. Notice that Chess Master 2175 gives the correct move (though it does not see the mate) with a 9-ply search, but finds another poorer one when searching to 11 plies, 15 times slower. Chess Genius 1.0 actually sees the mate in much less time, and with just a 7-ply search, which is extended to the required 19-ply (necessary to see a mate in 10) by 12-ply extra threats search at the terminal nodes. Rebel Decade 2.0 finds the correct move, looking at the lowest number of plies of all programs tested, just 4, examines as little as 180.168 positions, and all of this with a very fast timing, only 13 seconds. The problem is, it evaluates the move as a mate in 9 which it isn't !. Some bug in the search extensions !?. There's another test position in this suite, Test 20, that further exemplifies the same bug, you can see a discussion in the Addendum for that position.
Crafty 12.6 sees the correct move, but evaluates it as a slightly longer mate in 11 while looking at 6 plies in just one second. It does not find the shortest mate in 10, however. But though Chess Master 5500 looks also at 6 plies in a second or less, it does find and recognize the required mate in 10, getting the best possible timing for this position, much ahead of CG1.0. MChess Pro 5.0 only needs to look at 5 plies to find the correct move in less than one second. But then it needs much longer to recognize it as a mate in 10. Patzer 2.99y, a non-commercial program, finds the correct move in a few seconds, at a depth of only 5 plies, evaluating it as a mate, but as usual, can't reliably say in how many moves. It examined only 110.816 nodes.
|


| Program | CPU/Mhz | Hash table | Move | Value | Plys/Max | Time | Notes |
|---|---|---|---|---|---|---|---|
| Psion Chess | P100 | No | e2-e4 | Mate6 | 11 | 00:08:14 | level=mate6 |
| Chess Master 2175 | P100 | 2 Mb | e2-e4 | Mate8 | 11 | 00:06:41 | sees mate in 8 |
| Chess Genius 1.0 | P100 | 320 Kb | e2-e4 | Mate11 | 7/19 | 00:00:11 | sees mate in 11 |
| Chess Genius 1.0 | P100 | 320 Kb | e2-e4 | Mate6 | 11/12 | 00:00:57 | level=mate6 |
| Rebel Decade 1.2 | P100 | 192 Kb | e2-e4 | Mate6 | 11 | 00:03:30 | level=mate6 |
| Rebel Decade 1.2 | P100 | 192 Kb | e2-e4 | Mate7 | 9 | 00:01:31 | sees mate in 7 |
![]() Rebel Decade 2.0 |
P100 | 512 Kb | e2-e4 | Mate7 | 9 | 00:01:21 | seen at 22 sec. |
![]() Rebel 8 |
K6/233 | 60 Mb | e2-e4 | Mate8 | 11 | 00:00:07 | |
![]() Rebel 9 |
Pentium Pro 200 Mhz | 60 Mb | e2-e4 | Mate9 | 10 | 00:00:05 | shortest not found |
| Crafty 12.7 | P100 | 6 Mb + 640k | e2-e4 | Mate6 | 10 | 00:15:52 | |
![]() Crafty 12.6 |
Pentium Pro 200 MHz | 24 Mb + 16 Mb | e2-e4 | Mate6 | 10 | 00:06:55 | see notes |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | e2-e4 | Mate7 | ? | 00:00:07 | can't see shortest |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | e2-e4 | Mate6 | ? | 00:06:29 | level=mate6 |
![]() MChess Pro 5.0 |
Pentium Pro 200 Mhz | 10 Mb | e2-e4 | +73.89 (no mate) | 7 | 01:24:53 | seen at 7:38 |
![]() Fritz 3.10 |
Cyrix P166/48Mb | 18 Mb | ? | Mate6 | 9/18 | 00:00:37 | |
![]() Fritz 4.1 |
Cyrix P166/48Mb | 18 Mb | ? | Mate6 | 9/16 | 00:00:35 | |
![]() Fritz 5 |
Cyrix P166/48Mb | 18 Mb | ? | Mate7 | 10/18 | 00:00:02 | |
![]() Hiarcs 6.0 |
Cyrix P166/48Mb | 18 Mb | ? | Mate14 | 7/23 | 00:00:13 | |
![]() Patzer 2.99y |
Sun Ultra1/167 Mhz | 32 Mb | e2-e4 | MateX | 9 | 00:03:44 | see notes |
|
Notes: In this amusing little problem, you can see once again the difference it makes a more modern program over an older one, even when run in the same hardware: Chess Genius 1.0 finds the mate 10 times faster than poor old Psion Chess (both programmed by Richard Lang). Also, Chess Master 2175 fails miserably, taking a very long time to search 11 plies, and even then finding just a slower mate in 8 instead of the required mate in 6. Chess Genius 1.0 finds a very slow mate in 11, but does it extremely quickly. Finally, using its special Mate in 6 level, it delivers the mate in a very short time, too. Rebel Decade 1.2 in its infinite level looks at 1.768.757 positions and finds the correct move, but evaluates it as a slow mate in 7. When using its mate level, if does find the correct mate in 6, after looking at 12.537.608 positions, some 4 times slower than CG1.0. Rebel Decade 2.0, the newer version, does exactly the same, only slightly faster. It examined 917.805 positions and recognized it was a mate in 7 after only 22 sec. calculation. Its commercial relatives, Rebel 8 and Rebel 9 do honour their names, for Rebel 8 thinks this is a mate in 8, and Rebel 9 disagrees, and thinks it's really a mate in 9. Perhaps a future Rebel 10 will evaluate it as a mate in 10 !. Anyway, they need a deeper search than RD2.0 (11 and 10 plies vs 9 plies) and do not find the existing shortest mate in 6, but the timings are reasonably fast. The Fritz family behaves quite well. Both Fritz 3.10 and Fritz 4.1 find the shortest mate in 6 very fast, looking at just 9 full plies, plus extensions. Fritz 5 finds a mate in an incredibly short time, but unfortunately it isn't the shortest mate but a slightly slower mate in 7. It does this while looking at 10/18 plies. And as usual, Hiarcs 6.0 makes itself noticed looking at just 7/23 plies, but finding a mate in 14 ! No less than 8 full moves longer than required !. At least it finds it fast !. Surprisingly, Crafty 12.7, even using a large 6 Mb hash table, takes very long to find this relatively simple mate, for unclear reasons. It does find the requested mate in 6, though. This bad result is all the more amazing if you compare it with the one corresponding to Test 13 below. Similarly, Crafty 12.6, running on even more powerful hardware and with 4 times larger hashtables, takes also surprisingly long to solve this mate. See the Addendum below for a suggested explanation given by its author, Robert Hyatt. Chess Master 5500 cannot find the shorter mate. It does find the correct move quite fast, but evaluated as as mate in 7, not 6. Using its special "Mate in 6" level it finally manages to find it, but some 15 times slower than the same level in CG1.0. And most surprisingly of all, Mchess Pro 5.0 cannot find any mate at all, even when allowed more than one hour. It looks at 7 full plies and discovers the correct move, but it doesn't think it gives mate in any particular number of moves ! A bug ? Patzer 2.99y does find the correct move at a depth of 9 plies, and recognized as a mate, though as usual, it cannot say in how many moves. The time is reasonable, and it examined 7.153.440 nodes while searching.
Addendum: This little problem represents a position that will probably never happen in actual play, of course, but it has a number of redeeming virtues: it's cute, it's very easy to remember, it can bet set up in a program very quickly, and it is both quite easy for humans, yet surprisingly difficult for machines, specially as it is a mate in only 6 ! Robert Hyatt, author of both Cray Blitz and Crafty, sent me an e-mail in which, commenting about this site and this specific test, he said that "Nicely done ... a few of the positions are really odd, such as a lone king vs all of white's pieces and pawns on their original squares. But many of the positions are interesting ..." In my reply, I asked him why Crafty took so long to solve this little mate in 6 test, when it was capable of solving Test 13, a mate in 13, in a mere couple of seconds or faster. His accurate reply was: " ... good question. Most likely has to do with null-move pruning, and the fact that there are *lots* of moves in one position, but in the other [Test 13] it is faced with lots of positions where there is only one legal move ..." and I totally agree with this explanation. Thanks, Robert.
|


| Program | CPU/Mhz | Hash table | Move | Value | Plys/Max | Time | Notes |
|---|---|---|---|---|---|---|---|
| Psion Chess | 486/25 | No | Qb4-c4+ | +3.00 | 7 | 00:31:11 | can't see it |
| Chess Genius 1.0 | P100 | 320 Kb | Ra1xb1+ | Mate13 | 13/25 | 02:14:13 | level=infinite |
![]() Rebel Decade 2.0 |
P100 | 512 Kb | Ra1xb1+ | Mate13 | 3 | 00:00:01 | amazing ! |
![]() Rebel 8 |
K6/233 | 60 Mb | Ra1xb1+ | Mate13 | 3 | 00:00:00 | instantly |
![]() Rebel 9 |
Pentium Pro 200 Mhz | 60 Mb | Ra1xb1+ | Mate13 | 3 | 00:00:01 | instantly |
| Crafty 12.7 | P100 | 6 Mb + 2 Mb | Ra1xb1+ | Mate13 | 6/25 | 00:00:02 | amazing ! |
![]() Crafty 12.6 |
Pentium Pro 200 MHz | 24 Mb + 16 Mb | Ra1xb1+ | Mate13 | 6/25 | instantly | see notes |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | Ra1xb1+ | Mate13 | 10 | 00:00:01 | instantly |
![]() MChess Pro 5.0 |
Pentium Pro 200 Mhz | 10 Mb | Ra1xb1+ | Mate13 | 7 | 00:00:03 | |
|
Notes: This is a typical race mate in which the mating side attacks the enemy king with a series of checks. Just some 13 moves later, it is finally checkmated. However, in this position, not all 13 moves are checks. There is an intermediate move which is neither a check nor a capture, thus making the problem much more difficult. Poor Psion Chess, running on obsolete hardware has no chance at all to find it, specially as it would need to look at 25 plies to see the mate. As it took half an hour for a mere 7-ply search, a 25-ply one would rival the age of the Universe !. On the other hand, Chess Genius 1.0 takes a somewhat long time, but it manages to find the 13-move mate after looking at 13 full plies, extended with 12 additional plies of check and capture searching, thus totalling the 25 plies required. No mean feat, indeed ! This, however, absolutely pales in comparison with Crafty 12.7, which finds the correct mate in 13 after looking at 6 full plies, plus 19 extended search ones, in a blink ! It's amazing, to say the least !!. It looks at just 55.952 nodes, and finds necessary to evaluate some 12.775 of them. Even more astonishing is the fact that not all 13 moves are checks !. Crafty 12.6 with better hardware and larger hash tables does the same, finding the move and announcing it as a mate in 13 instantly. So does Chess Master 5500, which looks at 10 plies and finds the correct mate in 13 instanly, too !. The same applies to MChess Pro 5.0, which only needs to look at 7 plies to find the mate in 13, but it takes a little longer nevertheless. Really impressive ! Finally, most impressive of all, freeware Rebel Decade 2.0 finds the same mate in 13, while looking at just 3 plies (5.967 positions examined only !! ), in 1 second. This is done in the normal levels of play, in sharp contrast to what happens when the special mate levels are tried: after more than 4 hours it was still trying to find out if it could be a mate in 8 ! (not to mention in 13 !!). Rebel 8 and Rebel 9 behave exactly as the freeware version, RD2.0, and do find the correct mate in 13 while looking at the same number of plies (3 plies), and also instantly.
|


| Program | CPU/Mhz | Hash table | Move | Value | Plys/Max | Time | Notes |
|---|---|---|---|---|---|---|---|
| Chess Genius 1.0 | P100 | 320 Kb | h2-h4 | +0.00 | 12/24 | 03:57:37 | sees 2. Ba3 |
![]() Rebel Decade 2.0 |
P100 | 512 Kb | h2-h3 | +0.35 | 12 | 01:48:40 | can't see the win |
![]() Rebel 8 |
K6/233 | 60 Mb | h2-h4 | +0.55 | 13 | 00:17:42 | sees Ba3 as draw |
![]() Rebel 9 |
Pentium Pro 200 Mhz | 60 Mb | h2-h4 | +0.51 | 12 | 00:09:28 | doesn't see win |
| Crafty 12.7 | P100 | 6 Mb + 1 Mb | Bb2-a3 | +3.024 | 13/17 | 01:33:33 | seen at 56m 33s |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | Bb2-a3 | +2.93 | 10/13 | 00:08:51 | |
![]() MChess Pro 5.0 |
Pentium Pro 200 Mhz | 10 Mb | Bb2-a3 | +3.27 | 9 | 00:15:18 | see notes |
|
Notes: Chess Genius 1.0 fails to solve this problem after searching 12 full plies plus 12 additional plies of the quiescence search, taking quite a long time. Curiously, it gives the correct move as the second move in its predicted main line. Besides, it evaluates the position just as a draw, not as a win for White, as required. Rebel Decade 2.0 also fails to find the correct move. It searches to a depth of 12 plies, and examines 89.337.919 positions, yet it does not succeed in finding the win. Rebel 8 and Rebel 9 do no better. They also fail to find the winning move when looking at 13 and 12 plies respectively (though much faster than RD2.0). This compares badly with Crafty 12.7 (13 plies), Chess Master 5500 (10 plies) and MChess Pro 5.0 (9 plies), all of which found the correct move. The first of them, Crafty 12.7, helped by its large 6 Mb hash table, does find the correct diverting sacrifice after looking one more full ply than CG1.0, though 3 times faster. Also, the fact that this move is best is seen in half the time required to assign it a precise value. However, the crown goes to Chess Master 5500 which solves this difficult test by looking at 10/13 plies. It finds the correct move and sees the proper gain, all nearly 4 times faster than Crafty 12.7. MChess Pro 5.0 also does quite well. It looks at one less ply than CM 5500, yet it finds the winning move and a greater gain, though it does it 2 times slower than CM 5500. It saw the correct move at 5:01, but evaluated as +0.01, then at 7:40 the evaluation rose to +0.51.
|


| Program | CPU/Mhz | Hash table | Move | Value | Plys/Max | Time | Notes |
|---|---|---|---|---|---|---|---|
| Chess Genius 1.0 | P100 | 320 Kb | Qg1-a1+ | +2.30 | 13/25 | 03:38:09 | selec=12 |
| Chess Genius 1.0 | P100 | 320 Kb | Qg1-a1+ | +2.39 | 8/14 | 00:00:13 | selec=6 |
![]() Rebel Decade 2.0 |
P100 | 512 Kb | Qg1-a1+ | +3.53 | 7 | 00:00:30 | seen instantly |
![]() Rebel 8 |
K6/233 | 60 Mb | Qg1-a1+ | +3.44 | 3 | 00:00:00 | instantly |
![]() Rebel 9 |
Pentium Pro 200 Mhz | 60 Mb | Qg1-a1+ | +3.44 | 5 | 00:00:02 | |
![]() Crafty 12.6 |
Pentium Pro 200 MHz | 24 Mb + 16 Mb | Qg1-a1+ | +2.83 | 8 | 00:00:41 | seen instantly |
![]() Chess Master 5500 |
Pentium Pro 200 Mhz | ? | Qg1-a1+ | +3.82 | 5/24 (!) | 00:00:10 | |
![]() MChess Pro 5.0 |
Pentium Pro 200 Mhz | 10 Mb | Qg1-a1+ | +1.70 | 7 | 00:13:23 | see notes |
|
Notes: This is an excellent example on how a little human judgment can help a chess program in solving a problem. A look at the results shows that Chess Genius 1.0 is capable of finding the correct move with a similar value for the position both searching 8 full plies plus 6 plies of checks and captures, or 13 full plies plus 12 extra plies. However, this deeper search is nearly 1000 times slower ! In this open position, there are a very large number of captures and checks possible, most of them useless. Restricting the extra search applied to terminal nodes from 12 plies to 6 plies finds most of the good threats, while costing much less effort. Rebel Decade 2.0 does quite well. It sees the correct move instantly, though with a low evaluation, then at 7 plies it evaluates it at a healthy +3.53. Going one ply deeper takes 1m 49 sec, but nearly repeats the evaluation, at +3.44. By then, it has examined 1.580.129 positions. Rebel 8 and Rebel 9 performance is great. They both find the correct move with the same large gain, +3.44, while looking at just 3 and 5 plies respectively in practically no time. Crafty 12.6 also finds the correct move, which it sees at once, too, and evaluates it as a win when it reaches 8 plies. The timing, though, is three times worse than CG.1 with selec=6, despite the hardware difference. Chess Master 5500 also does superbly with this test. It finds the proper move while looking at just 5 plies (with extensions to 24 plies for selected moves !), 4 times faster than Crafty 12.6, and it sees even greater gains. The time is on a par with that of CG1.0, which finds it faster, but seeing less gain. But MChess Pro 5.0 doesn't quite cut it. It finds the correct move almost 80 times slower than Chess Master 5500 (and nearly 200 times slower than good old CG1.0 !) and with half the gain. To be honest, it finds the move instantly, but evaluated at only +1.64. 7 plies and more than 13 min. later, the evaluation just raises to a low +1.70. No good.
|
