swarm-modeling
[Top][All Lists]
Advanced

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

Re: Cellular Automata vs. Agent-Based Models


From: Paul Johnson
Subject: Re: Cellular Automata vs. Agent-Based Models
Date: Fri, 01 Oct 1999 10:37:51 -0500

Dawn Trembath wrote:
> 
> I'm trying to understand the distinction between Cellular Automata &
> Agent-Based Models.  The information on Craig Reynold's webpage
> http://www.red.com/cwr/ibm.html was very helpful, with his basic
> distinction being that in a CA model you look at the world as a dense and
> uniform dissection of space, whereas in an agent-based design your world is
> based on specific individuals distributed within the space.  I'm now trying
> to understand the practical issue of why one would choose to use a CA
> representation, vs an ABM approach.
> 
> On one hand, there's a very staightforward answer - you use the approach
> that best fits your problem.  But, since it appears that there is a fair
> amount of overlap between the two, things are still a bit muddy for me.  In
> a CA model, if you allow your automata to be mobile, and to act
> non-homogeneously through the application of If-Then rules, I can think of
> examples where I would have a hard time deciding between the two approaches.
> 
> Maybe some direct questions would clear this up for me the fastest.  Why
> was Swarm implemented using an Agent-Based approach as opposed to a very
> unrestricted CA approach?  If anyone is modeling a system that could be
> represented using either design, why did you choose the one you did?  Does
> a commonly used tool exist for building CA models?  (StarLogo?  In the CA
> studies I've seen, people seem to write their own code.)  Finally, if
> anyone knows of a reference where the two approaches are compared, I'd
> appreciate hearing about it.
> 

Gee, its funny how Dawn and I seem to be working on the same things at
the same time.  I just wrote a paper in which I was confronted with this
problem.  I was writing about public opinion formation and change and I
found the Axelrod culture model, which is really a CA model.  There are
villages in fixed position, each one is treated as a singleton, each
adjusts to its neighbors according to a certain rule, and so forth.

Then I wondered about having many people in each village.  Adding many
individuals per cell makes this not a CA any more, or at least it is
pretty far from a CA.  There need not be any "adjust the value at this
cell" logic in such a model.  Each individual within each cell can
interact with people in the cell and in the vicinity, though.  And
further, if these individuals are allowed to move from one village to
another, it is further removed from a CA.  And, finally, if the
individuals have different abilities to see and move around on the grid,
it is not even remotely like a CA.

The CA gives you a certain framework and, I'm told, but I've not really
seriously looked at it, that there are some pretty serious mathematical
facts about Markov chains that can be applied to CAs.  Hence, the
structure of a CA gives you some theorems too.

On the other hand, the CA is a restrictive structure not well designed
to the modeling of adaptive behavior of individuals.

I've got a copy of my paper about the culture model here:
http://lark.cc.ukans.edu/~pauljohn/ResearchPapers/APSA99/APSA99-2.html
http://lark.cc.ukans.edu/~pauljohn/ResearchPapers/APSA99/JohnsonAPSA99.ps

And the code for the culture model is here:
  
http://lark.cc.ukans.edu/~pauljohn/Swarm/MySwarmCode/cultureWrappedListBatchRaster-990823.tar.gz

This bundle has the whole shooting match.  The multiple occupancy grid
class, the batchRaster update, Drone config stuff for repetition. 
Oodles and oodles of features.
-- 
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.
                  ==================================


reply via email to

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