NetLogo banner

Home
Download
Help
Resources
Extensions
FAQ
NetLogo Publications
Contact Us
Donate

Models:
Library
Community
Modeling Commons

Beginners Interactive NetLogo Dictionary (BIND)
NetLogo Dictionary

User Manuals:
Web
Printable
Chinese
Czech
Farsi / Persian
Japanese
Spanish

  Donate

NetLogo User Community Models

(back to the NetLogo User Community Models)

[screen shot]

Download
If clicking does not initiate a download, try right clicking or control clicking and choosing "Save" or "Download".

Try It in NetLogo Web

# Fish Predator-Prey Model ODD Description
This file describes a model which simulates typical fish movement and simple bioenergetics. The file uses the markup language used by NetLogo's Info tab starting with NetLogo version 5.0.

## Purpose
This model was designed to simulate typical fish movement patterns as well as to show predator-prey cycles in the presence of fluctuating chlorophyll-a levels (a proxy for phytoplankton biomass). The purpose of this model is to educate scientists and non-scientists about fish movement dynamics, how population levels can fluctuate under different input conditions, and how predator-prey cycles can develop.

## Entities, State Variables, and Scales
The model has three kinds of entities: prey agents, predator agents, and square patches of plankton. The patches make up a square grid landscape of 200 × 200 patches, and each patch has a state variable for chlorophyll-a density. Predators and prey are primarily characterized by their energy, an integer state variable and their location, but they additionally have agentsets for other nearby prey and predators. It is not specified in the model, but one patch should correspond to 1 square meter in the real world. A patchy distribution of chl-a at this scale is not representative of the real world. Simulations last indefinitely and the length of one time step isn’t specified but is approximately 1 minute.

## Process Overview and Scheduling
Each time step, prey and predators move forward one patch. They also update their agentset variable and react accordingly as described in the procedures section. The order in which turtles execute their code is random. Additionally, predator energy decreases by 0.6 each tick and prey energy decreases by 0.2 each tick to create realistic predator-prey cycles. The user can specify the time step between chl-a bloom occurrences. Chl-a values are visually updated every 25 ticks to reduce CPU load.

## Design Concepts and Procedures
The important parameters of this model are the fluctuations in predator-prey biomass, and the change in the spatial distribution of predators, prey, and chl-a values over time. Total chl-a and prey and predator populations are visualized in a graph that updates each tick.

Patch chl-a blooms occur after a set number of ticks determined by the user. Chl-a values can not increase past 10 mg/m^3 per patch, a typical carrying capacity for phytoplankton. Every 25 ticks, if chl-a has fallen below 0.4 for a patch, the chl-a for said patch will be reduced to 0 to constrain phytoplankton growth.

Sensing is incredibly important in this model because prey and predators use the user-determined variable ‘vision’ to influence all of their decisions. Vision determines the radius of patches that turtles can see other turtles around them.

Every tick, if prey or predator energy has fallen below 0 they will die. If energy is above 300, they will spawn a new turtle of their species with 100 energy, and lose 100 energy. If a prey has no predators within its vision and is on a patch with chl-a above 1, it will add half of the patch’s chl-a value to its energy and decrease the patch’s chl by half. If a predator eats a prey, it will gain 50 energy. 8% of the time, turtles will turn in a random direction rather than doing the adaptive behavior to account for random movement in fish.

If a prey senses predator(s) within its vision, it will turn away from the nearest predator and move forward by vision / 3. If there are no predators and no food within a radius of 3, then the prey will school with other prey. If a predator senses prey within its vision, it will turn towards the nearest prey, move forward by vision / 2, and initiate an attack. Otherwise, predators will school with other predators for more efficient hunting. Predators can only attack every 15 ticks.

## Initialization
The environment is initialized through two user controlled variables: food-clusters, which determines the number of chl-a clusters, and food-cluster-size, which determines the size of each chl-a cluster. Number of initial prey and predators are determined by the user. Prey and Predators locations are initialized randomly throughout the grid. They are initialized with 299 energy.

## Submodels
Chl-a blooms are created by adding the mean chl of each patch’s neighboring patches to its own chl. Each tick, prey must add all other turtles within its vision to either the agentset schoolmates if it is another prey, or the agentset attackers if it is a predator. Predators must add all other turtles within its vision to either the agentset schoolmates if it is another predator, or the agentset targets if it is a prey. If there are attackers or targets, predators and prey will either turn away from or towards the nearest attacker or target. If turtles school, they will either turn away from their nearest schoolmate if they are too close to them, or otherwise turn towards the average schoolmate heading. If predators cannot attack because they are on cooldown, they will follow the average target heading of targets within their vision. When turtles are turning towards or away from something, they cannot turn at a greater degree than their max turn radius(5).

(back to the NetLogo User Community Models)