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

Re: computer-go: Computer Go Tournament Program



   From: Robert Jasiek <jasiek@xxxxxxxxxxxxxxxxx>

   Don Dailey wrote:
   > The only   issue is what  is   the score  if  they  fail  to agree  in
   > consecutive passes.  In this case, the arbiter gives  the score and if
   > this protocol is implemented  between  2 programs without an  arbiter,
   > then  we have the  notion of a correct  score (the actual Tromp/Taylor
   > score) and 2  players walking away  with a different  idea of what the
   > final score  is.  This is no  different semantically than  the players
   > disagreeing on the rules, in which case  they have no business playing
   > each other.

   Still I do not know whether and inhowfar we agree on the
   power and hierarchy of the programs, the program arbiter,
   the programmers, the human arbiter.

   --
   robert jasiek

You are  making me suspect  that you  have a compulsive  disorder!  It
sounds like you want to pin something down that is not possible.

The final arbiter is  the  ACTUAL Tromp/Taylor  score.  We  cannot get
into issue's of disagreement  on this.  It's  like saying 5 of us  all
disagree on  what 2+2 is, how should  we decide?  It's not likely that
we will invent a logical protocol for deciding if we cannot even agree
on what 2+2 is.

We could   get really anal   but  the whole point   is  a very  simple
agreement protocol here.  The key  word is "agreement."  Someone  will
build  an arbiter program which will  have a correct scoring algorithm
in it.  If  there is a bug in  it, it will  get noticed.  If there  is
disagreement about  whether there is a bug  in it we have  a recursive
nightmare.

If  you are talking   about    the issue  of 2   programs  arbitrating
themselves,  then there    is  no proper   solution  either.  But  two
reasonable programs will be  able to play  games without dispute.  The
programs have to AGREE  and  have a properly implemented  Tromp/Taylor
scoring  algorithm  or they will   walk away   from   the game with  2
different notions of what the score was.   In real life, you can never
force everyone to agree.

An example of  this  is Bobby Fischer.    He believes he  is still the
World Champion of Chess.  He did not accept  the protocol that most of
the  rest of the world  agree'd upon.  In my  own mind, I  don't see a
problem, there is no possible way to prevent each person from having a
different view  of the universe.  What  is an agreement  anyway?  It's
not a signature or anything verbal or a  formal procedure.  No one can
ever prove that you agree on something, you  just do.  In our protocol
we try to define things like "agree" based on a very formal procedure.

So in the same way, it's acceptable to me if 2 programs each "believe"
they won a game.  As defined by Tromp/Taylor only one of them actually
won and  it  is up to  each  observer  to determine  this.   It's also
possible   for the arbiter  to get  this wrong  and the same reasoning
applies.

But why drive yourself crazy?  Tromp/Taylor is  like 2+2, it's trivial
to calculate  correctly.  What we have  worked out appears  to be very
simple to implement  and is formal enough to  be very useful.  If  any
program implements the scoring part  wrong, so what?   There will be a
correct score for the game posted and  just like Bobby Fischer, we can
all tell him he was wrong.  

The  issue  of program  agreement  on scores  is  one  case where both
programs can be wrong.  This protocol is saying  that if BOTH programs
agree on the score, we are throwing truth out the window.  Is that the
part  you don't like?   Again, there is an  analogy in chess.  You can
resign or  agree to  draw in a  chess game  regardless of the  "truth"
inherent in the position.

If there is something bothering you about a possible ambiguous result,
give us an example scenario in which there  would be confusion that is
not handled by the protocol.

Don