On 26-okt-08, at 20:38, Don Dailey wrote:

If you ran 10,000 games your score is amazingly close - you won't be
that close very often in 10,000 game samples.   Of course I assume you
are testing this against a fully conforming version.


I don't know if it's so amazing. According to twogtp there's a sampling error of +/- 0.5% after 10,000 games. So that means the outcomes could range from 49.5% to 50.5%. The chance for getting 49.9% is 1 in 10. That is, assuming my reference implementation is conforming of course.

The test was against your javabot, using 1,000 simulations per move.

So what exactly are you doing here to save time?   My understanding is
that it has something to do with traversing the list in order to avoid
extra random calls. So I assume you start with a shuffled list and go
from there somehow?

I don't shuffle the list. If I choose moves randomly, I see no advantage in shuffling it. I choose an empty point randomly from the list of empty points. When the point turns out to be illegal or filling an own eye, I simply take the next empty point in the list. When I reach the end of the lsit I wrap around.

What I don't do when a move is rejected is generate another random number to try pick another empty point.

My program(s) keep up with empty points and selects only from them but I
call the random number generator once for each legal move.


When I look at CGOS right now my refbot TesujiRefBot has an ELO of 1286, JRef has 1290 and Cref has 1269. So evidence is mounting that my implementation, although completely different from yours, is conforming the definition you put together.

Mark


_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to