/// read_weights() reads evaluation weights from the corresponding UCI parameters
-void read_weights(Color us) {
+void read_evaluation_uci_options(Color us) {
// King safety is asymmetrical. Our king danger level is weighted by
// "Cowardice" UCI parameter, instead the opponent one by "Aggressiveness".
extern Value evaluate(const Position& pos, Value& margin);
extern void init_eval(int threads);
extern void quit_eval();
-extern void read_weights(Color sideToMove);
+extern void read_evaluation_uci_options(Color sideToMove);
#endif // !defined(EVALUATE_H_INCLUDED)
MultiPV = Options["MultiPV"].value<int>();
UseLogFile = Options["Use Search Log"].value<bool>();
- read_weights(pos.side_to_move());
+ read_evaluation_uci_options(pos.side_to_move());
// Set the number of active threads
ThreadsMgr.read_uci_options();
std::string RootMove::pv_info_to_uci(const Position& pos, Value alpha, Value beta, int pvLine) {
- std::stringstream s;
+ std::stringstream s, l;
+ Move* m = pv;
+
+ while (*m != MOVE_NONE)
+ l << *m++ << " ";
s << "info depth " << Iteration // FIXME
+ << " seldepth " << int(m - pv)
<< " multipv " << pvLine + 1
<< " score " << value_to_uci(pv_score)
<< (pv_score >= beta ? " lowerbound" : pv_score <= alpha ? " upperbound" : "")
<< " time " << current_search_time()
<< " nodes " << pos.nodes_searched()
<< " nps " << nps(pos)
- << " pv ";
-
- for (Move* m = pv; *m != MOVE_NONE; m++)
- s << *m << " ";
+ << " pv " << l.str();
if (UseLogFile && pvLine == 0)
{