Author: José Carlos
Date: 06:56:38 11/10/03
Go up one level in this thread
On November 10, 2003 at 09:31:50, Bob Durrett wrote: >On November 10, 2003 at 05:00:20, José Carlos wrote: > >>On November 10, 2003 at 04:44:10, Jouni Uski wrote: >> >>>Hard for Ruffian (P4 2,4 GHz), not found in 20 minutes, BUT after executing >>>move sees very fast, that white is mated! Null move problem? >>> >>>Jouni >> >> I don't know for Ruffian, but I guess it's the same reason than for my >>program: in the initial position, the program must search a lot of moves of >>queen and rook, so it takes a while to search deep enough, but if you take the >>rook, gxf3 is forced and then there's a pawn ending, where it's much faster to >>search very deep. >> My program Anubis finds it in ply 22 after forcing Qxf3, very quicky, but from >>the initial position, after some minutes, it's still in depth 16, so it will >>take a long time to get the needed 23 plies (probably less due to extensions, >>maybe like 20 or 21). >> >> José C. > >Since chess engines in general are supposed to be weak at finding sacrificial >lines, perhaps the programmers should do something to minimize the problem. In >this case, having the sacrifice looked at first might have saved some time. > >Bob D. I don't know if I understand exactly what you mean. Chess programs search the tree iteratively, increasing depth every new iteration, so that when time runs out, the program plays the best move it has found so far. A position with very few alternatives, like a pawn ending, generates a a thick tree search. Such tree allows the engine to search deep, for example like 20 plies deep. Now a position with queens on the board migh have 20 interesting moves. The engine will be able to search 10 plies in the same time. (I'm making up the numbers just to show the idea). So if there's a way to transpose to a pawn ending, and the win can be seen 15 plies after the pawn ending happens, a search from the root position won't be able to see it. You can perform extensions that say "if the tree is very thick in some place then extend depth". This is done for example when in check. If I'm in check I have very few moves to get out of check (usually) so I extend the depth. But you can't (or at least I don't know how to do it efficiently) search a move very deep before any other move, because if you run out of time searching it, and it proves to be bad, you have no idea what to play. José C.
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.