Since my rewrite, I don't consider my bot (HouseBot) to be too far along... It barely knows how to do more than play a legal game of go (it does 1-ply monte carlo)

The class goban tracks the board state, checks for legality, etc... It can be found here:
http://housebot.svn.sourceforge.net/viewvc/housebot/trunk/housebot/goban.d?view=markup

The relevant code spans lines 711-1227. 500 lines may sound like a lot, but it doesn't really do a heck of a lot. About 40 lines are comments, > 100 lines of unit tests and in contracts. The play function, the heart of the class, is ~150 lines, but has 3 helper functions embedded inside for both clarity and profiling.

If you poke around, looking at other code in the file, there are a few things that will make it look more complex. I tried to add a generalized code flavor to stuff allowing for different position and board classes. The goban class was written quickly and doesn't use that extra fluff.

I plan to refactor this file over the coming week(s). It's written in D, which looks a lot like C++/Java.


Joshua Shriver wrote:
Are there any really simple engines out there that know just enough to
play a legal game of Go? Preferably C, Perl or Java?

Some of the open source engines I've looked at are rather complex and
not to friendly to a beginner.

Kinda looking for the tscp of chess for go :)

-Josh
_______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/


_______________________________________________
computer-go mailing list
[email protected]
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to