Bears Crossing Roads

Bears Crossing Roads preview image

1 collaborator

Tags

ecology 

Tagged by Philip McElmurray over 2 years ago

urbanization 

Tagged by Philip McElmurray over 2 years ago

Visible to everyone | Changeable by the author
Model was written in NetLogo 5.2.1 • Viewed 219 times • Downloaded 13 times • Run 0 times
Download the 'Bears Crossing Roads' 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 IT?

This model looks at how animals react to urbanization. It is based off of a paper showing bears are more reluctant to cross busier roads.

HOW IT WORKS

The bear wanders randomly (within it's front arc) around its environment. The model will track the size of the bear's home range (everywhere the bear has been). When the bear reaches a road, it will randomly cross the road (or not) by comparing a random number to a fixed percentage, and moving if the random number is under the threshold, with a higher chance to cross less busy roads.

HOW TO USE IT

There are a few main global variables in this model:

The stop-after-100 steps global variable sets a flag to stop the model after 100 steps for easy side-by-side comparisons of different settings.

The busiest-roads global variable sets the busiest road the model will randomly generate. The bear is more likely to cross abandoned roads than roads with low traffic, and more likely to cross roads with restricted traffic than roads with high traffic.

The only-busiest-roads global variable sets a flag to only spawn roads of the busiest type selected, in order to see the effects of different road types in a vacuum.

The number-of-roads global variable simply sets how many roads will be randomly generated in the environment.

THINGS TO NOTICE

Watch how the bear's home range changes given both the number of roads and the busyness of the roads. Which do you think has a larger effect?

THINGS TO TRY

Adjust the number of roads and the busiest type of road. See how not having any roads affects the size of the bear's home range.

EXTENDING THE MODEL

Try developing a model with multiple bears, or a model with an "unpassable" road, such as an interstate.

NETLOGO FEATURES

A turtle breed was used to model the bears, and different color patches were used to model different roads (or the absence of a road)?

RELATED MODELS

Peppered Moths is another model that looks at the affect of urbanization on wildlife.

CREDITS AND REFERENCES

Brody, A. J., & Pelton, M. R. (1989). Effects of roads on black bear movements in western North Carolina. Wildlife Society Bulletin (1973-2006), 17(1), 5-10.

COPYRIGHT AND LICENSE

Copyright 2016 Philip McElmurray.

CC BY-NC-SA 3.0

This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

This model was created as part of an outreach project for the capstone course of the BioBuild program at Virginia Tech.

A big thank you to Fadoua El Moustaid, Zach Gajewski, Matt Hedin, Jess Hernandez, Meredith Keeley, Sam Lane, and Steve McBride for their valuable comments and feedback.

Comments and Questions

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

Click to Run Model

breed [bears bear]

bears-own [
  home-range-size
  abandoned-roads-crossed
  low-traffic-roads-crossed
  high-traffic-roads-crossed
]

to setup

  clear-all

  ask patches [ set pcolor green ]

  let road-busyness-number 0

  if busiest-roads = "abandoned" [ set road-busyness-number 1 ]
  if busiest-roads = "low traffic" [ set road-busyness-number 2 ]
  if busiest-roads = "high traffic" [ set road-busyness-number 3 ]

  if road-busyness-number > 0 [
    let random-patches (list (random 20))
    while [length random-patches < number-of-roads] [
      set random-patches (lput (random 20) random-patches)
      set random-patches (remove-duplicates random-patches)
    ]

    foreach random-patches [
      let x-or-y random 2
      if-else x-or-y = 0
      [ ask patches with [pxcor = ?] [ set pcolor grey ] ]
      [ ask patches with [pycor = ?] [ set pcolor grey ] ]

      let busyness 0

      if-else only-busiest-roads
      [ set busyness road-busyness-number - 1 ]
      [ set busyness random road-busyness-number ]

      if-else busyness = 0
      [ ask patches with [pcolor = grey] [ set pcolor yellow ] ]
      [
        if-else busyness = 1
        [ ask patches with [pcolor = grey] [ set pcolor orange ] ]
        [ ask patches with [pcolor = grey] [ set pcolor red ] ]
      ]
    ]
  ]

  set-default-shape bears "bear"

  create-bears 1
  [
    set color brown
    set size 3
    setxy random-xcor random-ycor
    set home-range-size 0
    set abandoned-roads-crossed 0
    set low-traffic-roads-crossed 0
    set high-traffic-roads-crossed 0
  ]

  ask bears [
    if [pcolor] of patch-here = green [
      set pcolor 57
      set home-range-size home-range-size + 1
    ]
    if [pcolor] of patch-here = yellow [
      set pcolor 47
      set home-range-size home-range-size + 1
      set abandoned-roads-crossed abandoned-roads-crossed + 1
    ]
    if [pcolor] of patch-here = orange [
      set pcolor 27
      set home-range-size home-range-size + 1
      set low-traffic-roads-crossed low-traffic-roads-crossed + 1
    ]
    if [pcolor] of patch-here = red [
      set pcolor 17
      set home-range-size home-range-size + 1
      set high-traffic-roads-crossed high-traffic-roads-crossed + 1
    ]
  ]

  reset-ticks
end 

to go

  tick

  ask bears [
    rt ((random 180) - 90)
    if [pcolor] of patch-ahead 1 = green or [pcolor] of patch-ahead 1 = 57 [ fd 1 ]
    if [pcolor] of patch-ahead 1 = yellow or [pcolor] of patch-ahead 1 = 47 [
      let chance-to-cross random-float 1
      if-else chance-to-cross < 0.430
      [
        fd 1
        set abandoned-roads-crossed abandoned-roads-crossed + 1
      ]
      [
        if-else random 2 = 0
        [ rt 90 ]
        [ lt 90 ]
      ]
    ]
    if [pcolor] of patch-ahead 1 = orange or [pcolor] of patch-ahead 1 = 27 [
      let chance-to-cross random-float 1
      if-else chance-to-cross < 0.252
      [
        fd 1
        set low-traffic-roads-crossed low-traffic-roads-crossed + 1
      ]
      [
        if-else random 2 = 0
        [ rt 90 ]
        [ lt 90 ]
      ]
    ]
    if [pcolor] of patch-ahead 1 = red or [pcolor] of patch-ahead 1 = 17 [
      let chance-to-cross random-float 1
      if-else chance-to-cross < 0.184
      [
        fd 1
        set high-traffic-roads-crossed high-traffic-roads-crossed + 1
      ]
      [
        if-else random 2 = 0
        [ rt 90 ]
        [ lt 90 ]
      ]
    ]
    if [pcolor] of patch-here = green [
      set pcolor 57
      set home-range-size home-range-size + 1
    ]
    if [pcolor] of patch-here = yellow [
      set pcolor 47
      set home-range-size home-range-size + 1
    ]
    if [pcolor] of patch-here = orange [
      set pcolor 27
      set home-range-size home-range-size + 1
    ]
    if [pcolor] of patch-here = red [
      set pcolor 17
      set home-range-size home-range-size + 1
    ]
  ]

  if stop-after-100-steps and ticks = 100 [ stop ]
end 

There is only one version of this model, created over 2 years ago by Philip McElmurray.

Attached files

File Type Description Last updated
Bears Crossing Roads.png preview Preview for 'Bears Crossing Roads' over 2 years ago, by Philip McElmurray Download

This model does not have any ancestors.

This model does not have any descendants.