I agree that you cant debug an app that keppes changing, so the answer is
very simple: don;t let it change! Everything is controlled from the master
seed of the Sim class.
1.You're running gui-less: call the sim class contructor with the seed
explicitly set, don't rely on System.currentTimeMillis.
If you do 100 runs, save the seeds in a log file; this way you can
easily rerun the experiment with strange results.
2 You're running withUI: the console has a seed textField and an
"increment seed on stop" checkbox (you should unckeck that)
Obviously, you don't get the same results if you use the seed from a
guiless sim to a withUI one.
> Date: Fri, 25 Aug 2006 15:42:30 +0100
> From: Michael Lees <[log in to unmask]>
> Subject: Schedule randomising
> I was curious as to why shuffling of events with the same time-step
> isn't optional. From reading the Schedule code, the sub steps with the
> same time-step (and same ordering) are extracted into a bag and
> randomised using the shuffle method.
> In some situations, particularly debugging it might be preferable to
> retain the order of sub steps from step to step, or even retain the
> order in which events were scheduled.
> Would it be possible to just add a flag which is set to indicate if the
> schedule should be randomised or not, or does something else rely on the
> assumption of random ordering.