Computer Chess Club Archives


Search

Terms

Messages

Subject: questions about crafty hash code

Author: Uri Blass

Date: 15:11:16 12/29/03


some questions:
1)Crafty is using fail hard so is there a reason to change alpha and beta in the
following code and not returning UPPER and LOWER without doing it?

  case UPPER:
        if (val <= *alpha) {
          *alpha=val;
		  return(UPPER);
        }
        break;
      case LOWER:
        if (val >= *beta) {
          *beta=val;
		  return LOWER;
		  }


2)I am not sure if I understand the following part of HashStore

if (type == EXACT) {
    if ((int) tree->pv[ply].pathl >= ply)
      word1l|=tree->pv[ply].path[ply];

What does pv[ply].path1 means?
I guess length of the pv line but I am not sure.

type=EXACT means exact score so if I understand correctly crafty stores the move
of the pv in the hash tables when the move of the pv is tree->pv[ply].path[ply]

If I understand correctly when type=EXACT
you may have tree->pv[ply].pathl >= ply when you do not probe the egtb when it
is 0 when you probe them.

Am I correct?

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.