Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Fast way to sort moves in movelist ?

Author: Robert Hyatt

Date: 20:49:13 10/15/99

Go up one level in this thread


On October 15, 1999 at 15:51:13, KarinsDad wrote:

>On October 15, 1999 at 15:31:21, Robert Hyatt wrote:
>
>[snip]
>>
>>
>>Just remember that this is right in the heart of the 'chess loop'.  Anything
>>you do here, you do once for every node in the tree, which means _often_.
>>
>>you could set up 7 linked lists and add moves to the end of the right list.
>>but when you analyze chess trees, you see why it doesn't work... because _so_
>>many positions in the tree only search one move and exit.  Why do all that
>>work?  when 1/2 of the time it is absolutely wasted?
>
>Well, the simple answer is that you don't do it.
>
>The complex answer is that you could do it depending on the position and score.
>
>If you could predict with a high level of certainty whether you will get a
>cutoff or not, you could reduce the amount of branching by creating a sorted
>move order for those positions which should cutoff (note: I did not say that all
>moves had to be sorted) and by not creating a move order at all for those that
>should not cutoff. The problem boils down to coming up with a prediction
>technique that is relatively accurate.
>
>Any ideas on how to do that Robert?
>
>KarinsDad :)


It is partially doable.  I did this pretty well in Cray Blitz, to predict where
to do a parallel 'split' for the parallel search stuff.  You want to split at
ALL nodes (where all moves must be searched), not at a CUT node (where hopefully
only one move is searched, but sometimes 2-3-4 before the cutoff is found).

But in general, it is difficult.  And when you are changing your mind anywhere
in the tree, _all_ move ordering becomes backward as CUT nodes become ALL nodes
and vice-versa.  And that blows you out of the water.



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.