Author: Robert Hyatt
Date: 02:11:39 08/10/98
Go up one level in this thread
On August 09, 1998 at 23:09:20, blass uri wrote: >I know DB and Cray blitz use singular extensions (when one move is clearly >better than the others they analyze it more) and I have some questions >1) how much time do the programs analyze a move to decide it is singular. >Is it a function of the total time you give the program? There are several cases to handle, but lets take the case where a move is a "PV-node"... ie this is the "best" move at this ply, and the "best" move at this ply is going to be part of the PV (say this is the move at ply=2, that follows playing the supposedly "best" move at the root). After searching this first move, you would normally search the remainder of these ply=2 moves with the alpha/beta window (alpha,beta). With SE, you search the remainder of the ply=2 moves with the window (alpha-M,beta-M) instead. If all the remainind ply=2 moves still fail low, you know that the first move is "singular by M" or that it is at least M better than any of the other ply=2 moves. You re-search this move to depth+1 because it is "singular." This does get messy, however, because the first move you search might not be best, but basically you extend a move X at ply=N, if, for all moves at ply=N, val(X) > val(all other moves)+M. The fail high nodes are messier but use the same approach, just that even at a fail-high node, where normally you only search one move, you search all moves, with an offset window as above, but to reduced ply. > >2)what is exactly a singular move >(what is the minimal difference in evaluation between the best move and the >second best move to decide that a move is singular). In Cray Blitz, we settled on a value about 2/3 of a pawn. But our positional scores rarely exceeded 1/2 pawn. I am going to try this in Crafty later, but with its much larger positional scores, I don't know if this value would be acceptable or not. > >3)In what lines do the programs use singular extensions? > *anywhere* you can prove that one move is clearly better than another, living within the constraint that you can't over-extend. IE I took the DB/DeepThought approach in CB that said no more than two extensions on any two consecutive plies (average of one ply of extension per ply of search). >4)are there other programs who use singular extensions? Richard claimed to use a "cheapo" version in genius 2, or genius 3. It was the major addition between the two versions, whichever ones they were. "Cheapo" means that you find that a move is singular this iteration, but you don't research to depth+1, you simply make a note and extend the "next" iteration. Saves overhead, but won't catch things on the last iteration. And he didn't do the fail-high form at all, just "PV-singular" moves. > >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.