Author: Volker Böhm
Date: 06:56:26 01/15/04
Go up one level in this thread
On January 15, 2004 at 08:06:34, Tord Romstad wrote: >I generate safe moves for hanging pieces if all of the following are >satisfied: > >a) The value of the static eval is >= alpha. > >b) At least two of the pieces for the side to move is hanging. > >c) static_eval-(value of capturing the smallest hanging piece)/4 < alpha> >d) I am in one of the first two plies of the qsearch. > >Always generating all safe moves for all hanging pieces is probably a >waste of time. For instance, if you are a queen up, it is not very >important to find out whether it is possible to save a hanging knight. >And in positions with only one hanging piece, it will usually be safe >to assume that the piece can be saved. Of course there are exceptions, >but I think it is better to ignore them and use the time saved to >search deeper. Hanging pieces in the qSearch?! I planned (not yet implemented) to search one ply deeper if my eval reports: 1. More than one hanging pieces (and pieces attacked by less valuable pieces). 2. A tied (hope this word is correct, I mean a piece that can´t move because it has a king or a valuable or hanging piece behind) piece attacked by a "smaller" piece. 3. Some kind of mate threads Tried this too? How did you implement the "hanging piece" move? In q-Search you are never forced to move. That´s why the resulting value is max(current-static-value, qSearch-value). Moving away hanging pieces wouldn´t give much additional value. Conclusion: This results to nothing. Only possibility is to give hanging pieces a huge negative score in eval. Drawback: a hanging piece that is easily defendet by another piece gets a negative score but is quite ok. Thats why I tend to extend the search by one ply if these situations arises at the horizont. Greetings Mangar.
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.