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/