Thursday, March 20, 2003


Source: Better Living Through Software; 3/20/2003; 9:25:33 AM

Seattle Go.

Seattle Times just ran a nice little article on Go in the Seattle area, which mentions the Microsoft Go Club.  I first got interested in computer algorithms for Go via Victoria Livschitz, and I enjoy solving Go problems programmatically.  Competetive full-board gaming is not within a computer's grasp (although getting better, as shown by "Smart Go", a product of an ex-softie), but it is fun to look at small, narrowly-scoped Go problems with a computer.

The rules and environment of Go are incredibly simple, and problems are basically combinatorial graph/tree problems.  The smallest problems can be solved provably and deterministically, but even these are challenging.  While Go looks simple, analyzing a class of problems thoroughly can be difficult.  It is very rewarding to finally distill the problem into an elegant function that solves the problem.  As the problems become larger, and involve multiple captures, the challenge increases dramatically (and my interest wanes proportionally).

After you understand a class of problems and have the running code to prove it, it is always good to trawl the web to find out ways that others have solved the problem more elegantly.  I was recently introduced to this discussion of "Benson's Algorithm" by Ashley Feniello.  Benson's paper develops on the "Feng Yuan" algorithm.  Feng and Ashley both work at MSFT, and the recent AshleyF comments regarding Benson's on senseis Wiki are a result of their conversations.

 

[Better Living Through Software]
10:47:35 AM    trackback []     Articulate []