![]() Time 0: A little field is seeded with two species of plant, dubbed "Plant" and "BigPlant." (BigPlant is bluer.) Each timestep, both seedlings take their sun, pay their metabolic costs, and grow. Growth is allometric.
|
What are the Circles?Gecko is an individual-based ecological simulator for modelling ecosystem dynamics. All the individuals, generally plants and animals, move freely rather than being gridded to a fixed-position lattice. The GrassWorld models here are of an essentially flat system: plants and grasshoppers and spiders in a field. Gecko takes a "follow the money" approach to modelling ecosystems. The coin is the energy needed to fuel metabolism to stay alive and maybe grow and reproduce. Our field is evenly replenished every timestep with sun and water and adequate soil. The plants convert this energy input into plant biomass. The grasshoppers eat the plants, converting carbohydrates (at a loss) into grasshopper flesh. The spiders eat the grasshoppers. The biomass of a newborn is supplied by the parent. Gecko abstracts individuals as spheres. Each sphere represents an agent's extent in time and space. An agent exists 'here' 'now'. The size of the sphere also grows allometrically as the agent grows. So the sphere shows the agent's biomass. Agents eat where they are. They may not care what exists outside their spheres. Agents interact with other agents they intersect in time and space. Since plants effectively 'eat' their place in the sun, their energy intake is how much floor space they intersect. Where they intersect another plant, the energy of the overlap has to be split between them. The plant species to the left are defined by sun conversion efficiency, minimum biomass to survive, biomass size of a seed, and biomass required for reproductive size. Since radius and volume and biomass are locked, the sizes are specified by radius. Plant and BigPlant are identical except for breeding radius. The circles on the screen are a quick sketch of the spheres. The illustration to the left shows the spheres that the circles represent. It's a run of the scenario "Unstable Quickie" in the basic Gecko web demo. This demo is quick because it supports so few agents, and unstable for the same reason. The same species mix on a bigger field can survive indefinitely through boom/bust cycles. What is Gecko?Gecko is a simulator for these ecosystem models. Within its basic model, of spheres and energetics, one can build different models, usually by building new species and setting them up to play together. This setup is called a protocol. Since most Gecko models have some random influence, individual runs differ. This latest version of Gecko is implemented in Java 1.1. The same protocol can be run over the web, or locally as a graphical or batch application, on any machine with Java installed. In web mode, Gecko's only output is graphics, and the protocol is modified only via the menus ("RunControl" and "Parameters".) In application or batch mode, the plotted statistics are output to file for analysis, and the protocol can be changed with any text editor. New species are written as Java classes. They can usually inherit the bulk of their behaviors from pre-existing species. Two families of Gecko models are currently viewable on the web:
Another major group of Gecko models form BacSim, the first individual-based simulator for microbial ecology. BacSim uses a 3D world, with input resources diffusing through the substrate volume. As of this writing, the latest BacSim is under construction. BacSim's author is Jan-Ulrich Kreft, at the University of Cardiff, Wales. A model of hardwood forest succession in New England is in the planning stages. A number of models were explored in a prior version of Gecko, including biomass dynamics analysis, prey selection scenarios, assorted reproductive and lifecycle behaviors, and an Evolution Strategy engine for exploring the protocol parameter space. These can be ported to the current Java version on an as-needed basis. Gecko's landscapes are also active agents with behaviors, by the way. In the GrassWorld scenarios, a self-replenishing landscape feeds the plants and collects all dead matter. The BacSim landscape handles resource diffusion and recycling. The landscape takes over the parts of the model for which individual actors are not desired. So, for instance, another GrassWorld could have the grasshoppers eating landscape, ignoring plant population dynamics to focus on higher trophic levels. ToolsGecko's source code is available for the asking. Java (the "JDK") is freely available for many computer architectures from Sun Microsystems. There are many fine Java development environments (IDE's) available, many free (such as Kawa, and JBuilder for educational users.) Java 2.0 has been avoided so far due to lack of popular browser support. The bubble pictures to the left are generated from Gecko output, with the free 3D rendering system POVray. Ginger Booth, September 17, 1999
|