On Dec 19, 2007 11:49 AM, Don Dailey <[EMAIL PROTECTED]> wrote: > It's also possible to select hash keys such that transformations of the > board's key is the same as recomputing the key for a symmetrical board > position. This will be *much* faster. I came up with a scheme to do this > and documented it on my website, but haven't actually implemented it yet. > > > I can't find your website. Can you give me a link? >
sourceforge.net is blocked where I am at the moment... So I can't give a direct URL until later tonight :( The top level page is http://housebot.sourceforge.net (which should redirect to http://housebot.wiki.sourceforge.net). From there, go to the developers page and it should be the last 0.6.x design block The basic idea is this: 90 degree rotation (to the right) is represented as a circular shift (to the right) by 1/4 of the key length. mirroring the board (swap left and right) is done as reversing the order of the bits in the key. Distinct hash values around the board would have to share the same rules. Picking a somewhat arbitrary example (on 19x19), here's some candidate keys (kept simple for manual typing) A2 = 0x 01 02 03 04 B19 = 0x 04 01 02 03 T18 = 0x 03 04 01 02 U1 = 0x 02 03 04 01 T2 = 0x 20 c0 40 80 B1 = 0x 80 20 c0 40 A18 = 0x 40 80 20 c0 U19 = 0x c0 40 80 20 Points on lines of symmetry (such as C3 with 4 equivalent points or the unique tengen) need more care with how they're selected).
_______________________________________________ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/