The Swarm random number library includes several classes of generators drawn from published research. It includes a bibliography as well as tested implementations. Because the library itself is object oriented it is simple to have multiple, independent random number streams, a feature that aids repeatability of experiments. The library itself is intended to be very simple and easy to use, implementing enough for common graphics needs. In addition to the support and simulation libraries required for all Swarm applications there are several optional libraries that can be used for particular modeling domains.
Libraries exist to support two dimensional spaces, genetic algorithms, and neural networks.
There are many opportunities for user-contributed code. The Swarm distribution comes with a simple space library, a set of classes for two dimensional discrete lattices. These sorts of spaces are common in ecosystem simulations. The base class in space is an two dimensional array that stores objects or integer values at particular grid points. Several classes inherit from this base to provide dynamics, for instance a cellular automata approximation to diffusion.