]> git.sesse.net Git - stockfish/blobdiff - src/search.cpp
Better naming and document some endgame functions
[stockfish] / src / search.cpp
index 15757c3a9ae7c025cc02f5c616380cc00976fc29..e2fdc4be3b7c1040cea7dc9ece64c68ee942e255 100644 (file)
@@ -190,9 +190,6 @@ namespace {
   // Remaining depth:                 1 ply         1.5 ply       2 ply         2.5 ply       3 ply         3.5 ply
   const Value RazorApprMargins[6] = { Value(0x520), Value(0x300), Value(0x300), Value(0x300), Value(0x300), Value(0x300) };
 
-  // The main transposition table
-  TranspositionTable TT;
-
 
   /// Variables initialized by UCI options
 
@@ -894,7 +891,7 @@ namespace {
         // Decide search depth for this move
         bool moveIsCapture = pos.move_is_capture(move);
         bool dangerous;
-        ext = extension(pos, move, true, pos.move_is_capture(move), pos.move_is_check(move), false, false, &dangerous);
+        ext = extension(pos, move, true, moveIsCapture, pos.move_is_check(move), false, false, &dangerous);
         newDepth = (Iteration - 2) * OnePly + ext + InitialDepth;
 
         // Make the move, and search it
@@ -918,8 +915,8 @@ namespace {
         }
         else
         {
-            if (newDepth >= 3*OnePly
-                && i + MultiPV >= LMRPVMoves
+            if (   newDepth >= 3*OnePly
+                && i >= MultiPV + LMRPVMoves - 2 // Remove -2 and decrease LMRPVMoves instead ?
                 && !dangerous
                 && !moveIsCapture
                 && !move_is_promotion(move)
@@ -927,10 +924,10 @@ namespace {
             {
                 ss[0].reduction = OnePly;
                 value = -search(pos, ss, -alpha, newDepth-OnePly, 1, true, 0);
-            }
-            else
+            } else
                 value = alpha + 1; // Just to trigger next condition
-            if(value > alpha)
+
+            if (value > alpha)
             {
                 value = -search(pos, ss, -alpha, newDepth, 1, true, 0);
                 if (value > alpha)
@@ -989,6 +986,8 @@ namespace {
                 // Print search information to the standard output
                 std::cout << "info depth " << Iteration
                           << " score " << value_to_string(value)
+                          << ((value >= beta)?
+                              " lowerbound" : ((value <= alpha)? " upperbound" : ""))
                           << " time " << current_search_time()
                           << " nodes " << nodes_searched()
                           << " nps " << nps()