Field simulation 01   /   Predator & prey

Vox Sylvestris Ecosystem Laboratory.

Change the conditions. Follow the populations. Discover how a living system responds.

Plants
Prey
Predators

The living landscape

Paused
TICK 0000
Prey
180
Predators
14
Plant biomass
83%
Conditions
Normal
Your browser cannot display the landscape. Use the live population values and data table instead.
field-class-01   /   1,904 patches
Hatched patches are prey refuges
Ready to explore. Press Start or advance one tick.Space: play / pause

Population stories

Animals use the left axis; plant biomass (%) uses the right axis.

Give the system a nudge

Apply an intervention to the current run.

From observation to investigation

One change. A different story.

Make a prediction first. Keep other settings constant. Compare multiple seeds before drawing a conclusion.

01

Who controls whom?

Run a control to tick 600 and pin it. Restart the same seed, pause at tick 200 and remove all predators. Continue to 600. What changes?

Top-down control
02

When food recovers slowly

Compare 45 and 90 ticks for plant regrowth. Use the same seed and run each for 600 ticks. Which population responds first?

Bottom-up limitation
03

A place to hide

Compare 0% and 20% refuge coverage. Does protection help prey persist? Could it also help predators in the longer term?

Spatial refuges
04

Same rules. Different fates.

Keep every parameter fixed and vary only the seed. Use the replicate runner below. How often do both populations persist?

Stochastic variation

One result is not the whole story.

Run independent seeded replicates of the new-run settings. No interventions are applied. The visible world is paused and kept intact.

Each run uses a recorded seed derived from your world seed.

Your field notebook

Use evidence, not just impressions. Notes stay in this tab until you export them; closing or reloading loses unsaved work.

    Accessible data table & run record
    The most recent 20 recorded ticks. CSV contains every tick, including the starting state.
    TickPreyPredatorsPlants (%)Prey births*Predator births*Eaten*Drought

    *Birth and predation counts are cumulative. Exports also include starvation, removals, introductions, initial settings and interventions. A recorded row at an intervention tick shows the state after the intervention.

    Under the surface: model rules, assumptions & teaching notes

    What is actually being modelled?

    This is an original, spatial, agent-based teaching model: individuals move, feed, reproduce and die. It is not a numerical solution of the Lotka–Volterra equations, nor a validated forecast for a real species. Ticks, energy units and patches are abstract model units.

    Why the seed matters

    A seeded pseudo-random generator controls movement, birth and capture. With model version , the same seed, settings and ordered interventions at the same ticks reproduce a run. Changing speed or window size does not change the ecological rules. Different seeds represent different stochastic realisations, not different treatments.

    Within each tick

    1. Each patch regrows by 1 / regrowth time, up to a biomass of 1. A drought reduces this rate to 25% for 100 ticks.
    2. Prey act in shuffled order. They pay energy, sample three adjacent patches and choose a food-rich one with some random variation. They consume up to 0.25 biomass, gaining 7 energy per unit eaten.
    3. Predators act in shuffled order. They pay energy, seek prey within two patches in each axis and move one patch towards a target, or move randomly. A capture can occur only on the same non-refuge patch, with the chosen capture probability. A meal gives 13 energy.
    4. After feeding, a sufficiently energetic individual can reproduce with the chosen probability. Parent and offspring share the available energy equally. Zero energy means death before movement and feeding.

    Important fixed assumptions

    The 56 × 34 grid wraps at its edges. Energy is capped at 16 for prey and 36 for predators; reproduction requires at least 8 and 16 energy respectively. Newborn prey can be eaten in their birth tick but do not forage yet; newborn predators act from the next tick. Prey consume plants, not one another. There is no age, sex, disease, evolution, seasonal cycle or spontaneous recolonisation.

    Hatched patches block predation, not movement. Refuges contain plants and form seeded clusters. Initial plant biomass is 0.65–1 per patch. Biomass (%) is the landscape-wide mean as a percentage of a fully grown landscape; it is not the percentage of green patches. The actual refuge count is rounded to whole patches.

    Interpret patterns carefully

    Persistence at tick 600 does not prove stability. Predator and prey peaks may lag, vary or disappear. Extinctions can occur, even with the baseline settings. Pin a control run, change one factor, then compare the same duration. Repeat the comparison across several paired seeds. Treat multiple ticks from one run as a time series, not independent replicates.

    The runner reports descriptive results, not significance tests. A safeguard stops runs at 6,000 animals or 10,000 ticks. These are software limits, not ecological mechanisms; a stopped run must not be treated as a completed experiment.

    Free to use, inspect and adapt

    All code runs in your browser. There are no accounts, analytics, paid APIs, external fonts, remote assets or package dependencies. No data is transmitted by the simulation. A web host may maintain its own access logs. Use the downloaded page offline for a fully local session. Keyboard controls, non-colour shape cues and a numerical table support access; this is not a formal accessibility certification.

    The implementation and interface are original, MIT-licensed. Conceptual reading: Wilensky (1997), NetLogo Wolf Sheep Predation. Its educational model is a separate work under its own licence; no NetLogo code or assets are included.

    For a 45–60 minute practical

    Begin with a prediction and a baseline observation. In pairs, choose a single treatment and keep a common seed, initial populations and run length. Save control and treatment CSVs, then use the replicate runner with the same base seed for both settings. Compare endpoint persistence and the population trajectories. Finish by separating observations, mechanistic explanations and model limitations. Save or export work before restarting or closing the page. The notebook is retained across New world, so label which run each note refers to.

    A shared starting point.

    The starting settings are shared, not the current animals, previous interventions or your notebook. A run JSON export records the full history and intervention log.