[computer-go] Efficiently selecting a point to play in a random playout

dhillismail at netscape.net dhillismail at netscape.net
Sun May 27 16:31:58 PDT 2007




On Sun, 2007-05-27 at 13:21 -0400, Jason House wrote:
>   As I get into the home stretch of rewriting the core of my bot, I want 
> to add a monte carlo player.  I've realized that picking a random move 
> to play is non-trivial since it's such a key element in playout speed.
> 
>   An array of legal positions has easy lookup, but may not be easy to 
> maintain... I guess it'd require storing a mapping between board 
> position and index into the legal positions array so that a move that 
> becomes illegal can be quickly removed (by moving the item from the tail 
> of the array into the empty location).
> 
>   Looking at libego, I see it does a variant on this where it maintains 
> an array of empty points.  If the random index it picks is disallowed, 
> it'll scan through the array (with wrapping around the end) until it 
> either finds an allowed move or returns to its starting point.
> 
>   Which methods have people tried and what works best?
> _______________________________________________
> computer-go mailing list
> computer-go at computer-go.org
> http://www.computer-go.org/mailman/listinfo/computer-go/

 If I had it to do over again, knowing what I know now, I would not spend a 
lot of time optimizing random games. These optimizations don't make much
difference for heavy playouts and heavy playouts are better.
 
- Dave Hillis 
 

























________________________________________________________________________
Check Out the new free AIM(R) Mail -- 2 GB of storage and industry-leading spam and email virus protection.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://computer-go.org/pipermail/computer-go/attachments/20070527/b3abf6c4/attachment.htm


More information about the computer-go mailing list