The second transposing line gets a slightly better score at depth 5, probably by different move ordering. I don't see a reason to ignore that and keep the old pv.
I must admit that it is far less than i was expecting. So it seems indeed reasonable to show these lines, at least at bigger depth.
Well, it is actually a lot more than I had expected. I don't think it is very useful to print the lower bounds. Exact scores, having a full PV, are quite useful in analysis, though. As long as it doesn't switch PV is would only print a single info line.
RubiChess wrote: ↑Sat Nov 09, 2024 6:21 pmThis is what's happening:
The second transposing line gets a slightly better score at depth 5, probably by different move ordering. I don't see a reason to ignore that and keep the old pv.
Indeed, you would not want to keep the old PV if you find a better one. But you could have printed it before discarding it, or in fact together with the -83 score. From the POV of an analysis user, this is indeed very annoying behavior.
hgm wrote: ↑Sat Nov 09, 2024 7:40 pm
But you could have printed it before discarding it, or in fact together with the -83 score. From the POV of an analysis user, this is indeed very annoying behavior.
I disagree. If the user wants to see inferior moves and scores, he should use multipv n>1.
hgm wrote: ↑Sat Nov 09, 2024 7:40 pm
But you could have printed it before discarding it, or in fact together with the -83 score. From the POV of an analysis user, this is indeed very annoying behavior.
I disagree. If the user wants to see inferior moves and scores, he should use multipv n>1.
Multi-PV is a different engine mode, which causes a serious slowdown. Information about why a previous PV gets refuted at larger depth can be given completely for free. Your remark falls in the same class as saying to someone who complains about potholes in the highway that this is no problem because he could have taken an airplane to fly to his destination...
hgm wrote: ↑Sun Nov 10, 2024 10:36 am
Information about why a previous PV gets refuted at larger depth can be given completely for free. Your remark falls in the same class as saying to someone who complains about potholes in the highway that this is no problem because he could have taken an airplane to fly to his destination...
The information is implicit there. pv changes -> old pv score was too low. If you fail to get this, you have to take the plane.
In the example above, the additional output looks like this:
You get to know the upper bound for the score, and you get to know the move that was found to suppress the score to below that level. None of which follows from the fact that the PV move was changed in that iteration. If you don't understand that, you'd better take the plane...
What you call "spamming the UCI log' is in fact conveying extra information that many people would find useful. Not the people who are only interested in counting the number of wins in an engine match, of corse. To those every info line is spamming of the UCI log; only the bestmove commands are relevant.
This only happens because stockfish devs are incompetent people, you might use some much stronger stockfish derivatives like shashchess to get proper analysis that are also much better at higher time controls.