How to check null move??
Posted: 24 May 2005, 15:15
Have you got any idea how to check null move??
Maybe have you got any positions where you know correct results?
I haven't got repetition detection yet.
Results in initial position without null move:
Results in initial position with null move:
Results in initial position with null move (only doing by white side):
Results in initial position with null move (only doing by black side):
As you can see result of search is different when I use null move only for white and only for black. It make me feel worry but maybe it isn't wrong behaviour of my program. Null move for white side produce results similar to this without null move but need much longer time to reach depth 10 than null move for black side. But for black side results are different a little.
Please help me! How to dicover where is problem?
Probably in consequence of this problem my program in position...
r1b1qbk1/pp2n1rp/3p1B2/1N1Pp3/Q3Pp2/1P1N1Pp1/P3B1P1/2R2RK1 w ; id "";c0 "Armageddon Chess-Thialf, 28-03-2002 11:23";
[diag]r1b1qbk1/pp2n1rp/3p1B2/1N1Pp3/Q3Pp2/1P1N1Pp1/P3B1P1/2R2RK1 w[/diag]
...can't find correct result
Without null move can find it:
Maybe have you got any positions where you know correct results?
I haven't got repetition detection yet.
Results in initial position without null move:
- Code: Select all
1 h2h3 2 1 0.000
1 g2g4 4 2 0.000
1 f2f4 8 4 0.000
1 g1f3 20 7 0.000
1> g1f3 20 20 0.000
2 g1f3 0 42 0.000
2> g1f3 0 81 0.000
3 g1f3 20 146 0.000
3> g1f3 20 623 0.000
4 g1f3 0 1184 0.016
4> g1f3 0 2160 0.016
5 g1f3 16 4042 0.016
5> g1f3 16 11346 0.016
6 g1f3 0 22992 0.016
6> g1f3 0 49020 0.047
7 g1f3 10 98713 0.125
7> g1f3 10 432469 0.312
8 g1f3 0 983764 0.656
8 e2e4 4 1821744 1.297
8> e2e4 4 2138083 1.562
9 e2e4 12 7985752 5.750
9> e2e4 12 12845888 8.688
10 e2e4 8 48057366 34.235
10> e2e4 8 73989230 56.377
Results in initial position with null move:
- Code: Select all
1 h2h3 2 1 0.000
1 g2g4 4 2 0.000
1 f2f4 8 4 0.000
1 g1f3 20 7 0.000
1> g1f3 20 20 0.000
2 g1f3 0 42 0.000
2> g1f3 0 81 0.000
3 g1f3 20 146 0.000
3> g1f3 20 623 0.000
4 g1f3 0 1185 0.000
4> g1f3 0 2120 0.000
5 g1f3 16 3862 0.000
5> g1f3 16 3919 0.000
6 g1f3 0 14934 0.000
6> g1f3 0 45982 0.032
7 g1f3 10 67950 0.047
7> g1f3 10 69027 0.047
8 g1f3 0 399614 0.266
8 e2e4 4 1461721 1.016
8> e2e4 4 1463558 1.016
9 e2e4 2 2686623 1.969
9> e2e4 2 2717829 2.000
10 e2e4 1 15717371 10.876
10> e2e4 1 16041693 11.094
Results in initial position with null move (only doing by white side):
- Code: Select all
1 h2h3 2 1 0.000
1 g2g4 4 2 0.000
1 f2f4 8 4 0.000
1 g1f3 20 7 0.000
1> g1f3 20 20 0.000
2 g1f3 0 42 0.000
2> g1f3 0 81 0.000
3 g1f3 20 146 0.000
3> g1f3 20 623 0.000
4 g1f3 0 1184 0.000
4> g1f3 0 2160 0.000
5 g1f3 16 3900 0.000
5> g1f3 16 11224 0.000
6 g1f3 0 22406 0.016
6> g1f3 0 46653 0.031
7 g1f3 10 90395 0.062
7> g1f3 10 424851 0.250
8 g1f3 0 820093 0.516
8 e2e4 4 1652828 1.141
8> e2e4 4 1955943 1.375
9 e2e4 12 7620314 5.406
9> e2e4 12 12570049 8.453
10 e2e4 8 43789695 31.298
10> e2e4 8 70278420 52.486
Results in initial position with null move (only doing by black side):
- Code: Select all
1 h2h3 2 1 0.000
1 g2g4 4 2 0.000
1 f2f4 8 4 0.000
1 g1f3 20 7 0.000
1> g1f3 20 20 0.000
2 g1f3 0 42 0.000
2> g1f3 0 81 0.000
3 g1f3 20 146 0.000
3> g1f3 20 623 0.000
4 g1f3 0 1185 0.000
4> g1f3 0 2120 0.000
5 g1f3 16 4004 0.000
5> g1f3 16 4061 0.000
6 g1f3 0 15540 0.016
6> g1f3 0 45722 0.031
7 g1f3 10 73991 0.063
7> g1f3 10 75013 0.063
8 g1f3 0 525705 0.328
8 e2e4 4 1575969 1.078
8> e2e4 4 1577810 1.078
9 e2e4 2 3218747 2.422
9> e2e4 2 3250030 2.453
10 e2e4 1 25945580 18.313
10> e2e4 1 26280002 18.532
As you can see result of search is different when I use null move only for white and only for black. It make me feel worry but maybe it isn't wrong behaviour of my program. Null move for white side produce results similar to this without null move but need much longer time to reach depth 10 than null move for black side. But for black side results are different a little.
Please help me! How to dicover where is problem?
Probably in consequence of this problem my program in position...
r1b1qbk1/pp2n1rp/3p1B2/1N1Pp3/Q3Pp2/1P1N1Pp1/P3B1P1/2R2RK1 w ; id "";c0 "Armageddon Chess-Thialf, 28-03-2002 11:23";
[diag]r1b1qbk1/pp2n1rp/3p1B2/1N1Pp3/Q3Pp2/1P1N1Pp1/P3B1P1/2R2RK1 w[/diag]
...can't find correct result
- Code: Select all
1 c1d1 235 1 0.000
1 a2a3 236 11 0.000
1 d3e5 354 12 0.000
1 c1c8 555 20 0.000
1 f6g7 735 32 0.000
1> f6g7 735 43 0.000
2 f6g7 518 213 0.000
2> f6g7 518 2495 0.000
3 f6g7 518 2800 0.000
3> f6g7 518 7043 0.000
4 f6g7 518 10061 0.015
4> f6g7 518 11088 0.015
5 f6g7 518 28785 0.015
5> f6g7 518 29071 0.015
6 f6g7 -42994 54912 0.031
6 c1c8 149 84789 0.062
6> c1c8 149 86100 0.062
7 c1c8 36 241348 0.156
7> c1c8 36 249915 0.172
8 c1c8 15 895112 0.562
8> c1c8 15 923341 0.578
9 c1c8 -10 2562346 1.687
9 g1h1 5 19260633 13.407
9> g1h1 5 19346345 13.453
10 g1h1 2 30122419 19.297
10> g1h1 2 30842448 19.688
11 g1h1 1 98247239 61.267
11> g1h1 1 104190931 64.986
Without null move can find it:
- Code: Select all
1 c1d1 235 1 0.000
1 a2a3 236 11 0.000
1 d3e5 354 12 0.000
1 c1c8 555 20 0.000
1 f6g7 735 32 0.000
1> f6g7 735 43 0.000
2 f6g7 518 213 0.000
2> f6g7 518 2495 0.000
3 f6g7 518 2800 0.000
3> f6g7 518 7043 0.000
4 f6g7 518 10060 0.000
4> f6g7 518 45265 0.016
5 f6g7 518 58922 0.032
5> f6g7 518 150394 0.079
6 f6g7 -42994 216114 0.141
6 c1c8 149 241284 0.157
6 d3e5 195 335802 0.235
6 b5c7 330 590969 0.391
6> b5c7 330 837446 0.563
7 b5c7 -93 1014529 0.688
7 d3e5 17 1184603 0.797
7 c1c8 149 1325017 0.891
7 f6e7 224 2628787 1.844
7 d3f4 306 2948726 2.032
7> d3f4 306 3621165 2.469
8 d3f4 119 5167001 3.516
8> d3f4 119 20774057 13.829
9 d3f4 101 23947240 15.923
9 d3f2 104 53045841 36.439
9> d3f2 104 54188344 37.158
10 d3f2 -133 86699789 58.221
10 d3f4 100 115898441 76.487