On Wed, Jun 6, 2012 at 12:13 PM, Petr Baudis <[email protected]> wrote:

> On Wed, Jun 06, 2012 at 10:35:08AM -0400, Don Dailey wrote:
> > Is the issue simply the CGOS behavior,  the wrong bot losing on forfeit
> or
> > something like that?    If so it does need to be fixed.
>
> I think Folkert simply asked a honest question whether his program is
> required to implement superko to play on CGOS, and did not mean to
> ask for any changes in CGOS itself, just check the current situation.
>

I was not being critical,  I am just trying to understand the question and
it seems I did misunderstand.   The first response misdirected me because
in it was the suggestion that it might be possible to ignore superko - but
I see that was referring to the go program, not the server.

Thanks for the help in understand this.      I think Fatman and Lazarus, my
own programs,  basically used the approach of ignoring superko in the
playouts, but not in the tree.

Don




>
> To reiterate, the answer to Folkert's question is: yes, you need to
> support superko; make sure to educate yourself about positional vs.
> situational superko. Detection of superko using a hash table and Zobrist
> hashing (which is simple and useful to implement for other purposes too)
> is fairly straightforward.
>
> In case of MCTS, a simple and cheap way is to detect superko as "output
> filter" and use next best move in the tree if superko violation is
> detected; however, some situations may be significantly misread because
> of that.  The other extreme is detecting and avoiding superko even in
> simulations; that is fairly expensive (due to a guaranteed cache miss
> during hash table lookup, at the very least) and usually *not* done.
> The most common compromise is to detect and prune superko moves only
> in the game tree and check only the simple ko rule in simulations.
>
> Another point is to follow the usual maxim "be conservative in what
> you send and liberal in what you receive". It is good idea to accept
> even opponent moves which you believe violate superko and leave the rule
> enforcement on the server, since different environments might mandate
> different superko rules.
>
> Kind regards,
>
> --
>                                Petr "Pasky" Baudis
>        Smart data structures and dumb code works a lot better
>        than the other way around.  -- Eric S. Raymond
> _______________________________________________
> Computer-go mailing list
> [email protected]
> http://dvandva.org/cgi-bin/mailman/listinfo/computer-go
>
_______________________________________________
Computer-go mailing list
[email protected]
http://dvandva.org/cgi-bin/mailman/listinfo/computer-go

Reply via email to