Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Programming guru favour needed please

Author: Geoff

Date: 06:06:39 06/06/03

Go up one level in this thread


Hi Dan

Thanks for that code snippet it was interesting. I notice that Beowolf does a
reduced depth verification search to check the sanity of the null move result
before it really believes it is safe to prune the line.
I will try that idea in my code see how badly it affects speed and if it
rectifies the playing strength problem Null moving is causing.
I will post some test results when I have tried it.


>I can't really see what's wrong with your code, to tell the truth.
>
>You might set up some board with an obvious set of really 3-4 bad moves and one
>good one and trace it to see what is happening.
>
>For instance, here:
>
>[D]r3k3/2ppp3/Qp6/np6/8/8/8/3K4 w - -
>
>Most of the really dumb moves should obvously be trimmed by null move.

Here are the test results for this position

Null move switched off

Ply  Eval   Time      Nodes    Principle Variation
 1:    34      0            13   a6a8
 2:    34      0            43   a6a8 e8f7
 3:    44      0           200   a6a8 e8f7 d1e2
 4:   138      0           889   a6a8 e8f7 a8d5 e7e6 d5b5
 5:   138      0         2,821   a6a8 e8f7 a8d5 e7e6 d5b5
 6:   158      1        12,708   a6a8 e8f7 a8f3 f7e6 f3e2 e6d5 e2b5
 7:   158      4        56,577   a6a8 e8f7 a8f3 f7e6 f3e2 e6d5 e2b5
 8:   158     14       168,700   a6a8 e8f7 a8d5 f7f6 d5f3 f6e6 f3e2 e6d5 e2b5
 9:   158     51       759,053   a6a8 e8f7 a8d5 f7f6 d5f3 f6e6 f3e2 e6d5 e2b5
10:   219    289     3,382,981   a6a8 e8f7 a8d5 f7f6 d5d7 e7e6 d7c7 a5c4 c7c6
c4e3
11:   229    876    13,145,929   a6a8 e8f7 a8d5 f7f6 d5d7 e7e6 d7c7 a5c4 c7c6
c4e3 d1e2
12:   305   9873   112,934,816   a6a8 e8f7 a8d5 f7f6 d5d7 a5c4 d7c7 e7e5 c7c6
f6f5 c6b5 c4e3
13:   315  74386 1,145,245,644   a6a8 e8f7 a8d5 f7f6 d5d7 a5c4 d7c7 e7e5 c7c6
f6f5 c6b5 c4e3 d1e2


Null move switched on

Ply  Eval   Time      Nodes    Principle Variation
 1:    34      0           13   a6a8
 2:    34      0           43   a6a8 e8f7
 3:    44      0          200   a6a8 e8f7 d1e2
 4:   138      0          854   a6a8 e8f7 a8d5 e7e6 d5b5
 5:   138      0        2,639   a6a8 e8f7 a8d5 e7e6 d5b5
 6:   158      1        9,114   a6a8 e8f7 a8f3 f7e6 f3e2 e6d5 e2b5
 7:   158      3       31,653   a6a8 e8f7 a8f3 f7e6 f3e2 e6d5 e2b5
 8:   158      7      101,333   a6a8 e8f7 a8d5 f7f6 d5f3 f6e6 f3e2 e6d5 e2b5
 9:   158     25      348,706   a6a8 e8f7 a8d5 f7f6 d5f3 f6e6 f3e2 e6d5 e2b5
10:   219    175    2,027,229   a6a8 e8f7 a8d5 f7f6 d5d7 e7e6 d7c7 a5c4 c7c6
c4e3
11:   229    498    6,920,555   a6a8 e8f7 a8d5 f7f6 d5d7 e7e6 d7c7 a5c4 c7c6
c4e3 d1e2
12:   305   2406   28,127,351   a6a8 e8f7 a8d5 f7f6 d5d7 a5c4 d7c7 e7e5 c7c6
f6f5 c6b5 c4e3
13:   315  20496  288,027,046   a6a8 e8f7 a8d5 f7f6 d5d7 a5c4 d7c7 e7e5 c7c6
f6f5 c6b5 c4e3 d1e2

Results are exactly as they should be, identical PV's at all depths, only
difference is by ply 13 Null moving is pruning 75% of the possible nodes


I was wondering if the problem I am seeing is caused by the time limit being
reached part way through a ply search. I did try a mod to always let it complete
a search to the end of a ply before making the move. This did seem to make it
play very strongly, but that could have been simply due to the increased
thinking time.

               Geoff



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.