swarm-support
[Top][All Lists]
Advanced

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

What's in the works for Swarm...


From: Chris G. Langton
Subject: What's in the works for Swarm...
Date: Thu, 11 Jan 96 23:04:19 MST


Here's a bit of context for why we are where we are now with Swarm, and 
what you can expect in the near (and long-term) future.

------------------------------------------------------------------------

As I said earlier, the long-term goal for swarm is to provide a dynamic, 
interactive laboratory for creating and experimenting with artificial 
worlds, especially the collective behavior of multi-agent systems. A major 
part of this effort is dedicated to initiating and maintaining a large 
library of "standardized" simulation tools and analysis objects, to allow 
computer simulations to be more reproducible and comparable than 
they have been in the past.

Toward this end, we have spent the majority of the design and coding 
effort during the last year to putting in place the foundational 
computational machinery that will support a suite of general-purpose, 
high-level simulation objects. A good deal of reasonably sophisticated 
machinery has to be there behind the scenes to make the user's job of 
producing specific world "stages," replete with specialized "actors," 
simple and straightforward.

This underlying machinery is pretty much all we've released so far - 
and is the code that y'all are wrestling with. What you only have 
skeletons of so far, and what we are now able to turn our attention to 
fleshing-out, is the suite of tools that will run on top of all this 
sophisticated computational machinery. 

On the Apple II analogy, we have basicly provided the complete 
"hardware" for a virtual Swarm machine, but have only provided some 
fairly simple examples of "programs" to run on it, and even those are 
pretty much at the "assembly-language" level, rather than the window 
based tools that we have in mind for the near future. 

So - within the next month or so we will be providing a good deal of code 
that will package up a lot of the in-principle capability of the swarm 
machinery into much more in-practice usable higher-level tools. 

For instance, in the latest release, we are providing better generic 
Space classes, and a suite of commonly used specialized space-subclasses 
in the Space library. We will also have more display-oriented interactive 
tools, providing the ability to click on arbitrary objects and view/edit 
their internal states. We have (finally!) released a much more general 
purpose communication mechanism between objects with the "Probe" interface. 
At the level of overall experiment control, we'll be adding the capability to 
manage multiple instantiations of experiments, (multi-run batch-process 
mechanisms) allowing for the control of multiple instantiations of 
experiments (e.g. using different parameter settings, random number 
seeds, and so forth.) We'll even have an early version of a distributed 
multi-swarm management system running on top of MPI, so that an 
"experiment swarm" master-process on one machine can create and 
manage a suite of independent "experiment" slave-processes  running 
concurrently, distributed over a network of machines.

All this should be out in the next few months...

In the longer term (between now and summer) we will be putting in 
place a variety of tools for window-based interactive probing and 
execution of the system, class-browsers, run-time structure browsers, 
interactive schedule editing, execution, and stepping "editors," and 
many additions to the simulation and instrumentation libraries. 

Within the next week or so, we will be releasing a demo that utilizes GIS 
data in which simulated agents move around on a landscape, survive by 
planting and trading corn in the face of changing climatological 
conditions

Please send in your priority-lists for useful/essential tools and additions 
to the library.

Cheers!

Chris Langton



reply via email to

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