I was recently working on a UCT bot for Arimaa by trying to generate
a random move directly, instead of generating all moves and selecting
a random one.  This general method sped up the random playout rate by
a factor of 5, which seemed wonderful.

Unfortunately, the new faster random bot consistently lost to the
older, slower bot that was getting 5x fewer playouts.  

After some experimentation, I found that the problem was a bias built
into my random move generator.  At one point in the process, a random 
piece has been selected and it can move in any direction.  

The "bad" code selected a random direction, then proceeded clockwise
in the other directions if that one wasn't legal.

The "good" code selects a random direction among the directions not tried yet.


It's pretty shocking to me that the "bad" code still had an unacceptable bias;
in fact one so severe that it always played worse, and sometimes made the
obviously worst possible move.


 

_______________________________________________
Computer-go mailing list
Computer-go@dvandva.org
http://dvandva.org/cgi-bin/mailman/listinfo/computer-go

Reply via email to