Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Another funky hash problem

Author: Bruce Moreland

Date: 22:29:55 08/24/99

Go up one level in this thread



On August 24, 1999 at 22:02:33, James Robertson wrote:

>I was looking at my code and noticed that I never get any cutoffs when there is
>no available hash move.

I don't understand this.

> I modifed my code a little, and it sped up, but then I
>noticed tactical problems;

Are you fixing bugs or trying to make it go faster?  If you were trying to fix
something, why are you checking speed?

>on a certain test position it never finds a fairly
>obvious move. Anyway, here is my hash code in my search function.

You aren't sounding like someone who is in control of your code.  No offense,
but what makes you think that anything is wrong with the hash stuff?  What did
you do that made it faster and why do you think this may have destabilized it?

Sorry to sound weird but I still have a headache from the baseball game I
mentioned in the CM6K hacking thread.

bruce

>The third line checks to see if the hash move is legal. Since an UPPER flagged
>position may occassionally have no move, the 'blank move' is considered illegal
>and it skips any chance of a cutoff. I changed line 3 to
>if (!hr.move || board.IsLegal(hr.move)) {
>and got the problems I mentioned above. Can anyone help me with this?
>
>Thanks,
>James
>
>  HashRec hr;
>  if (!hash_move[ply] && hash_table.Probe(&board, &hr)) {
>    if (board.IsLegal(hr.move)) {
>      // Adjust mate score.
>      if (hr.score > MATE>>1) hr.score -= ply-1;
>      else if (hr.score < -MATE>>1) hr.score += ply-1;
>      if (hr.draft >= depth) {
>	if (hr.flags & EXACT) {
>	  return hr.score;
>	} else if (hr.flags & UPPER) {
>	  if (hr.score <= alpha) return hr.score;
>	} else if (hr.flags & LOWER) {
>	  if (hr.score >= beta) return hr.score;
>	}
>      }
>      hash_move[ply] = hr.move;
>    }
>  }



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.