On Jul 19, 2007, at 8:16 PM, Joshua Shriver wrote:
Greetings,
What kind of data structures do you all use for your engines, in
respect to board representation and move generation. I know in chess
bitboard, mailbox board[8][8], 0x88 exist all with their pro's and
cons. Are there similar concepts for Go?
-Josh
There is a set of pages on Sensei's Library concerning this,
including essays by David Fotland and Bruce Wilcox.
http://senseis.xmp.net/?ComputerGoProgramming
My beginner UCT program (http://www.quirkster.com/forth/fgp.html)
uses bitboards because it is very simple to express the rules of Go
using bit operations. However, a mailbox board which contains
references into string objects which incrementally merge, split, and
track their properties (stones, liberties, neighboring enemy strings)
is likely to be faster in the long run and on larger boards, though
far more complicated to implement correctly.
Ian
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/