On Thu, 2004-01-01 at 11:44, Gunnar Farnebäck wrote:
But, it seems that the problem is solvable in another way. If you are using non-Japanese rules, then you can always just resume the game and play it out to decide which stones are dead.
What about games under Japanese rules? Does KGS have a way to resolve disputes between humans?
On KGS, the official was to resolve scoring disputes is "get somebody strong to look at the game and give their opinion." I considered doing a "real" japanese scoring resolution system, but it would have been so complex that only rules experts would have been able to figure out how to use it - and rules experts are the people least likely to need it. (Can you imagine a 15k being told, "Now play on, but passing is the only ko threat, any changes to the board will be undone, and all that matters is whether the group in question lives or not"? Ugh!) The good news is, it's amazing how well the "get somebody strong" approach works for humans. For computers, it isn't such a good solution.
Does this sound like a reasonable solution? If any engine author is willing to try it, I could add it as a kgsGtp-specific command. Engines that support this command would be able to play rated on KGS, with no issues about cheating. On the other hand, if none of the engine authors are interested, then there's not much point in me adding it.
It's trivial to add to GNU Go, since such move generation already is implemented. In fact, playing out the game until everything except sekis are unconditionally settled is exactly what GNU Go does in its most accurate scoring mode.
Good to hear that it would be easy! Since it would be easy for gnu go, and Don Dailey thinks it sounds good, I'll try it out. If it gets used, great, if not, then it's not much work anyway.
Other engines may need a lot more work, at least if they want to do it well. Recognizing a bent four in the corner as dead by eye analysis is a lot simpler than proving it by playing it out since that requires knowledge of how to eliminate ko threats.
H'm, not being an engine author, this surprises me, but I guess it makes sense - pattern recognition to find a bent-4 would be easy, but unless you hardcode the moves, it would take a system very good at anlysis of kos to figure out that eliminating all ko threats must be done (and in fact always can be done) before starting the attack. But, if the engine cannot properly play to kill the bent-4, then does it really deserve to claim it as dead stones?