I like standard references bots a lot :) I think they are very usefull for
promoting computer-go, and helping new comers. It gives a very good base for
confidence in a new implementation from a new comer :) So it would certainly be
usefull, if people could agree on a reference monte carlo tree bot (and provide
some reference implementations in popular langages).
It would obviously be based on the reference light-bot.
Usually people begins with trying their hands at 9x9. For 9x9 basic UCT is
viable. I think you get about 50% win against gnu with 50K light-playout and
UCT.
First we have to agree about a "standard" UCT formula. I think the
http://senseis.xmp.net/?UCT is okay. (first on google for uct algorithm :) )
1/ Uct formala -> UCTValue(parent, n) = winrate +
sqrt((ln(parent.visits))/(5*n.nodevisits))
Uct trys each node at least once. We have to agree about an order policy for
nodes. Simplicity would call for A1, A2 ... A9, B1 .. B9, C1.. C9 etc. Uper
left corner first, then upper edge, etc. But i suppose most people would find
that very uncomfortable (giving priority to known worst move in game :) ) so...
2/ If parent.visit > 1000, pick a move according to UCT policy, if
parent.visit<=1000 pick up a move with light playout policy.
I think once we agree about 1/ and 2/, we can build reference for pure UCT
light-Playout bots.
//-----------------------------
Alternatively, i would apreciate if it existed a reference UCT pure-light
implementation for 19x19. I think the main difference here, is that pure UCT is
hardly an option. So i propose this :
1/ Uct formala -> UCTValue(parent, n) = winrate +
sqrt((ln(parent.visits))/(5*n.nodevisits))
2/ If parent.visit > 1000, pick a move according to UCT policy (winrate would
be (realVisit* realWinRate + AMAFwinRate)/(realVisit+1)), if
parent.visit<=1000 pick up a move according to AMAF light playout policy.
> Date: Sat, 12 Dec 2009 16:39:56 -0800
> From: br...@slesinsky.org
> To: computer-go@computer-go.org
> Subject: [computer-go] Gongo: Go in Go
>
> Thought I'd announce that I've ported the Java refbot to the Go
> language (with some modifications).
>
> I'm getting about 10,000 random playouts/second on 9x9 using a single
> thread on a 32-bit iMac, using the gc compiler, which doesn't do any
> optimization. I suspect that a board structure that tracked
> pseudo-liberties could do better.
>
> I probably won't have a chance to work on this for a while, but I
> think the next step might be some kind of tree search. I'd be
> interested in a particularly simple, standard, and easy-to-port
> implementation to use as reference.
>
> Source code:
> http://github.com/skybrian/Gongo
>
> Previous discussion on the Go language list:
> http://groups.google.com/group/golang-nuts/browse_thread/thread/99ab46f5b7219a5b/22e58d9223db10ef
>
> - Brian
> _______________________________________________
> computer-go mailing list
> computer-go@computer-go.org
> http://www.computer-go.org/mailman/listinfo/computer-go/
_________________________________________________________________
Téléchargez Internet Explorer 8 et surfez sans laisser de trace !
http://clk.atdmt.com/FRM/go/182932252/direct/01/
_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/