Loberg Stickleback Evolution

Loberg Stickleback Evolution preview image

1 collaborator

Screen_shot_2018-02-02_at_12.53.50_pm lin xiang (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 6.1.0 • Viewed 177 times • Downloaded 12 times • Run 0 times
Download the 'Loberg Stickleback Evolution' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


What is this module?

This module simulates the contemporary evolution of threespine Stickleback of a stickleback population in a hypothetical lake. The following processes serve as the underlying mechanisms of the module.

Reference resource: The bell lab: Bridging the Gap Between Developmental Genetics and Paleontology http://life.bio.sunysb.edu/ee/belllab/loberg.html

Underlying module mechanisms

Traits

The stickleback population may consist of three morphs (types): complete, partial and low. The complete morph is covered with more lateral plate and swims lower. The low morph is covered only a few plates and swims faster. The partial morph has the intermediate number of plates and speed.

Food resource and population size

The stickleback fish need to obtain energy from the food. The changes in blue background represents the available food in the lake. The darker the patch is, the less food is the food available.

Stickleback fish only obtain food from the less dark blue patches and every move costs some energy. If a fish runs out the energy and no food can be obtained from the current patch, it dies.

The slider of "available-food" represents the food resource available for the stickleback population.

Reproduction, inheritance and mutation

A simplified reproduction is used in the module. When a fish cumulates a certain amount of energy, it reproduces. No mate is needed. 5 out of 100 offspring fish have more or less lateral plates compared to the parent fish.

Predation

The slider of "number-of-predators" determines the number of predators in the lake, varying from 0 to 8. When the number of predators is greater than 0, dragonfly larvae will appear in the lake and prey on the slow stickleback. The predators always catch the slowest stickleback fish. In this case, the complete-armored sticklebacks are more likely to be preyed in comparison with the low-armored fish as they swim slower.

Related modules

Find related modules at http://3dsciencemodeling.com

CREDITS AND REFERENCES

This module is made by Dr. Lin Xiang at Weber State University. If you mention this model in a publication, we ask that you include the citations below.

Xiang, L. (2017). Loberg stickleback evolution. Zoology Department, Weber State University, Ogden, UT.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

Breed [fish a-fish]
breed [predators predator]

fish-own [plate erg speed]

to-report years
  report ticks / 200
end 

to setup

  ca

  setup-patches

  create-fish starting-population-size * Ratio-Low/Complete-armor
  [setup-complete-fish]

 ; create-fish starting-population-size * (1 - Ratio-Low/Complete-armor) / 2
 ;[setup-medium-fish]

  create-fish starting-population-size * (1 - Ratio-Low/Complete-armor)
  [setup-low-fish]

  setup-predator

  reset-ticks
end 

to setup-patches
 ask patches [set pcolor 93]
end 

to setup-fish
  set erg 20
  set size 3
  setxy random-xcor random-ycor
end 

to setup-complete-fish
  set plate (23 + random 10)
  setup-shape-color
  setup-fish
  setup-fish-speed
end 

to setup-intermediate-fish
  set plate (13 + random 10)
  setup-shape-color
  setup-fish
  setup-fish-speed
end 

to setup-low-fish
  set plate (3 + random 10)
  setup-shape-color
  setup-fish
  setup-fish-speed
end 

to setup-shape-color
  if plate >= 23 [set shape "armor-1" set color 36]
  if plate < 23 and plate >= 13 [set shape "armor-2" set color 36.5]
  if plate < 13 [set shape "armor-3" set color 37]
end 

to setup-fish-speed
  set speed (-0.1 * plate + 9.3)
end 

to setup-predator
  if count predators < number-of-predators [create-predators 1
  [set size 6
  set color 98
  set shape "predator-2"
  set heading -10 + random 20
  setxy random-xcor random-ycor]
  ]
  if count predators > number-of-predators [ask one-of predators [die]]
end 

to go
  tick
  if count fish <= 0 [stop]
  if ticks > years-to-run * 200 [stop]
  setup-predator
  move
  grow
  forage
  death
  reproduce
  predation
  regrow-food
end 

to move
   ask fish [rt random 30 fd 0.25 set erg erg - 1]
end 

to grow
   ask fish [if size < 3 [set size size + 0.005]]
end 

to predation
  if any? predators
  [ask predators[
      setxy random-xcor random-ycor
      let preys fish-here
      let prey min-one-of preys with [speed < 8.6] [speed]  ; prey on slowest individual among those are slower than 8.6
      if prey != nobody
      [ask prey [die]]
  ]]
end 

to forage
 ask fish [ if pcolor > 92 [set erg erg + 1.2 set pcolor pcolor - 0.25]]
end 

to death
  ask fish [if erg <= 0 [die]]
end 

to reproduce
 ask fish [
    if erg >= 40
    [hatch 1
     [set size 1
       set erg 20
       if random 100 < 5 [set plate (3 + random 30)  setup-shape-color setup-fish-speed setxy random-xcor random-ycor] ]
      set erg erg - 20
      ] ]
end 

to regrow-food
  ask patches with [pcolor <= 92] [if random 100 < (available-food * 0.5) [set pcolor 93]]
end 

There are 2 versions of this model.

Uploaded by When Description Download
lin xiang 5 months ago Fit in NetLogo Web window Download this version
lin xiang over 2 years ago Initial upload Download this version

Attached files

File Type Description Last updated
Loberg Stickleback Evolution.png preview Preview for 'Loberg Stickleback Evolution' over 2 years ago, by lin xiang Download

This model does not have any ancestors.

This model does not have any descendants.