Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Questions to Dr. Ernst A. Heinz about move ordering

Author: Robert Hyatt

Date: 06:03:28 10/25/00

Go up one level in this thread


On October 25, 2000 at 01:26:16, Pham Minh Tri wrote:

>On October 24, 2000 at 22:40:12, Robert Hyatt wrote:
>
>>On October 24, 2000 at 20:01:31, Pham Minh Tri wrote:
>>
>>>Hi,
>>>
>>>In the book "Scalable Search in Computer Chess" you listed the move-ordering
>>>scheme as following:
>>>1. hashed move
>>>2. good capture moves
>>>3. killer moves
>>>4. history moves,
>>>5. statically pre-sorted remaining moves
>>>6. bad capture moves.
>>>
>>>My question are:
>>>1. How about pv move? Do you install them into hash table? If yes, what is
>>>benefit (I think if we keep separating pv and hashed moves, we will have more
>>>good moves for searching first).
>>
>>I'm not Ernst, but think about your question.  Why would the hash table have
>>a "best move" that is _not_ the PV move?  The only problem is that the hash
>>table won't have a best move for every ply, because every other ply doesn't
>>have a "best move" at all in the context of alpha/beta.  The fix (for me) is
>>to simply "stuff" the PV into the hash table at the start of each iteration.
>
>
>Thank alot for your answer. Actually, I learnt how to stuff the PV moves into
>hash table from your Crafty. I was wordering why you do not retrieve pv move
>from pv table and use the best move from hash table as the second best move (it
>may improve a little move ordering)?
>

This should be an impossible condition.  If a move is stored in the hash table,
then is _must_ be the PV move by definition.  IE if you do a hash probe, and
you find something _other_ than the PV move for a position that is on the PV,
then you have a bug.


>
>
>>>2. How do you divide good and bad capture moves? Are the bad capture moves
>>>really "bad" therefore you listed them in the end (I mean they would be higher
>>>order)?
>>>3. Could you explain more details about statically pre-sorted remaining moves?
>>>Thank you in advance,
>>>Pham
>>
>>
>>Ernst uses MVV/LVA, which means the first capture he tries is the most valuable
>>piece that is being attacked by any of his pieces, and then he tries the least
>>valuable attacker for that piece.  Others of us use SEE (static exchange
>>evaluator) which is a bit more accurate, but costs a bit more computationally.



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.