The prototype agent in Gecko is the Creature. All other agents are elaborations of Creatures.
The defining parameters of a Creature are breed radius, child radius, minimum radius, species (a label), and metabolism. Table 1 lists the base parameters for the simulations in this paper. The Creature also has state variables, which include life history statistics, current size and location, and the direction the agent wants to move.
The defining radii are straightforward. When a Creature
falls below its
minimum radius, it dies. Starvation and predation are the
only causes
of death in Gecko. Although indeterminate lifespans are not the
norm in nature, neither is death of old age. So though limited
lifespans could be added readily enough, the models here focus on agents
feeding, and the population dynamics arising from that.
Birth and death are left as consequences of living.
Size is specified by radius, but note that
radius is spherically
locked to area and volume. Hence to say that a Creature's
minimum radius is 2.05, is equivalent to saying it dies if its
volume falls below 36.1.
(The volume of a sphere being
.)
When a Creature's radius equals or exceeds breeding radius, it reproduces. Reproduction is asexual. A copy of the parent is created with child radius' worth of resources transferred from parent to child. The child is placed in a random direction from the parent, with the intent to keep going that way. The child's initial distance from the parent is:

In other words, a child is placed at an exponential distance from its parent in a random direction, never overlapping the parent. The larger the parent and child, the farther the children scatter. Creatures here don't exceed breeding radius, as one round's net increase in resources doesn't offset the resources given to the child. Child radius for plants is set somewhat below minimum radius. This requires a seed to fall on clear ground to take root, as a child competing with another plant cannot get the resources to reach minimum radius in one round. This prevents seeds from displacing established plants, which they are not generally capable of doing.
A Creature's metabolism includes its volume (storehouse of embodied resources, or biomass), metabolic tax rate on volume, a gullet, and assimilation rules, whereby the gullet contents get processed into body mass. A Creature adds food to its gullet, then assimilates the contents of the gullet on the next step. An assimilation rule is simply a real-valued conversion rate from source resource to target resource, with a rate for each resource the Creature is capable of assimilating. Here plants assimilate sunwater to carbos at a rate of 10%.
Metabolic taxes are expressed allometrically as
, where both the coefficient
and exponent of the tax are defining parameters for a species.
The value of this
exponent has been studied throughout the animal kingdom [13].
Across many orders of magnitude
of animal biomass, the exponent has the
empirical mean of
, called the
-Power Law.
The value of
has not been conclusively explained.
The situation in the plant
kingdom is murkier. However, Niklas [11] shows that the
-Power
Law emerges in both plant and animal growth rates. That this also
holds for metabolic rates is unclear. In any case, a fair range
of exponent values occur in individual species.
For our purposes, the tax
exponent is set to
for all species.
To illustrate how these parameters define a Creature life cycle,
let's work an example. Say a child of radius 2.04 is born on
fallow ground. If the site is producing 1.0 sunwater per
unit area, the child adds 13.1 units of sunwater to its gullet. Next round
the child assimilates its gullet contents with a conversion of
,
adding
1.31 carbos to its volume, which grows from 35.6 to 36.9. Its
taxes are
, or 0.2 carbos.
So immediately
after assimilation, it loses 0.2 to the cost of living. Its new volume is
36.7 carbos,
or a radius of 2.06. As the minimum viable radius is 2.05, the child
survives.
The child not only survives, but grows. All Creatures have a direction they want to go, which changes based on what they encounter in life. Having encountered nothing to revise its direction, the child continues away from its parent. As a plant, its mobility is limited to the amount its diameter grew (or shrank). The child's radius grew by 0.02, so it moves 0.04 farther from its parent. Its point of closest approach to the parent stays put, but its center is farther away.
The child has no competition, thus has an effective feeding
area equal to its circle area. A Creature's uptake of resources
is based on its effective area of feeding site. If any competing Creatures
overlap it, its effective area is debited by one half of the overlap,
as is theirs. (As computed, this penalty is actually too high. Creatures
are considered two at a time, so if three overlap the same spot, they
each net only
.)
Creatures eat from any and all sites they cross.
The directions of area debits, weighted
by the cost of
each debit, reset the Creature's direction at each timestep. In other words,
they grow and shrink away from competitors.
The time to reach breeding radius from seed depends on the competitive and grazing circumstances. Let's say the child grows to reproductive maturity (a radius of 7.51) in 285 rounds (days). In this time the plant's biomass grows from 35.6 to 1774 carbos. At this size, the plant creates a seed, which costs 35.6 carbos, strewn in a random direction, at a distance ranging from 9.6 to 26.0. The plant requires more than one round to recover the resource cost of each seed, given the parameter settings in this paper.
In Gecko, ``competes'' is defined as ``eats the same resource''. Creatures do no battle, and there are no fixed positions to fight for. This is implicit interference competition.