Sean Luke wrote:
> On Aug 25, 2006, at 9:34 AM, Bruno Van Den Bossche wrote:
>> We've been using Mason for some simulations now and discovered a
>> "feature" which can be very annoying.
>> It seems that the scheduler is using the random generator provided by
>> the SimState. Which means that if you have a different amount of
>> schedulable objects or schedule an object at different intervals this
>> will influence the randomness of the simulation.
> Bruno, it's very common, and generally accepted as proper scientific
> modeling form, to use a single random number generator throughout
> your simulation. Use of multiple generators can produce
> irreproducible results if you aren't careful.
> It sounds as if you have a randomly-generated sequence of events that
> you would like to keep consistent despite changing the Schedule's
> scheduling frequency.
That was the idea, yes.
> There's a way to hack this, but before I get
> to it, let me state that what you are hoping for causes fairly big
> warning bells to go off in my mind. Random number generators are
> intended, on purpose, to provide pseudorandom number streams, and a
> simulation which expects a specific sequence is just inviting big-
> time statistical problems. You may want to rethink this carefully.
Ok, thank you for the heads-up about that.
We've taken the approach of using an extra random number generator. I
think that's the safest thing to do as we don't need to modify Mason
itself for that.
The simulations we are running involve a virtual world of which we try
to distribute the load onto multiple servers. Variables involved are
the players, the points of interest they go to, the number of servers
etc. (all steppables)
Sometimes we just want to use the world behavior for a different number
of servers, or different sizes of distributable world parts etc.
(for example, the algorithms used should not influence the behavior of
the characters in the virtual world and vice versa).
So now we are using different random generators (each seeded by the
original Simstate random number generator) for the "independent"
sub-parts of the simulation.
Which seems to work out pretty well.
Thanks for your help!
Bruno Van Den Bossche
[log in to unmask]