1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-29 16:23:09 +00:00

Implement "seldepth" UCI info

This is the "selective search depth in plies" and we set
equal to PV line length.

Tested that works under FritzGUI.

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
This commit is contained in:
Marco Costalba 2010-12-31 13:19:05 +01:00
parent 3e8bb6f63d
commit 4d6258bb32
3 changed files with 10 additions and 8 deletions

View file

@ -414,7 +414,7 @@ void quit_eval() {
/// 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".

View file

@ -29,6 +29,6 @@ class Position;
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)

View file

@ -451,7 +451,7 @@ bool think(Position& pos, bool infinite, bool ponder, int time[], int increment[
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();
@ -2611,19 +2611,21 @@ split_point_start: // At split points actual search starts from here
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)
{