[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: computer-go: head-to-head go engine testing
> My question is (perhaps) a FAQ, but I haven't seen anything readily
> available on the subject, so here goes:
>
> How would one test two go engines against each other? Say I am writing an
> engine, and would like to test it against another computer go engine. How
> would I go about doing that? ie. what communication protocol, etc. can I
> use to text program X against gnugo or another program Y that I also have
> written, if X and Y only support GMP (Go Modem Protocol)?
>
> Is there an architecture for this, or do I have to create my own server,
> a la NNGS et al, and have two engines connect and negotiate a game? How
> would I view such games (SGF, probably)? Would I be able to use NNGS for
> my purposes? Is there anything simpler?
The Go Text Protocol (GTP) is more convenient for testing
two engines against each other than the GMP.
http://www.lysator.liu.se/~gunnar/gtp/
A program called twogtp distributed with GNU Go can be used to play
tournaments of a few hundred games between two engines that support
the GTP, optionally saving the game records as sgf files. In practice
this is a pretty good way to compare two engines.
In addition to the above link (with a link to a draft specification
of the protocol) see the GTP documentation in the GNU Go Texinfo doc.
http://www.gnu.org/software/gnugo/devel.html
Dan