Professor Luke, Gabriel
The console thingy is the way I've already tried (it is so brutal that one can't really miss it, :-)), but I see I did it the wrong way. Doloops are very intriguing indeed.
Nevertheless, the objective is to get it to work with GUI-less version. I will definitely get up earlier tomorrow to play with your suggestions. Now I have to finish writing up Joey's nemesis.
Thanks for suggestions, I will report tomorrow.
----- Original Message -----
From: Sean Luke <[log in to unmask]>
Date: Tuesday, October 10, 2006 0:28 am
Subject: Re: Scheduling a restart
> On Oct 8, 2006, at 9:50 PM, Maciej M Latek wrote:
> > I need to solve a problem concerning stopping and restarting a
> > simulation. My bless point is to have a function on a schedule,
> > which in each step checks a condition for ending a given run, if
> > false does nothing, if true does some reporting, resets
> > parameters to some new values and restarts the simulation.
> > Now, the condition checking, reporting and resetting values
> > fine, unfortunately I'm not able to get simulation started once
> > again after finishing the first run (I'm using the start()
> > method).
> If you're using the command line, it's fairly straightforward:
> your on top-level MASON loop.
> A basic loop is really pretty simple; I think we cover it in one
> the tutorials. All you have to do
> is write a version of it that repeats, something like:
> 1. Make a SimState
> 2. loop as long as you want
> 3. set up your parameters, reset your SimState variables as
> see fit
> 4. start()
> 5. loop while schedule.step() is true
> 6. finish()
> If you need to do this with a GUI, then I have to think about how
> best to hack MASON to do this. Probably the right thing is to
> the Console a little, along the lines of how the Console can
> with a new seed upon pressing stop.
> One gotcha lies in movies and time series -- they won't update
> the timestamp is smaller than they've seen before (of course).
> you're restarting, the timestamp is now small again. You'll need
> reset them as well, or else do a little hacking there too.