Print PV from TT

Discussion of chess software programming and technical issues.

Moderators: hgm, Rebel, chrisw

selectany

Print PV from TT

Post by selectany »

Hi

I have read somewhere that modern chess engines print their PV moves using stored moves during the search, from transposition table.
What are arguments against this method, if any ?
Harald
Posts: 318
Joined: Thu Mar 09, 2006 1:07 am

Re: Print PV from TT

Post by Harald »

selectany wrote:Hi

I have read somewhere that modern chess engines print their PV moves using stored moves during the search, from transposition table.
What are arguments against this method, if any ?
The normal PV from the triangular array may end after a few moves in a
hash table hit. The PV may be extended using hash table information.
You just temporarily make the best move, look in the HT, make a move, ...
Some engines may even remove the array approach and rely only on the hash table.

But the hash table is not very relyable.
First: it may also be short because some entry of the PV may be overwritten
and the positions and moves don't fit.
Second: The moves you find in the hash table may not be the ones that
belong to the PV that gave you a score and best move at the root.
The reason is: At the time when you get a new best move and PV at
the root the PV may be moves A B C D E F G H. All May be in the hash table.
Now you start a new deeper iteration following the PV in the hash. But
the PV may change now: Moves A B C D I J K L M are now stored in the hash table.
Then the time is out and you return to the root immediately.
If you use the HT to get the PV it looks ok but it isn't. And you may
wonder how the score fits to the last reached position. It doesn't.

Harald
selectany

Re: Print PV from TT

Post by selectany »

Some engines may even remove the array approach and rely only on the hash table.
Yes. One of the engines I have investigated use it (Beowulf).

Thanks.
bob
Posts: 20943
Joined: Mon Feb 27, 2006 7:30 pm
Location: Birmingham, AL

Re: Print PV from TT

Post by bob »

selectany wrote:Hi

I have read somewhere that modern chess engines print their PV moves using stored moves during the search, from transposition table.
What are arguments against this method, if any ?
1. No guarantee that the PV will remain in the TT until the end of the search.

2. You will get bogus PVs. That is, the PV you extract won't lead you to the position that produced the terminal score that was backed up.