Bats
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
This model is a simple look at the spread of "White Nose Bat Syndrome" which is a result of a microbial, newly discovered fungus that grows on the muzzles, ears and skin of bats during their hibernation, in colder temperatures, in the U.S. It is not known how this was first brought to the U.S. but is thought to be from tourists who visit the caves. The microbe is found in parts of Europe but does not harm bats there. In the US since 2006 it has killed 7 million bats, and is now found in 22 States.
HOW IT WORKS
The model begins with a set, and rather small amount of bats who are in a range within Va. and W. Va. based on maps that were imported from USGS website. The smaller population allows the user to see the result of visitors to the cave who carry the disease. The model user may change the bat population and observe the monitors and plots along the way.
HOW TO USE IT
Before hitting the set-up button, consider the bat population in size. It can start out small, in increments of 10 and go up to 100. Because bats only reproduce 5 - 6 pups in their lifetime and only once per year, this was pre-set into the model and cannot be changed.
THINGS TO NOTICE
It might be interesting to notice the number of visits to caves and how this affects the changes in sick and healthy bat populations. Both are plotted and monitored with a number count. One can also change the number of visits within a small range and see what affect this has on the spread of this disease. It should be noted that not all visitors carry the microbial organism into a cave on clothing or equipment - this is set randomly to a low number of visits such as 2 or 3 per year.
THINGS TO TRY
The only adjustable monitors are the number of bats that we start with as well as the number of cave visits by people that could carry the disease into the caves.
EXTENDING THE MODEL
One idea of something to change or add to extend this model, as it has been found in research to be a crucial component of this agentset, is the introduce the variable of temperature. It has been found that colonies of the microbe grow larger in the temperatures closer to the top range of 4 - 15 degrees C. These are normal ranges for hibernating bats. The illness strikes them while hibernating, and tends to disturb their sleep, which causes bats to deplete their stored energy and die. In addition, awake bats disturb their sleeping neighbors, which in turn awakens them - this would be another complex but interesting variable to add to this model.
NETLOGO FEATURES
This section could point out any especially interesting or unusual features of NetLogo that the model makes use of, particularly in the Procedures tab. It might also point out places where workarounds were needed because of missing features.
RELATED MODELS
Helpful models were found in the Biology section of the Models Library, such as Sheep and Wolves, Ants, as well as a few in the Code examples section of the Library, such as Virus and Cone-vision which helped with movement when looking for something, as well as the idea of an illness spreading (Influenza for example).
CREDITS AND REFERENCES
Of course Netlogos many online references were very helpful, and especially the work of Uri Wilensky on so many complex models.
Comments and Questions
extensions [bitmap] ; allows for import of png map (later in code - during setup) globals [habitats] ; some globals seen in other models - seemed applicable, these ; represent things that all agents interact with so apply to all in model breed [bats bat] breed [peoples people] breed [specialists specialist] breed [caves cave] ; names the different agentsets in the model breed [lands land] bats-own [age days eat-bugs fly-around check-death bat-energy hibernate ; defines specific bat behavior attributes max-lifespan gets-sick average-offspring ] peoples-own [visit-caves carries-disease ] ; some of visitors will carry disease into cave patches-own [habitat-cave ; differentiates between area that is cave, caves-with-disease ;; whether cave has G. destructans growing habitat-land ; and whether area is open land for bats to fly around ] specialists-own [inspect-caves find-cave-has-disease ] ; defines what wildlife specialists do ; label caves that have WNS (color is white, 9.9) to setup __clear-all-and-reset-ticks ; (for this model to work with NetLogo's new plotting features import-pcolors-rgb "Bat-caves.png" ; the map used that shows W.Va and Va.cave areas in karst topo create-bats number-bats [ setup-habitats setup-agents ] do-plots end to setup-habitats ask patches [ if pcolor > 1 and pcolor < 6 [ set pcolor 47 set habitats habitat-cave ] if pcolor > 31 and pcolor < 38 [ set pcolor 47 set habitats habitat-cave ] if pcolor > 51 and pcolor < 68 [ ; this section of the code changes the perception of the set pcolor 47 ; bitmap for agents so that some areas (near kartst, where there a ; be green for bat habitat in which they fly, eat and then hiberna ; (and in some cases get sick) in the caves set habitats habitat-cave ] ask patches [ if pcolor > 47 and pcolor < 47 [ set pcolor 67 set habitats habitat-land ]]] end to setup-agents ask bats [set shape "bats" set size .5 set color 35] ask specialists [set shape "person" set size 2 set color green set inspect-caves 12] ; distinguishes shapes sizes and colors ask peoples [set shape "person" set size 2 set color black] ; of 3 diff. agents: bats, people & specialists end to setup-bats ask patches[ hatch n-of 100 [number-bats] set bat-energy random 30 set age random 25 ; starts bats with shape, energy, color and lifespan of 25 max show count gets-sick ; average offspring is set to 5 (in nature is 5 or 6) set max-lifespan 25 set average-offspring 5 if bat-energy = 0 [die] ] end to go move-bats if not any? bats [stop] if count bats > 1200 [stop] ; these are the basics to start up the model with moving bats set hibernate ticks ; people and wildlife specialists, but to first check that move-people ; there are in fact bats, (when there are none model will stop or if ; there are so many, like 1200 set carries-disease random 3 ; this only allows for up to 3 people to carry the disease to caves inspect habitat-cave ; for this size model do-plots tick end to move-bats ask bats [set age age + 1] if age > 25 [die] if average-offspring < 5 [ ; the most challenging part of the code was to get hatch 1] ; bats to move, eat, gain and lose energy, hibernate set bat-energy bat-energy - 25 ; graze, reproduce and get sick if in contact with ask bats [ ; cave patches carrying G. destructans set bat-energy bat-energy + 25 ] ; to identify their two parts of habitat (caves and land) ask bats [ set hibernate habitat-cave let c one-of (habitat-cave in-radius 1) move-to habitat-cave if days = 75 [ move-to habitat-cave set hibernate habitat-cave = 25 set bat-energy bat-energy - 10 if patch-here ? pcolor white set gets-sick] [if (bats-on or if bat 0 bat 2 bat 9 gets-sick) self gets-sick] [ set bat-energy bat-energy - 20 ]] ]]] end to move-people ask people [ let p n-of 5 people ; should move people (6 per year?) into caves randomly, move-to visit-caves ; and this would leave disease if person is a carrier let k min-one-of habitat-cave [distance myself] face k move-to k fd 2 rt 30 fd 1 lt 30 fd 2 lt 180 fd 5] let d n-of 1 carries-disease if carries-disease [ ask one-of patches [set pcolor white] ; the cave patch turns white to show it has disease now ] end to check-for-disease ask specialist [ let s n-of 3 specialist move-to habitat-cave let t min-one-of habitat-cave [distance myself] ; specialists inspect and label the caves that have disease face t move-to t [range-of-view 60 radius 2] fd 2 rt 30 fd 1 rt 30 fd 2 lt 45 fd 1 lt 60] if patch [self] pcolor white [set cave-with-disease add count + 1 ] end to do-plots ; update plots with new values set-current-plot "Bat Population" set-current-plot-pen "healthy/" plot count bats ; plot Total number of bats set-current-plot-pen "sick bats" ; plot number of bats sick plot count becomes-sick set-current-plot "Human visits to caves" set-current-plot-pen "people visit caves" plot count visit-caves end to ruler ; set up the white ruler lines around the edge of the model window ; to give an approximate linear scale to the 'map' ask patches with [pxcor = max-pxcor ][set pcolor 78] ; a nice touch taken from Orangatango model ask patches with [pycor = max-pycor ][set pcolor 78] ask patches with [pxcor = min-pxcor ][set pcolor 78] ask patches with [pycor = min-pycor ][set pcolor 78] ask patches with [pxcor mod 10 = 0 and pycor < (min-pycor + 2)] [ set pcolor black ] ask patches with [pxcor mod 100 = 0 and pycor < (min-pycor + 8)] [ set pcolor black ] ask patches with [pxcor < (min-pxcor + 2) and pycor mod 10 = 0] [ set pcolor black ] ask patches with [pxcor < (min-pxcor + 8) and pycor mod 100 = 0] [ set pcolor black ] end
There is only one version of this model, created about 12 years ago by P. Pease.
This model does not have any ancestors.
This model does not have any descendants.
P. Pease
Bats ABM model - needs help
This is a version of the same model uplodaed before - but I have included the file. I will delete the other file so as not to cause any duplication or confusion. The problems ran into on this was in regard to initialising patches, and getting bats to 'hatch' based on the slider selection that users can use . I believe my code is flawed in those areas! Needs help!
Posted about 12 years ago
P. Pease
setup problem for model (Question)
Maybe this is not a question for this forum, but I wonder if anyone could advise me on why I cannot get past the setup of this model - It crashes before it starts - I think from the error message that it has to do with initialization of patches, or the fact that there are no 'bats' because it cannot setup and commence. Thank you.
Posted about 12 years ago
Antoine Lecomte
Error "Value expected"
Hello ! I tried to download this model, but when I ran it on Netlogo, it appears an error after "hatch n-of 100", they tell me ""Expectetd a constant". Thank you !
Posted over 8 years ago