]> git.sesse.net Git - stockfish/blobdiff - src/evaluate.cpp
First attempt at tweaking UnpairedPawnsTable[] values
[stockfish] / src / evaluate.cpp
index 2f8e63e5125e7a8f8feb67a90ec1acbb27f74e83..5f86227c2c5e9718e4ec76a967638167054ebff0 100644 (file)
@@ -430,6 +430,13 @@ Value do_evaluate(const Position& pos, EvalInfo& ei, int threadID) {
           factor[BLACK] = sf;
   }
 
+  // If we don't already have an unusual scale factor, use pawn
+  // evaluation ones.
+  if (factor[WHITE] == SCALE_FACTOR_NORMAL)
+      factor[WHITE] = ei.pi->scale_factor(WHITE);
+  if (factor[BLACK] == SCALE_FACTOR_NORMAL)
+      factor[BLACK] = ei.pi->scale_factor(BLACK);
+
   // Interpolate between the middle game and the endgame score
   Color stm = pos.side_to_move();
 
@@ -1217,11 +1224,10 @@ namespace {
             SafetyTable[i] = Value((int)(a * (i - b) * (i - b)));
     }
 
-    for (int i = 0; i < 100; i++)
+    for (int i = 1; i < 100; i++)
     {
-        if (SafetyTable[i+1] - SafetyTable[i] > maxSlope)
-            for (int j = i + 1; j < 100; j++)
-                SafetyTable[j] = SafetyTable[j-1] + Value(maxSlope);
+        if (SafetyTable[i] - SafetyTable[i - 1] > maxSlope)
+            SafetyTable[i] = SafetyTable[i - 1] + Value(maxSlope);
 
         if (SafetyTable[i]  > Value(peak))
             SafetyTable[i] = Value(peak);