[Computer-go] monte carlo search; all valid moves?

Petr Baudis pasky at ucw.cz
Sat Mar 28 03:30:38 PDT 2015

On Sat, Mar 28, 2015 at 10:15:32AM +0100, Álvaro Begué wrote:
> I am not sure I understand the question. The only thing that is typically
> not checked in the playouts is superko. What other "validity checks" are
> you performing?

There is a few:

(i) No single stone suicide.  Can't think of how to playout without
that, you wouldn't know when to stop playing.

(ii) No multi stone suicide.  Sometimes in the fastest implementations
this rule is relaxed (i.e. you proclaim that you are using Tromp-Taylor
or New Zealand rules).  But in real-world engines, you need to check
things like self-atari or 2-liberty semeai and then a suicide check
naturally falls out from that too.

(iii) No ko. This is a pretty cheap check, and without it again your
playouts may end up looping.

BTW, the fastest playouts are probably done by libego and that's open
source.  But as I said in the past - consider not optimizing first;
write some reasonable playout heuristics first and *then* profile your

				Petr Baudis

More information about the Computer-go mailing list