swarm-modeling
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Are there theorems for Agent Based Models


From: donalson
Subject: Re: Are there theorems for Agent Based Models
Date: Mon, 12 Jul 1999 16:03:59 -0700

All right Paul, you hooked me in.

I wrote the following spur of the moment.  It is similar to a rough draft I
sent to Paul, but much
shorter.  I hope if people disagree with any of my claims they will respond.  I
have spent a fair
amount of time recently talking to modelers about how they handle time in
synchronous models
and it became clear both from talking to people are reading the literaturethat
some of these issues
may not be getting the attention they warrant.  Fire away...

Cheers,

   D3

There is an important issue when dealing with time step
lengths in synchronous (time driven by a set, non-variable,
step length) simulations, at least when dealing with models
where there are a lot of creation/destruction processes.

Assume a single agent that has a constant per capita rate of
increase (birth rate) and a constant per capita rate of decrease
(death rate).  A standard solution to this is: at the beginning
of the time step, calculate the number of births and deaths from
the present number multiplied by the birth and death rates
multiplied by the time step length.  Randomly (hopefully) add
and/or remove the proper number of individuals and advance the time
one step.

For a situation with pulse birth and death rates and a synchronizing
mechanism this may work fairly well.  An example of this might
be adult mayfly populations which hatch, breed, and die in a very
short period of time.  (This is not true for the juvenile stages
however.)

In contrast, the Red Scale (a local Citrus pest) continuously
reproduces throughout the year.  [begin disclaimer] (Note, for
the rules lawyers, none of these systems is really as simple as
portrayed.  They are used for illustration only.) [end disclaimer]
In this case, if the time step is longer than the reproductive/
maturation time, errors are introduced because individuals that
might have been born right at the beginning of the time step have
no chance to mature and procreate until the next time interval.

Of course, this is really more murky than just described.  The
obvious solution is to just make the time step short enough so
that at most only one birth can occur during any time step.
However, by doing this, (at least as far as I can tell) you are
now required to introduce the issue of randomness into
the model.  There are two reasons for this.  The first is that
if there are other possible events, such as a death, and we are
only allowing one event per time step, a decision must be made
as to which will occur.  The second is that to fulfill the
requirement that at most, one event will occur, there needs to
be a chance that nothing will happen.

It gets worse when you transition to a consumer/resource model.
In this case the order of interactions becomes more critical
because a prey that has been eaten cannot procreate.  In addition,
when space is introduced, local interactions may override global
and where the individual is must be taken into account. At least
in a simple predator/prey system, a basic rule of thumb may? be
that local interactions cannot be discounted if individuals
cannot cross the system space within one generation.  I know that
this works in some cases, but I am sure that there are many that
break this rule.

Paul Johnson wrote:

> An economist said to me the other day, "where are your theorems? Aren't
> there established results that guide modeling choices?"  I shrugged.
>
> Here is an example of where there is probably a theorem, somewhere,
> somehow.  Consider lots of agents who can observe the behavior of other
> agents within a neighborhood and then adjust their behavior.
>
> Lately I've noticed you can write this kind of a simulation 2 ways.
>
> 1. Assume all agents survey the environment as it was after the last
> time step.  If agents are in time 2, for example, they look around at
> all other agents as they were at the end of time 1.  (Example:Heatbugs
> heat display is updated once per time period, all agents refer to that
> snapshot)
>
> 2. Assume that all agent actions have "instantaneous effects" on each
> other.  If we are in time 2, each agent who observes is able to see all
> agent actions up to that instant.  If in time 2, a long list of agents
> is called upon to act (possibly in random order), each one is aware of
> the actions of the previous agents.  Agents who acted in step 2 before
> are seen and their changes are taken into account.
>
> These 2 approaches yield some initial differences in test models I've
> been working on, but the effects seem to be short term.
>
> Is there a theorem that says something about the likelihood of
> divergence in observations based on the 2 specifications?
>
> --
> Paul E. Johnson                       email: address@hidden
> Dept. of Political Science            http://lark.cc.ukans.edu/~pauljohn
> University of Kansas                  Office: (785) 864-9086
> Lawrence, Kansas 66045                FAX: (785) 864-5700
>
>                   ==================================
>    Swarm-Modelling is for discussion of Simulation and Modelling techniques
>    esp. using Swarm.  For list administration needs (esp. [un]subscribing),
>    please send a message to <address@hidden> with "help" in the
>    body of the message.
>                   ==================================

--
*********************************************************************
* Doug Donalson                 Office: (805) 893-2962
* Ecology, Evolution,           Home:   (805) 961-4447
* and Marine Biology            email address@hidden
* UC Santa Barbara
* Santa Barbara Ca. 93106
*********************************************************************
*
*   The most exciting phrase to hear in science, the one that
*   heralds new discoveries, is not "EUREKA" (I have found it) but
*   "That's funny ...?"
*
*       Isaac Asimov
*
*********************************************************************




                  ==================================
   Swarm-Modelling is for discussion of Simulation and Modelling techniques
   esp. using Swarm.  For list administration needs (esp. [un]subscribing),
   please send a message to <address@hidden> with "help" in the
   body of the message.
                  ==================================


reply via email to

[Prev in Thread] Current Thread [Next in Thread]