[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [computer-go] Third KGS tournament: game-end protocol



I have a thought on this, which seems able to solve this issue.

1. When B, W both passes, ask final_status_list
2. If results are same, we are fine and game ends
3. If there is a dispute on the status of the group, say there is a
B's group, B lists it as alive, W lists it as dead;  The server should
check whether the group is unconditional live by Benson's algorithm.
If the group is actually unconditionally alive, mark W as the loser.
If both party makes mistakes, then mark both as loser. And game ends
4. Otherwise, the burden of proof that the group is dead falls on W; 
4. Server sends W command say attack <any vertex of that string/group>
5. If W refuses to generate a move, mark W as loser;
6. If W generates a move, then resume the alternative play until both
passes and we go back to step 1.

We basically keep this loop until both party agree on the results.


On 6/9/05, Nick Wedd <nick@xxxxxxxxxxxxxxxxx> wrote:
> Hi Don,
> 
> In message <200506071849.j57InlhM007346@xxxxxxxxxxxxxxxxx>, Don Dailey
> <drd@xxxxxxxxxxxxxxxxx> writes
> >
> >Hi Nick,
> >
> >>  I have been persuaded by posters to this list that I should eventually
> >>  require bots playing in KGS computer Go tournaments to support the
> >>  game-end protocol.
> >
> >I think there is a misunderstanding here.  This should not be a
> >requirement.
> 
> Yes, I have misunderstood something.  I thought it was you who argued,
> very persuasively, that it ought to be a requirement.
> 
> >According the rules of Go, a player can pass whenever he wants to.
> >
> >kgs-genmove_cleanup is just "genmove" with a request attached to it.
> >The request is, "please try to capture your opponents dead stones."
> >
> >It is up to the program whether it wants to honor this request, because
> >it is not illegal to pass.
> >
> >Therefore the kgs-genmove_protocol command is a request at best, not
> >an enforcable demand (according to the rules of GO anyway.)
> >
> >That's why this whole business of having a human step in to clean up
> >the results is so unatural and ugly (in my opinion.)
> 
> But if the demand is not enforced, a human will have to step in and
> clean up.
> 
> >So why not just let the programs simply play by the rules?  Why add
> >more procedure to the end of the game protocol and make it
> >complicated?
> 
> I am lost here.  If we don't add more procedure to the end of the game,
> what do you think happens after both players have passed and they
> disagree about the status of a group?
> 
> >One huge advantage of Chinese rules is that there should never be an
> >argument at the end about whether a group is dead or not, it is simply
> >played out.  In fact, William Shubert set up the protocol to let
> >computers play the game the way the chinese rules expect.  This is not
> >a new idea or some elaborate scheme, it is part of basic chinese play.
> 
> But the way things were on Sunday, it _isn't_ played out.  I thought you
> were arguing for things to be changed so that it does get played out.
> 
> >And it doesn't require any program to do anything different unless
> >they want to.  It is legal to pass any time you want to in any
> >ruleset.  Of course it might be advantageous to clean up dead stones,
> >but it should not be "forced", even artifically after the game is
> >over.
> >
> >What's the worst thing that could happen?  A program will think it's
> >winning but fail to defend it's claim and lose the game.   But it's
> >not like the program didn't have a choice.   During the actual game,
> >the program is expected to defend itself,  why is it suddenly ok
> >not to defend itself when there is disagreement?
> >
> >
> >So here is what you could easily have:
> >
> >  1. William Shuberts kgs-genmove_cleanup protocol
> >  2. A programmers choice whether to implement the protocol or not.
> >  3. A programmers choice HOW to implement it if he does implement it.
> >  4. A server that can easily score all games without human intervention.
> 
> Ok, I am still lost.  On Sunday, most of the programs in the Formal
> division got involved in arguments that went "These stones are dead" "No
> they are alive" "Dead" "Alive" "Dead" "Alive" "Dead" "Alive" ....
>   Were all these programs implementing the protocol?
>   Were some of them implementing it?
>   If they weren't implementing it, do you still believe that their
> programmers could easily be induced to implement it?
>   What decision should I have made, when the group was in fact
> unsettled?
> 
> 
> >Even if your program accepts the "kgs-genmove_cleanup" it is up to the
> >program what it will do with the information (the knowledge that there
> >is a disagreement) and this can't be enforced by the rules of GO so it
> >can't properly be a requirement.
> >
> >But a good program will want accept this optional command and clear off
> >the opponents dead groups when it realizes the opponent is unaware that
> >his group is dead, otherwise it risks losing some points.
> 
> But what if it doesn't?
> 
> Nick
> --
> Nick Wedd    nick@xxxxxxxxxxxxxxxxx
> _______________________________________________
> computer-go mailing list
> computer-go@xxxxxxxxxxxxxxxxx
> http://www.computer-go.org/mailman/listinfo/computer-go/
>
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/