Two foresters

Two foresters preview image

This model is seeking new collaborators — would you please help?

1 collaborator

Default-person Susan Hanisch (Author)

Tags

social dilemma 

Tagged by Susan Hanisch over 3 years ago

sustainability 

Tagged by Susan Hanisch over 3 years ago

Visible to everyone | Changeable by everyone
Model was written in NetLogo 6.1.1 • Viewed 304 times • Downloaded 18 times • Run 0 times
Download the 'Two foresters' modelDownload this modelEmbed this model

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


Model Information and Materials

Model Google Drive Link: https://drive.google.com/open?id=16aakR4gBXrgAH2SSs8bpgu8TvDpO6yDM

Model GUI overview: https://drive.google.com/open?id=1jYkw4G4uUbCttIbc5EioAqlqLqiVj3D2

Discussion guide and lesson plan: https://docs.google.com/document/d/1JeW5GraAmSUWvouC6qDYFYbOqy9l5iAhUEYlD1sRW8Y/edit?usp=sharing

References and Citation

For this model:

For the NetLogo-Software:

Licence

CC BY-NC-SA 3.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. http://creativecommons.org/licenses/by-nc-sa/4.0/

Comments and Questions

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

Click to Run Model

breed [trees tree]
breed [farmers farmer]
breed [fences fence]

farmers-own [
  amount
  harvest
  wealth
]

trees-own [height]

globals [
  pasture1
  pasture2
  farmers1
  farmers2
 ]

;;;;;;;;;;;;;;;;;;;;;;
;;;Setup Procedures;;;
;;;;;;;;;;;;;;;;;;;;;;

to setup
  clear-all

  setup-pastures
  setup-trees
  if Private-forest? [setup-fence]
  setup-farmers

  reset-ticks
end 

to setup-pastures
  ask patches [set pcolor brown + 2]
  set pasture1 patch-set patches with [pxcor < 5]
  set pasture2 patch-set patches with [pxcor >= 5]
end 

to setup-trees
  ask patches [
    sprout-trees 1 [
    set shape "tree"
    set color green - 2
    set height Max-Treeheight
    set size ( height / 100 )
  ]]
end 

to setup-fence
  ask patches with [ pxcor = 4 ] [
    sprout-fences 1 [
    set shape "thick line"
    set color grey
    set xcor 4.5
      ifelse pycor  < 4
      [facexy 4.5 5 ]
      [facexy 4.5 0 ]
  ]]
end 

to setup-farmers
  ask patches with [pxcor = 2 and pycor = 1 ]
    [sprout-farmers  1 [
      set shape "person logger"
      set color green
      set size 1.2 ] ]

  ask patches with [pxcor = 6 and pycor = 1 ]
    [sprout-farmers 1 [
      set shape "person logger"
      set color red
      set size 1.2] ]

  set farmers1 turtle-set farmers-on pasture1
  set farmers2 turtle-set farmers-on pasture2
end 


;;;;;;;;;;;;;;;;;;;;;;;;
;;;Runtime Procedures;;;
;;;;;;;;;;;;;;;;;;;;;;;;

to go

  ifelse Private-forest?
   [setup-fence]
   [ask fences [die]]

  ask farmers1 [set amount Percent-cut1]
  ask farmers2 [set amount Percent-cut2]

  cut-trees

  ask trees [ regrow]

  tick
end 

to cut-trees
  ifelse Private-forest?
  [harvest-private]
  [harvest-commons]

  ask farmers [set wealth wealth + harvest]
end 

to harvest-private
   ask farmers1 [
    if member? patch-here pasture1 = false [ move-to one-of pasture1]
    let trees1 trees-on pasture1
    let harvest-tree max-one-of (trees1 in-radius 1) [height]
    move-to harvest-tree
    set harvest (  [height] of harvest-tree  * amount / 100)
    ask  harvest-tree [set height (height - (height * [amount ] of myself / 100))]
  ]

  ask farmers2 [
    if member? patch-here pasture2 = false [ move-to one-of pasture2]
    let trees2 trees-on pasture2
    let harvest-tree max-one-of (trees2 in-radius 1) [height]
    move-to harvest-tree
    set harvest (  [height] of harvest-tree  * amount / 100)
    ask  harvest-tree [set height (height - (height * [amount ] of myself / 100))]
  ]
end 

to harvest-commons
  ask farmers [
    let harvest-tree max-one-of (trees in-radius 2) [height]
     move-to harvest-tree
     set harvest (  [height] of harvest-tree  * ( amount / 100))
     ask  harvest-tree [set height (height - (height * [amount ] of myself / 100))]
  ]
end 

to regrow ;; tree
  ifelse height > 0
 [ set height  (height + ((Growth-Rate * height) * (1 - (height / ( Max-Treeheight)  ))))
   ]
  [set height 0.01]
  set size height / 100
end 

There is only one version of this model, created over 3 years ago by Susan Hanisch.

Attached files

File Type Description Last updated
Two foresters.png preview Preview for 'Two foresters' over 3 years ago, by Susan Hanisch Download

This model does not have any ancestors.

This model does not have any descendants.