Author: Uri Blass
Date: 05:11:26 07/31/02
Go up one level in this thread
On July 30, 2002 at 16:26:37, Thorsten Czub wrote:
>On July 30, 2002 at 15:17:39, Uri Blass wrote:
>
>>On July 30, 2002 at 15:02:25, Tony Werten wrote:
>>
>>>On July 30, 2002 at 13:56:53, Thorsten Czub wrote:
>>>
>>>>in an old program i can set the null move margin on or off.
>>>>what is the function doing ? any ideas or explanations from the programmers?
>>>
>>>I'll give it a guess.
>>>
>>>Normally when you do a nullmove and the score returned is > beta you get a
>>>cutoff. The idea is that if doing nothing already gives bigger than beta, doing
>>>something would give even more.
>>>
>>>You can go one step further with this idea. Since doing something would be
>>>better than doing nothing, then doing nothing doesn't have to be > beta but only
>>>> beta - margin since I expect that a move is worth at least "margin"
>>>
>>>Tony
>>
>>I thought about the opposite.
>>
>>Null move pruning was considered to be a dangerous pruning because you may miss
>>threats and this is probably the reason that programmers like richard lang never
>>used it.
>>
>>If you want to be more careful in pruning you may try to prune only moves when
>>the score after null move is at least beta+margin.
>>
>>Thorsten asked about an old program so it is logical to guess that they tried to
>>reduce the demage by using null move margin.
>>
>>It is possible to find who is right simply by finding if increasing the null
>>move margin help the program to get bigger depth.
>>
>>If increasing the null move margin help the program to get bigger nominal depth
>>then Tony is probably right.
>>
>>Uri
>
>
>thanks. i will let you know :-))) about it. i will try it out.
1)What are your results and what is the old program?
2)Do you plan to do another
tournament at 120/40 in the near future and
do you think to include my movei in that tournament?
Movei is still not close to the level of the
top programs but it is not without chances
inspite of the fact that it does not know about
passed pawns or about king safety and it can attack
the king only because of mobility reasons.
In the last test match of peter berger
(time control 30 minutes per game+
5 seconds per move)
it could get 20% against yace in 50 game match
(7 wins and 6 draws when yace used only defensive
learning to avoid losing the same game twice and
movei used no learning).
Here is one game of the match and
a nice test position.
Movei used a very small book
(I wrote all the moves manually)
and it found itself out of book at move 4.
[Event "Computer chess game 0 1800 +5 0 0"]
[Site "?"]
[Date "2002.07.29"]
[Round "19"]
[White "movei00_74"]
[Black "Yace 0.99.72"]
[Result "1-0"]
[WhiteElo "0"]
[BlackElo "0"]
[ECO "D20"]
[Opening "QGA"]
[Variation "3.e4"]
[Timecontrol "0 1800 +5 0 0"]
[Time "Mon Jul 29 06:59:29 2002"]
[last_book_move "6...Nc6"]
[LogFile "logs\yace0107.log"]
1. d4 {0.00s} d5 {0.00s} 2. c4 {0.01s} dxc4 {0.00s} 3. e4 {0.01s} Nf6 {0.06s}
4. e5 {95.99s} Nd5 {0.31s} 5. Bxc4 {63.27s} Nb6 {0.06s} 6. Bd3 {40.24s} Nc6
{0.11s} 7. Nf3 {67.47s} Be6 {-0.28/11 81.70s} 8. Nc3 {56.84s} (8. O-O) 8...Qd7
{-0.35/10 51.51s} 9. O-O {62.05s} (9. Be3) 9...O-O-O {-0.27/10 85.65s} 10. Be3
{69.20s} Nc4 {-0.37/9 71.72s} 11. Na4 {87.13s} (11. Be4) 11...Bd5
{-0.24/10 45.98s} 12. Nc5 {42.12s} (12. Rc1) 12...Qg4 {0.07/10 39.52s} 13.
Bxc4 {34.52s} Bxc4 {-0.16/10 37.51s} 14. h3 {37.70s} (14. Rc1) 14...Qh5
{-0.19/10 46.23s} 15. Qa4 {29.00s} Bxf1 {-0.33/10 44.43s} 16. Rxf1 {45.85s} a6
{-0.73/11 39.76s} 17. Rc1 {37.27s} Nb8 {-2.49/11 214.71s} 18. Qa5 {36.48s} c6
{-7.02/11 184.75s} 19. e6 {19.79s} Qxc5 {-7.16/11 18.12s} 20. dxc5 {44.87s}
fxe6 {-10.90/14 83.89s} 21. Bf4 {24.58s} Rd7 {-10.90/13 29.18s} 22. Ne5
{59.92s} g5 {-11.55/13 36.44s} 23. Nxd7 {25.49s} (23. Bg3) 23...gxf4
{-12.37/15 32.63s} 24. Nb6+ {29.37s} Kd8 {-M08/15 27.73s} 25. Qe1 {28.10s} Rg8
{-M07/14 7.61s} 1-0 {Black resigns}
The test position is to find 15...Bd5 that is the
only chance for black(Yace failed to find the move
in the game and movei also failed to expect
that move when it sacrificed the rook by 15.Qa4).
Some programs may find it fast for
positional reasons but Crafty seems to have
big problems with that position.
Hardware that I used for Crafty was p800
(30 Mbytes hash for crafty under
chessbase interface).
The position was analyzed for more than 30 minutes
but crafty could not get depth 15.
movei00_74 - Yace 0.99.72
[D]2kr1b1r/ppp1pppp/2n5/2N1P2q/Q1bP4/4BN1P/PP3PP1/R4RK1 b - - 0 1
Analysis by Crafty 18.15:
15...Bxf1 16.Rxf1
-+ (-1.80) Depth: 1/12 00:00:00
15...Bxf1 16.Rxf1
-+ (-1.80) Depth: 2/12 00:00:00
15...Bxf1 16.Rxf1 e6
-+ (-2.19) Depth: 3/12 00:00:00
15...Bxf1 16.Rxf1 e6 17.Bg5
-+ (-2.02) Depth: 4/12 00:00:00
15...Bxf1 16.Rxf1 e6 17.Rc1 Kb8
-+ (-2.10) Depth: 5/14 00:00:00
15...Bxf1 16.Rxf1 e6 17.Nxb7 Kxb7 18.Qb5+ Ka8 19.Qxc6+
³ (-0.47) Depth: 6/16 00:00:00 29kN
15...Bxf1 16.Rxf1 e6 17.Nxb7 Kxb7 18.Qb5+ Kc8 19.Qxc6
³ (-0.38) Depth: 7/16 00:00:00 97kN
15...Bxf1 16.Rxf1 e6 17.Nxb7 Kxb7 18.Qb5+ Kc8 19.Qxc6 Qf5
³ (-0.58) Depth: 8/20 00:00:01 248kN
15...Bxf1 16.Rxf1 a6 17.Qb3 Na5 18.Qc3 Nc6 19.Nxa6 Qg6 20.Nc5
= (0.06) Depth: 9/20 00:00:03 1116kN
15...Bxf1 16.Rxf1 a6 17.Qb3 Na5 18.Qc3 Nc6 19.Qb3
= (0.00) Depth: 10/28 00:00:06 2087kN
15...Bxf1 16.Rxf1 a6 17.Qb3 b6 18.Nxa6 Nb8 19.Nb4 Kd7 20.Rc1 Ke8 21.Rxc7
= (0.10) Depth: 11/28 00:00:16 6719kN
15...Bxf1 16.Rxf1 a6 17.Nxa6 bxa6 18.Qxc6 Qg6 19.Qc3 e6 20.Rc1 Rd7 21.Bg5
² (0.41) Depth: 12/32 00:00:39 16598kN
15...Bxf1 16.Rxf1 a6 17.Rc1 Nb8 18.Qa5 b6 19.Nxa6 Nxa6 20.Qxa6+ Kb8 21.Qc4 Rc8
22.d5 Qf5
² (0.34) Depth: 13/33 00:02:12 56372kN
15...Bxf1 16.Rxf1 a6 17.Rc1 Nb8 18.Qa5 b6 19.Nxa6 Nxa6 20.Qxa6+ Kb8 21.d5 Qg6
22.Qc4 Rc8 23.Bf4
² (0.66) Depth: 14/36 00:06:20 165361kN
(Blass, Tel-aviv 31.07.2002)
Uri
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.