Beispiel #1
0
 public virtual void Init()
 {
     logger.Debug(new DateTime());
     initialized = false;
     board.StartPosition();
     sortInfo.Clear();
     logger.Debug("Creating Evaluator");
     string evaluatorName = config.GetEvaluator();
     if ("simplified".Equals(evaluatorName))
     {
         evaluator = new SimplifiedEvaluator();
     }
     else
     {
         if ("complete".Equals(evaluatorName))
         {
             evaluator = new CompleteEvaluator(config);
         }
         else
         {
             if ("experimental".Equals(evaluatorName))
             {
                 evaluator = new ExperimentalEvaluator(config);
             }
         }
     }
     int size = BitboardUtils.Square2Index(Sharpen.Extensions.ValueOf(config.GetTranspositionTableSize
         ())) + 16;
     logger.Debug("Creating TT");
     // tt = new TwoTierTranspositionTable(size);
     // tt = new MultiprobeTranspositionTableNew(size);
     tt = new MultiprobeTranspositionTable(size);
     initialized = true;
     logger.Debug(config.ToString());
 }
Beispiel #2
0
 public virtual void Destroy()
 {
     config = null;
     observer = null;
     tt = null;
     evaluator = null;
     sortInfo = null;
     if (moveIterators != null)
     {
         for (int i = 0; i < MAX_DEPTH; i++)
         {
             moveIterators[i] = null;
         }
     }
     System.GC.Collect();
 }