Users usually prefer a system that could automatically detect and fix problems. BSG can tolerate a lot of errors on data/actions.Torom wrote: ↑Sun Aug 29, 2021 5:01 pm Okay, so I understand where the error is coming from. But it should still be the case that the move with the highest score is played, no matter what order they are in the book, right? That's how I would expect it as a user. I also don't know how often it happens that moves in opening books are not in the "right" order.
However, that is not always easy. Sometimes it is hard, a dilemma, or even we should not fix.
For example, in that case, even we can agree that there are some things wrong with those moves of the opening book but we may not agree on the next steps. We may argue about what’s exactly wrong and how to fix it. Some people may think all moves are correct, just wrong order. But other people may think differently: those moves are in the correct order, just wrong scores. The rest may think: some moves, scores, and orders are totally wrong! We don't know how wrong the wrong data is! Why do we fix it in that way but not in another way? Perhaps, only the author can answer exactly.
On another hand, even BSG can pick a method to fix that data but the next question is that if we should fix it? When fixing those errors, actually BSG won’t support the Polyglot as its original standard but something new, say, Polyglot 2, which there is nothing better than the first one but reduces some requirements, just to cover some tiny mistakes/errors by a creator. If BSG does that, you may need to ask other programs to support that Polyglot 2 too. Of course, it’s impossible for old programs and you may wait for years for patches for some other programs. Look like asking the book creator to fix that issue is much easier and faster!
I think you are quite special since you can realize and discover that something was wrong. Almost all of us are not aware. In general, it is not easy for us to detect errors like that. However, the technique can help those cases. I have been considering developing a new function for verifying the correctness and consistences of opening books and inform any wrong on the data. Users, developers just run that function to check opening books when needed. Note that BSG has a somewhat similar function already for verifying Syzygy files.
So far, BSG uses the online book (chessdb.cn ) just for users to study, not for other purposes such as engines’ matches. The reason is that the Internet connection and lag maybe not be reliable and consistent. Today it may be fast enough but tomorrow it’s so laggy. There are also some questions that needed answers first such as how lagging and which timers can be accepted, what happens/how is the lag if not only one but many concurrent queries (from concurrent games), what should we do if there is no reply for a while? Should we count or not count book-query-time to engines thinking time?…Torom wrote: ↑Sun Aug 29, 2021 5:01 pm Another question: Would it be possible to play the moves from chessdb.cn automatically as an opening book? I realise that this is then really not quick, as the API has to be requested first (the answers could of course be cached). But it could still be interesting for longer time controls.