An open source implementation of the
GameOfGo. Apparently version 3.2 is about 10 kyu in strength. Version 3.6 is the current version (slightly slower but stronger).
The main page is
http://www.gnu.org/software/gnugo/gnugo.html
The development page is
http://www.gnu.org/software/gnugo/devel.html
The
GnuGo project uses
TestDrivenDevelopment to a great extent. There are several types of automated test suites used for
RegressionTesting, comprising life-and-death problems, common shapes, joseki (openings), and mistakes from
GnuGo's own games. Typically, tests are added which
GnuGo fails, then someone tweaks the pattern database or code to pass those tests, while on the other hand neither breaking the other
RegressionTests nor exploding the search node counts.
When the developers run out of elbow room for more improvements, they can confidently work on optimization and refactoring [
WhatIsRefactoring] knowing they can run the
RegressionTests both to measure improvement and guard against introducing bugs.
See
GoOnLinux,
GameOfGo,
ArtificialIntelligence