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

[computer-go] Brown 1.0, release announcement



I have released Brown 1.0, a simple go program. This is a random go
player implementing GTP version 2. It can be downloaded (as source
code) from

http://www.lysator.liu.se/~gunnar/gtp/brown-1.0.tar.gz

This program is of potential interest to the following groups:
* People who want to see an implementation of the engine end of GTP
  version 2 which strictly follows the specification but is much
  smaller than the one in GNU Go. (Mainly because it does not have any
  private extensions.)

* People who want to see a reasonably simple implementation of the go
  board logic.

* People who want to test their GTP applications with an engine which
  strictly follows the GTP version 2 specification but tends to make
  uncommon choices where the specification leaves details open.
  (Default board size 6x6, default komi -3.14, starts with a couple of
  random stones on the board.)

Below is appended the README for the program.

Boston, March 28, 2004
Gunnar Farnebäck

-------------------------------------------

This is Brown, a simple go program.

Version:
1.0, released March 28 2004.

Main features:
* Plays randomly, but avoids filling small eyes.
* Portable, written in pure ISO C (conforms to the c89 standard).
* Talks the Go Text Protocol (GTP) version 2 on stdin/stdout.
* Small code base.

Secondary features:
* Follows the GTP version 2 specification strictly but makes uncommon
  choices where the specification leaves details open.
* Always correctly scores its own finished games. (Assuming simple ko
  rule and three passes to end the game.)

Author:
Gunnar Farnebäck
gunnar@xxxxxxxxxxxxxxxxx

Installation:
Compile the three files brown.c, gtp.c, and interface.c together into
a binary. An example for gcc is included in the Makefile.

Running:
Start the program and enter GTP commands. For a smoother interface,
use a GTP aware GUI. More information about the protocol and available
software can be found at http://www.lysator.liu.se/~gunnar/gtp.

Algorithm:
All empty vertices are considered, except
1) suicide moves and illegal ko captures (simple ko rule),
2) vertices which would be suicide for the opponent, unless playing
   there captures at least one opponent stone.
The move is randomly chosen from this list of vertices. It passes if
the list is empty.

Files:
README      - This file
brown.c     - Go board logic and move generation
brown.h     - Header file
gtp.c       - GTP support code, imported from GNU Go
gtp.h       - GTP header file, imported from GNU Go
interface.c - GTP interface code and main() function

License:
The MIT/X11 license. See the source code files for details.

Copyright:
The files gtp.c and gtp.h are taken from GNU Go and are copyright the
Free Software Foundation. The remaining files are copyright Gunnar
Farnebäck and are independent from GNU Go. Any similarities between
those files and code from GNU Go are due to constraints on the code
structure imposed by using gtp.c/gtp.h and the fact that corresponding
code in GNU Go was written by the same person.
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://computer-go.org/mailman/listinfo/computer-go