[computer-go] GTP and handicap

Andrés Domínguez andresdju at gmail.com
Thu Sep 7 14:11:09 PDT 2006


2006/9/7, Don Dailey <drdailey at cox.net>:
> On Thu, 2006-09-07 at 22:01 +0200, Rémi Coulom wrote:
> > By the way, GTP needs a way to specify the rules of the game.
>
> Yes, I agree with this.   There should be a very clean way to specify
> the rules of the game in a very concise and unambiguous way.

Me too.

> It could be coded up in a string, where each character of the string has
> some meaning, such as whether suicide is allowed, which version of KO is
> used, scoring system used, etc.   Then it could be expressed very
> conveniently in a short string.

I disagree. I think compact is bad (and of course is not GTP's style).
One rule, one command with the argument. Ex.

scoring_rule japanese
                  chinese

ko_rule simple
           positional_superko
           situational_superko

suicide_rule allowed
                  not_allowed

komi_rule fixed
               free

> What are the major differences?   I don't have a problem with komi being
> expresses separately.
>
>   Here is a little try:   J = Japanses scoring
>                           C = Chinese
>
>                           0 = simple KO
>                           1 = positional super ko
>                           2 = situation super ko
>
>                           S = suicide allowed
>                           N = No suicide
>
> So you could have  "C1N" as the rules cgos uses.   Strict tromp/talor is
> C1S", etc.

Your system reminds me GMP. "One rule, one command" is easier to
parse. Also, is easier to extend with new rules in future GTP versions.
And more important is easy to understand to a human, although not
knowing the command or arguments.

> I'm sure this doesn't consider all the possibilities, but it at least
> gets you close.
>
> I don't like the idea of having a different nomenclature for each kind
> of rule-set, such as "Ing", "Australian",  "Tromp/taylor" etc.

I agree with you now. A ruleset name is even less flexible than your
system. Also you have to investigate what Ing/Australina... rules are.

GTP doesn't try to be compact. It tries to be easy to parse for programs
and easy to read to humans. I think GTP is now in the right way. If
someone needs a compact protocol should use GMP.

Andrés Domínguez


More information about the computer-go mailing list