Author: Leen Ammeraal
Date: 22:28:35 12/06/00
Go up one level in this thread
On December 06, 2000 at 16:08:56, Robert Hyatt wrote: >On December 06, 2000 at 12:45:30, Leen Ammeraal wrote: > >>I have the impression that most chess programmers >>use their hashtables to store >>only one evaluation value, along with a flag >>denoting Lower, Upper, or Exact. >>Why not store both a lower and an upper bound, >>where lower = -inf or upper = +inf if only one >>real bound is available? A flag is then >>superfluous, since this follows from >>the two bound values. > >If you use mtd(f) you _must_ do this. For the other search approaches, it >probably won't help much at all, and it does use more memory. Nothing wrong >with trying it to see what you get, of course... > > > >>For example: >>LB UB Flag value (not stored) >>-inf 100 Upper >>-20 +inf Lower >>30 30 Exact >>This also offers the possibility to store >>two different bounds at the same time, as in >>LB = -50, UB = 70. >>This is the way I do it, but, unfortunately, >>my program is weaker than most others. >>Could this be because this idea of storing >>two bounds and no flag is wrong? >>Leen Ammeraal Do you mean: two ints when storing LB and UB while one int and one byte when storing a single bound and a flag? Yes, this makes a difference, so I will reconsider my design, also because of Cleveland's reply about different depth for the two bounds. He says you use two separate entries in Crafty, which I think I should do too. I assume you also use the depth values to compute the hash key, is that right?
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.