Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Move ordering ideas

Author: Ulrich Tuerke

Date: 03:51:13 03/08/01

Go up one level in this thread


On March 08, 2001 at 06:26:05, Ed Schröder wrote:

>On March 08, 2001 at 06:17:40, Ulrich Tuerke wrote:
>
>>On March 08, 2001 at 05:08:03, Matt McKnight wrote:
>>
>>>oops, messed up that last post...
>>>
>>>   I've been toying with some move ordering ideas, and I would like to hear some
>>>feedback on them.
>>>
>>>   First idea:
>>>     Inspired by the killers list, I tried keeping a list of two moves per ply
>>>that seemed to be bad ideas, (score < alpha) and using that to sort those moves
>>>in the future to the end of the list.  This seems to give me a small gain.  Is
>>>this idea good, or will it cost me in some positions?
>>>
>>>   Second idea:
>>>     Along with the history heuristic, how about sorting moves by the
>>>positional gain they make?  For instance:
>>>             score += piece_eval[to] - piece_eval[from];
>>>
>>>this also seems to help a little.  Again, is it helping or not?
>>>
>>>Also, are these ideas dumb and old?
>>
>>At least, your 2nd idea is not new. It has been tried in an old gnuchess
>>version. I don't know if it's still used by the more recent versions of gnu.
>>
>>IMHO, the drawback is that you have to evaluate in addition to the leaves also
>>the inner nodes in order to get these piece values. I experimented a bit with
>>this, but I didn't make a thorough analysis. Since I seemed to observe that the
>>gain from improved move order (which is there IMO) is not really worth the
>>performance loss by evaluating all nodes, I decided not to use this.
>>
>>However I guess that your suggestion may deserve more attention.
>>
>>Uli
>
>
>The second idea to sort "the remaining moves" by a piece_square table
>has been in Rebel from the very early start. Last time (about 2-3 years
>ago) I removed the algorithm (just to satisfy my curiosity) Rebel's
>performance in ply-depth decreased with a factor of 2. Surprised by the
>outcome I quickly activated the algorithm again.
>
>Ed

Thanks for the sharing your precious experience.
In the old gnuchess (IIRC), it wasn't just a piece-square table, but something
like the "net result" of the positional evaluation (weak field, king safety,
...) had been attributed to the square. Also creation of a doubled pawn for
instance resulted in a penalty for this move regarding move ordering.
Using solely a piece-square table instead may be a good alternative without
serious performance penalty.

Uli



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.