Axel, I really think that this need would probably be too specific to be including in as general a library as MASON.
On Aug 8, 2015, at 4:12 PM, Axel Kowald <[log in to unmask]> wrote:
> Hi Everybody,
> this time I have a suggestion for a new feature for MASON and I wonder
> if others would also find it useful.
> The point is that I find myself often with the problem to run a
> simulation until one or all of my agent types have reached a steady
> state. Basically I keep track of the number of my agents with a variable
> and then plot this variable while the simulation is running. I simply
> watch this plot and stop it manually whenever I have the feeling that a
> steady state is reached.
> But this seems to be a very non-reproducible and cumbersome way of doing it.
> Maybe this would be a job for the Schedule class of MASON ?
> If we are only interested in the total number of all agents Schedule has
> in principle all the information it needs (number of agents at each time
> step). Of course if there are different agent types and the all should
> reach equilibrium things might become more complicated. I'm not sure
> what the best way is to test if a variable that is subject to random
> fluctuations has reached a steady state. Some ideas would be
> (1) take the last N values, calculate a linear regression line and
> compute the p-value that the slope is different from zero.
> (2) to avoid the arbitrary choice of N, one could also start with the
> last 2 points and calculate the p-value. If it is below a given
> threshold stop, if not repeat the calculation with the last 3 points,
> etc. until a p-value below the threshold is found or until all available
> points are used. This seems computationally very expensive, but it was
> just an idea.
> Any comments?