Author: Uri Blass
Date: 02:56:44 03/08/06
Go up one level in this thread
On March 08, 2006 at 05:39:24, Tord Romstad wrote: >On March 07, 2006 at 21:42:15, Robert Hyatt wrote: > >>On March 07, 2006 at 16:01:57, Dann Corbit wrote: >> >>>Fruit uses late move reductions, and yet the search is perfectly symmetrical. >> >>Same number of nodes at same depth in all 4 positions? > >No, not even from the initial position, as you can see from my reply to Dann. > >>I don't see how he does it, but then again, bitboard programs have different >>issues. I have FirstOne() and LastOne(). But if you flip the board >>horizontally, I can't flip the way those two functions find the first 1 bit, >>so my moves are generated in a different order. > >Even if a program has perfectly symmetrical move ordering (which Fruit >does not have, by the way), the search will not be symmetrical, because of >the hash table. When sufficiently many of the lower order bits of the >Zobrist keys of two different positions match, they will be stored to the >same address in the transposition table. The lower order bits of the >two corresponding mirrored positions will of course generally not >resemble each other at all, and the positions will no longer be stored >to the same address. This means that the search can never be symmetrical, >as long as a transposition table is used. > >Tord Not exactly. It is possible to calculate 2 zobristy keys of 32 bits(one of the position and one of the symmetrical opposite position) and use the information to have symmetrical search because the zobrist key of position X will be the same as the zobrist key of position y that is symmetrical with different side to move. I do not do it but in theory you van get symmetric search with hash tables. Uri
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.