Revert "Implement bestValue in root_search."
authorJoona Kiiski <joona.kiiski@gmail.com>
Sun, 12 Apr 2009 16:49:09 +0000 (19:49 +0300)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 18 Apr 2009 08:11:05 +0000 (09:11 +0100)
This reverts commit 9a39f93f35254787b7b57980019dde276a89c48c.

Revert bestValue in root_search

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/search.cpp

index 6aa13a5e84573ecfb6a3c5c1ecdecface8e72e67..b8d6a3a58ef7d3f6f953eca5f0665cec2a1b0cc6 100644 (file)
@@ -891,7 +891,7 @@ namespace {
 
   Value root_search(Position &pos, SearchStack ss[], RootMoveList &rml, Value alpha, Value beta) {
 
 
   Value root_search(Position &pos, SearchStack ss[], RootMoveList &rml, Value alpha, Value beta) {
 
-    Value bestValue = -VALUE_INFINITE;
+    //FIXME: Implement bestValue
     Value oldAlpha = alpha;
     Value value;
     Bitboard dcCandidates = pos.discovered_check_candidates(pos.side_to_move());
     Value oldAlpha = alpha;
     Value value;
     Bitboard dcCandidates = pos.discovered_check_candidates(pos.side_to_move());
@@ -899,7 +899,7 @@ namespace {
     // Loop through all the moves in the root move list
     for (int i = 0; i <  rml.move_count() && !AbortSearch; i++)
     {
     // Loop through all the moves in the root move list
     for (int i = 0; i <  rml.move_count() && !AbortSearch; i++)
     {
-        if (alpha >= beta) { //Aspiration window failed high, ignore rest of the moves!
+        if (alpha >= beta) {
           rml.set_move_score(i, -VALUE_INFINITE);
           //Leave node-counters and beta-counters as they are.
           continue;
           rml.set_move_score(i, -VALUE_INFINITE);
           //Leave node-counters and beta-counters as they are.
           continue;
@@ -982,7 +982,7 @@ namespace {
 
         assert(value >= -VALUE_INFINITE && value <= VALUE_INFINITE);
 
 
         assert(value >= -VALUE_INFINITE && value <= VALUE_INFINITE);
 
-        if (value <= bestValue && i >= MultiPV)
+        if (value <= alpha && i >= MultiPV)
             rml.set_move_score(i, -VALUE_INFINITE);
         else
         {
             rml.set_move_score(i, -VALUE_INFINITE);
         else
         {
@@ -1018,12 +1018,8 @@ namespace {
                     LogFile << pretty_pv(pos, current_search_time(), Iteration, nodes_searched(), value, ss[0].pv)
                             << std::endl;
 
                     LogFile << pretty_pv(pos, current_search_time(), Iteration, nodes_searched(), value, ss[0].pv)
                             << std::endl;
 
-                if (value > bestValue)
-                {
-                  bestValue = value;
-                  if (value > alpha)
-                    alpha = value;
-                }
+                if (value > alpha)
+                  alpha = value;
 
                 // Reset the global variable Problem to false if the value isn't too
                 // far below the final value from the last iteration.
 
                 // Reset the global variable Problem to false if the value isn't too
                 // far below the final value from the last iteration.
@@ -1050,17 +1046,16 @@ namespace {
                     std::cout << std::endl;
                 }
                 alpha = rml.get_move_score(Min(i, MultiPV-1));
                     std::cout << std::endl;
                 }
                 alpha = rml.get_move_score(Min(i, MultiPV-1));
-                bestValue = alpha; //In MultiPV-mode bestValue and alpha are always same thing.
             }
         }
 
             }
         }
 
-        if (bestValue <= oldAlpha)
+        if (alpha <= oldAlpha)
           FailLow = true;
         else
           FailLow = false;
 
     }
           FailLow = true;
         else
           FailLow = false;
 
     }
-    return bestValue;
+    return alpha;
   }
 
 
   }