[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
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- What's in the works for Swarm...,
Chris G. Langton <=