Author: J. Wesley Cleveland
Date: 10:59:11 06/01/01
Go up one level in this thread
On May 31, 2001 at 10:44:18, Robert Hyatt wrote:
>On May 31, 2001 at 08:56:33, Gian-Carlo Pascutto wrote:
>
>>On May 30, 2001 at 15:14:46, Robert Hyatt wrote:
>>
>>>3. When I fail high, I just relax
>>>beta to +infinity, rather than the tiered approach I used in Cray Blitz. If
>>>there are lots of mates here, that are not forced, the program still has to
>>>search them all out as with +infinity, you get zero beta cutoffs at positions
>>>where white is to move, until you establish a better beta value after a lot
>>>of searching.
>>
>>Silly question...why don't you do it in Crafty? It's not like it's
>>hard to code, and it gives real benefits.
>>
>>I use the CB approach after you once described it here or on rgcc and
>>it's saved my ass a dozen times...
>>
>>--
>>GCP
>
>
>That is actually a good question. I guess I have simply not stopped to think
>about it, but it was obviously a reasonable idea. Harry had this one ugly
>position that at depth=12 would fail high, but we could not get a score back
>from ever. We discovered that the problem was that if we relaxed beta to +inf,
>about 90% of the positions were mates. Very deep mates. But not forced. When
>we put in the tiered fail-high, the problem went away. It has been on my to-do
>list for years, but I simply haven't gotten to it...
It appears to be trivial to do. I put the following code in iterate.c
int failinc[4] = {150, 350, 1000, MATE};
int failhi = 0;
root_beta += failinc[failhi++];
if (root_beta> MATE+1)
root_beta=MATE+1;
and it speeded up the result on this problem about 100 fold. It certainly needs
more testing and tweaking, but definitely seems worth looking at. Here are snips
from the log files.
before the change
13 31.70 3.39 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. Rh7 g5 7.
f7 Qxh8 8. Rxh8+ Kxf7 9. Rxc8 g4 10.
Kf2 Kf6
13-> 40.06 3.39 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. Rh7 g5 7.
f7 Qxh8 8. Rxh8+ Kxf7 9. Rxc8 g4 10.
Kf2 Kf6
14 48.98 ++ 1. Rxh7!!
14 121:42 4.01 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. f7 Qxh8
7. Rxh8+ Kxf7 8. Rxc8 Kg7 9. Kg2 g5
10. Bxg5 Rxb2+ 11. Kg3 e5
14-> 122:06 4.01 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. f7 Qxh8
7. Rxh8+ Kxf7 8. Rxc8 Kg7 9. Kg2 g5
10. Bxg5 Rxb2+ 11. Kg3 e5
after
13 29.80 3.39 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. Rh7 g5 7.
f7 Qxh8 8. Rxh8+ Kxf7 9. Rxc8 g4 10.
Kf2 Kf6
13-> 37.29 3.39 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. Rh7 g5 7.
f7 Qxh8 8. Rxh8+ Kxf7 9. Rxc8 g4 10.
Kf2 Kf6
14 45.65 ++ 1. Rxh7!!
14 1:26 4.01 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. f7 Qxh8
7. Rxh8+ Kxf7 8. Rxc8 Kg7 9. Kh2 g5
10. Bxg5 Rxb2+ 11. Kg3 e5
14-> 1:54 4.01 1. Rxh7 Kxh7 2. Rh2+ Kg8 3. Qh4 Bxf6
4. exf6 Kf8 5. Qh8+ Qg8 6. f7 Qxh8
7. Rxh8+ Kxf7 8. Rxc8 Kg7 9. Kh2 g5
10. Bxg5 Rxb2+ 11. Kg3 e5
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.