[computer-go] Re: Remarks on the Indigo-Paper
Don Dailey
drd at mit.edu
Mon Jun 19 10:35:42 PDT 2006
Chess programmers rarely use floating point for anything that really
counts - except perhaps time-control.
But I feel your pain - been there, done that.
My monte/carlo style GO programs are also deterministic, when I want
them to be. They are ridiculously simple compared to chess and
I spend almost no time fighting bugs so I don't care that much.
Here is a trick for those of you who use random number generators -
forgive me if this is too simple for you but ...
1. re-seed the RNG before each move.
2. In your log file, record the seed used.
When a bug reveals itself, you should be able to deterministically
reproduce it with the seeding information you saved.
- Don
On Mon, 2006-06-19 at 09:58 -0700, Dave Dyer wrote:
> > I always made sure I had a
> >deterministic mode in my programs - a mode where you could count on a
> >certain exact result (node count, score, move) This was useful when you
> >were optimizing the program and not changing the evaluation for
> >instance.
>
>
> One gotcha - a marginal one, but one I guarantee with strike
> sooner or later - is that no evaluation that uses floating
> point numbers can ever be relied on to be deterministic.
>
> One of the endearing characteristics of floating point numbers
> is that A+B+C != A+C+B, so even if you add up all the same factors,
> unless you always add them in exactly the same order, you're
> screwed.
>
>
More information about the computer-go
mailing list