Hi Nick,
I would like to respectfully make these observation as an outsider coming
into computer Go. Let's call it constructive criticism.
I have noticed there is a "computer go culture" that is embarassingly
conservative about change that might be positive but that is
different. One of those tradition bound attitudes seems to be almost
an encouragement of programs that can't quite manage a real game or follow
simple rules. This was probably very useful a few years ago, but it
just doesn't make sense in 2005 in my opinion.
I would like programs to do things properly. But I know how difficult
it is to get it to happen.William Shuberts resolution protocol is really simple, simple enough to
be called elegant.
1. After 2 passes, the computers either agree or disagree about dead
stone status.
2. If they agree, GREAT, we are done.
3. If they disagree, each program is informed via
kgs-genmove_cleanup.
4. The play continues until both programs pass.
5. At this point, the protocol is slightly broken, but it should be
that the game is over PERIOD after the kgs-genmove_cleanup and 2
passes.
If the (supposedly) winning program fails to capture the opponents
dead stones, then who's problem is that? Apparently it's everyone
elses problem except for the program itself. Nothing elegant about
that.
Once KGS is fixed so that this works correctly, I hope more programs
will start to support it. Once something like three quarters of them
are supporting it, and moreover supporting it correctly and getting
sensible results, I can start to lean on the other quarter to get them
to support it too.I have just recently added code to deal with seki, somewhat
imperfectly but it works most of the time. Before this, my program
would occasionally lose won games because it would fill in those
points and get captured.
Wouldn't it be a lot "cleaner" just to give the program the win
anyway? The fact that my program could not quite finish the game
properly shouldn't be allowed to "taint" what I cosider the "correct"
results. I shouldn't have to be incovienced to the point of fixing
the seki code when we could simply adjusticate these positions before
it happens in order to return what really should have been the correct
results.
Before the two passes that constitute the game stop, the bots are
playing Go. This is what they are meant to be competing at. If they
screw it up and lose their seki groups, they take the consequences.Ok, I'm being very sarcastic to make a point, forgive me. No harm or
disrespect intended. But I feel it's no different with dead stone
resolution, it's nothing like rocket science. I believe computer go
programmers are smart people and can handle this properly. It's a
simple thing
I believe computer go programmers are smart people. I have doubts about
whether they can handle this properly, I suspect it is more difficult
than you think. And I am sure that some won't handle it properly until
a lot of pressure is applied.