Author: Stan Arts
Date: 03:58:28 09/25/04
Go up one level in this thread
On September 25, 2004 at 06:35:57, martin fierz wrote:
>well, as promised here are questions 4-7 of a zillion. perhaps i should also add
>that the train ride from zurich to brissago takes about 3 hours and that i have
>a centrino laptop, so i need some input :-)
>
>nullmove questions!
>
>1) do you save "don't nullmove" in your hashtable? if yes, how much does it help
>you? isn't this a tinytiny improvement, since if you do nullmove, and it fails,
>you have to research a much larger tree?
>you would be saving "don't nullmove" if your nullmove fails, right?
>
>2) related: do you save matethreat in your hashtable? is this not another
>tinytiny improvement?
>
>3) some people advocate not to nullmove if the side to move has few (mostly 0,
>perhaps also 1?) pieces. i realize that zugzwang is a problem for nullmove, but
>is it a real problem as far as games go? isn't it possible that in pawn endgames
>doing a nullmove would lead to a few embarassing losses, but help overall?
>
>4) i never thought much about verified 0-move pruning. but a post i read last
>week made me think: i always thought i could do the following:
>
>if(pieces > 0)
> if nullmove-fails-high
> return value;
>if(pieces == 0) // do a verification search
> if nullmove-fails-high
> verify result with a normal search with reduced depth.
> if verification-search-fails-high
> return value;
>
>now there was this post saying that this won't work because you have to disable
>the nullmove in your entire verification search. i don't understand why that
>would be? can somebody explain?
>
>cheers
> martin
Hi
Hmm, instead of storing not to do a nullmove, you could just avoid doing a
nullmove if you have a hashtable-entry for this position (stored depth then not
so important) with an alpha-score. Then it's unlikely the nullmove will fail
high.
Yes zugzwang problems with 0 pieces often occur in games. Here is a quick
(stupid, embarrased to show, but is a good example here..) game I played
yesterday against Neurosis. :
[Event "Computer chess game"]
[Site "STAN"]
[Date "2004.09.24"]
[Round "-"]
[White "Stan"]
[Black "Neurosis 1.81"]
[Result "0-1"]
[TimeControl "600"]
1. d4 d5 2. g3 Nf6 3. Bg2 e6 4. c4 Bb4+ 5. Nc3 O-O 6. Nf3 dxc4 7. O-O c5 8.
dxc5 Qxd1 9. Rxd1 Nc6 10. Nd4 Na5 11. Bg5 Bxc5 12. Bxf6 gxf6 13. Ndb5 f5
14. Nd6 Rd8 15. Nxc8 Raxc8 16. e3 Rd3 17. Bf1 Rdd8 18. Rac1 Bb4 19. Nb5
Rxd1 20. Rxd1 a6 21. Nd4 c3 22. Rc1 Nc6 23. bxc3 Nxd4 24. exd4 Rxc3 25.
Rxc3 Bxc3 26. d5 Bb4 27. Bg2 b6 28. Kf1 Kf8 29. Ke2 Ke7 30. f4 Kd6 31. dxe6
fxe6 32. Bb7 a5 33. Ke3 b5 34. h3 Bc5+ 35. Kf3 Bd4 36. Ba6 b4 37. Bc4 Bb2
38. Bb3 h6 39. Bc4 Bf6 40. Bb3 Ke7 41. Bc4 a4 42. Ke3 Bc3 43. Kf3 b3 44.
axb3 a3 45. b4 Bxb4 46. Bb3 Bc3 47. Ba2 h5 48. Bb3 Be1 49. Bc4 h4 50. gxh4
Bxh4 51. Bb3 Kd6 52. Bc4 Kc5 53. Bxe6 Kd4 54. Ba2 Kc3 55. Be6 Kb2 56. Bd5
a2 57. Bxa2 Kxa2 58. Ke3 Bf6 59. Kd3 Kb3 60. Ke3 Kc4 61. Kf3 Kd3 62. Kf2
Bh4+ 63. Kf3 Kd2 64. Kg2 Ke3 65. Kf1 Kf3 66. Kg1 Kxf4 67. Kg2 Ke3 68. Kf1
f4 69. Kg2 f3+ 70. Kg1 Ke2 71. Kh1 f2 72. Kh2 Kf3 73. Kh1 f1=Q+ 74. Kh2
Qg2#
{Neurosis claims: Black has mated} 0-1
At the ending, I would not lose by not moving, but by having to move I lose.
And this will just happen often.
I don't think doing nullmove in pawn endgames is that efficient in the first
place, because you don't have that many pieces to throw away, and promotion-
losses are harder to find with reduced depths. I think you will really gain
strength in endgames by avoiding nullmove with 1-0 pieces, because the search
will be much more solid. In Neurosis I disable if side to move has one light
piece or less, even with having a verificationsearch. (no nullmoves in the
verificationsearch.)
In my own testing, doing a single R=2 in a line, and having 1 zugzwang,
without any verificationsearch it delayed finding the tactic 4 ply! Doing
recursive nullmove then, and having more zugzwangs you will never find a
tactic, also with a verificationsearch with several zugzwangs you will still
never find a tactic.. So then the verificationsearch does not verify and is
useless, sort of.
Greetings
Stan
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.