howard@cpocd2.UUCP (Howard A. Landman) (10/17/87)
I've been playing around with the Go program developed for the Mac by
Jim Logan at BYU under Lynn Beus. The version I have is "Go V1.0B4".
First the bug. The final score reported when you select "Final Score"
from the "Display" menu is wrong. Actually, both Japanese and Chinese
scores are reported, and they are both wrong. In some cases, the program
reports a negative Chinese score, which is impossible. I think this
has something to do with the score being updated incorrectly when you
use the mouse to remove dead stones at the end of the game; perhaps
under some circumstances empty points inside dead groups are being
subtracted once too often.
A friend sent me source code to an older version of the program, so
if I can figure it out I'll post a diff to fix the bug later.
Other than that, the program is pretty nice. It seems to be somewhere
between 20 and 40 kyu. I'm shodan, and I've never lost against it yet
even giving a 17 stone handicap, and in several even games it failed
to keep any stones alive at all. But it's relatively fast: about 1
second per move at search depth 1 & width 1; about 4 seconds per move
at width 2 and depth 2; on up to a maximum allowed width of 5 and
depth of 7, which takes forever. The deeper searches don't improve play
by much, so I stick with 2x2 most of the time.
Some things the program understands:
Atari
Capturing
How to cut & connect (but not when)
Hane & connect on the edge
Ko (somewhat)
The 3rd line, 3-3 point
Peeping
Some things the program doesn't understand:
Making 2 eyes
Keeping enough eyespace for 2 eyes
Snapbacks (at low lookahead depth)
Monkey jumps
Importance of central influence
How to use thickness
When atari should be ignored
The program is public domain. If anyone wants a copy, send me mail and
we'll work something out. I would also be interested in opinions on
whether I should consider posting the program, if so whether binary or
source or both and in what newsgroup(s). The binary is just over
100 KB on the Mac. The (older) source is about 84 KB.
Note to Anders, and others working on Go file formats: the program's
file format uses 10 or 11 bytes per move, plus some header. Weren't
we arguing a while back about whether 3 or 4 bytes was too much,
compared to the 2 bytes in Anders' proposal? Anyway, a typical first
two moves might be stored as "add b C,4\radd w Q,16\r" ('\r' is
carriage return, a.k.a. CTRL-M, not newline).
--
Howard A. Landman
{oliveb,hplabs}!intelca!mipos3!cpocd2!howard <- works
howard%cpocd2%sc.intel.com@RELAY.CS.NET <- recently flaky
"Unpick a ninny - recall Mecham"