|
From: | Marcus G. Daniels |
Subject: | Re: [Swarm-Modelling] newbie question |
Date: | Thu, 29 Jan 2004 08:49:17 -0700 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113 |
alex dinovitser wrote:
My main question regarding SWARM, is; How suitable is it for these less ambitious applications where there is a small number of simple agents (entities) and only a few types of agents, each with a fixed set of attributes that get re-calculated during every interaction, with results fed to a simple 2D animation as the model runs???
There are many examples of Swarm being used in that way. There's a practical cutoff of the number of agents you can do with Swarm -- if you need hundreds of thousands or millions of agents, it's necessary to do an implementation by hand in C or Fortran, or to do something higher level that involves explicit parallelism. Swarm mainly provides a hierarchical scheduling model that lets you control how concurrency is handled. But even though Swarm knows about concurrency, as a practical matter there's not it is in a position to do about it (in terms of scalability) because most people don't have fancy NUMA machines (e.g. http://www.sgi.com/servers/altix) that could migrate threads to different processors. Swarm is a basically a fancy multi-level priority queue combined with some instrumentation tools and graphics widgets.
In these applications, we are not looking for emergent behaviours, and indeed big surprises are rare. We just want to model the real world to try out different operating procedures/ scenarios to calculate such simple attributes as cost, contamination, delay time, etc.
Swarm can certainly do that.
In that case, why are there all these new (apparently) copycat closed-source software projects now??
I wouldn't say DIAS is a copy cat, or new. But a national lab is a good hidey hole for projects with some political support but sketchy scientific support.
[Prev in Thread] | Current Thread | [Next in Thread] |