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.