Modelling the extintion of Steller Sea Cow
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
AUTORE
Laura Bonatesta (Corso di gestione delle risorse naturali)
NOME
Estinzione della ritina di Steller: modello a due variabili.
ARGOMENTO DEL MODELLO
Il modello simula l'estinzione della ritina di Steller, una specie di sirenide scoperta nel 1741 ed estinta nel 1786. La ritina fu scoperta da alcuni navigatori che si trovavano su una nave capitanata da Vitus Bering in spedizione nelle acque del Nord per ordine dello Zar di Russia Pietro il Grande. Alla spedizione partecipò anche Steller, un naturalista, che fu l'unico studioso a portare testimonianza dell'esistenza della ritina. Arrivati nelle gelide acque di un'isola che poi prenderà il nome del capitano, Bering, senza provviste sufficienti, decisero di cacciare la ritina per la loro sussistenza. I dati relativi al 1741 sono incerti ma modellizzazioni scientifiche recenti stimano il numero di ritine presenti nel periodo a 2900 esemplari. In 27 anni 2900 esemplari scomparirono dalle acque del Nord sia per causa umana che per concausa naturale. Infatti alcuni scienziati stimano che dietro la scomparsa della ritina di Steller si celi un motivo dettato dal disequilibrio naturale dell'ecosistema. Gli uomini nella zona dell'Isola di Bering non iniziarono a cacciare solo la ritina ma anche le lontre marine. Le lontre marine si cibano dei ricci di mare, animali marini erbivori che tendono a nutrirsi soprattutto di Kelp. Questa specie di alga è il cibo della ritina di Steller. Quindi una diminuzione delle lontre marine ha portato ad un aumento dei ricci e ad una sostanziale diminuzione delle kelps. Questo ha comportato anche una diminuzione della forza della ritina. Così tra l'indebolimento e la caccia è iniziata l'estinzione della cosiddetta mucca di mare.Essendo questa scomparsa valutata in 27 anni, il modello funziona in 27 ticks, ognuno rappresentante un anno di caccia.
COME FUNZIONA
Il programma ha uno scopo: dimostrare che la ritina scompare non solo per la caccia diretta degli uomini ma anche per l'assenza della lontra che porta ad uno shock nell'ecosistema e al conseguente collasso. Quindi le turtles presenti nel programma sono cinque: le ritine di Steller (seacow, seacows), gli uomini (catcher, catchers), i ricci di mare (sea-urchin, sea-urchins), le alghe di mare (kelp, kelps), le lontre marine (sea-otter, sea-otters). I primi quattro elementi sono sempre fissi; la lontra è, invece, la turtle fondamentale su cui si è basato la dimostrazione del modello. Pertanto quando vi è la lontra (a cui è stato apposto uno switch on/off) la ritina non muore. Questo a dimostrazione della tesi per cui la ritina di steller è scomparsa anche per la concausa naturale, cioè la diminuzione del cibo. Quando, invece, la lontra non è presente nel programma, la ritina di Steller non sopravvive alla caccia degli uomini. La catena trofica è la seguente:
__uomini___
| |
ritine lontre
| |
| ricci
|_kelp ____|
Quindi i catchers cacciano sia le ritine di Steller, sia le lontre di mare sia i ricci di mare. In base alla preda è stato assegato un valore differente: per le ritine + 2, per le lontre di mare + 1 e per i ricci di mare + 0.5. Questo perchè gli uomini hanno una loro variabile n-of-preys, che è il meccanismo di base per la riproduzione dei cacciatori (ovvero si riproducono in base alle prede che hanno catturato). Alla ritina è stato assegnato il valore + 2 perchè era il cibo fondamentale degli uomini e si sostiene che una ritina potesse cibare 33 uomini per un mese. Alle lontre è stato assegnato + 1 di valore perchè venivano cacciate solo per la loro pelliccia. Le ritine di Steller non sono solo delle prede ma anche dei predatori perchè nel modello cacciano le kelps. Le lontre non sono solo prede ma anche predatori poichè nel modello cacciano i ricci di mare per il loro sostentamento. I ricci di mare non sono solo prede ma anche predatori perchè cacciano le kelps come loro fonte di cibo. Le kelps, le ritine di Steller e le lontre marine si riproducono secondo una curva logistica: P(t+1) = r*Pt (1 - Pt/k). Questa formula serve a calcolare la popolazione delle turtles in base al tasso di crescita (r) moltiplicato per la popolazione nel tick (anno). Ogni elemento viene cacciato tramite la funzione "in radius catch-distance"; vi è un catch distance per ogni tipo di rapporto preda-predatore. Sono tutti dei valori notevolemte bassi. Le ritine di Steller non avevano paura degli uomini e non si immergevano per molto tempo; tantomeno si allontanavano dalle coste. Questo comportava un'alta probabilità per gli uomini di cacciare questi animali imponenti. Anche le lontre marine vivono abbastanza vicino alle coste e non si allontanano molto dalla riva per timore di essere portate via dalla corrente marina. All'interno del modello è stabilito anche un parametro che influenza la mortalità dei cacciatori: il parametro "mu". Per gli uomini è stato scelto un parametro di 0.60. E' alto, però bisogna ricordare che molti uomini sull'isola morivano per scorbuto; lo stesso Steller per molto tempo è stato malato. Per questo è stato scelto questo parametro.
THINGS TO TRY
This section could give some ideas of things for the user to try to do (move sliders, switches, etc.) with the model.
EXTENDING THE MODEL
This section could give some ideas of things to add or change in the procedures tab to make the model more complicated, detailed, accurate, etc.
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
This section could give the names of models in the NetLogo Models Library or elsewhere which are of related interest.
CREDITS AND REFERENCES
This section could contain a reference to the model's URL on the web if it has one, as well as any other necessary credits or references.
Comments and Questions
globals [ks kk ku kl kcatch rs ru rk ro rcatch catchers-start mu sea-urchins-start mu2 sea-otters-start zone land sea] ; le variabili globali che non possono variare, vengono dichiarate all'inizio del sistema. breed [seacows seacow] ; definisce un nuovo tipo di turtle: le seacows, il soggetto della caccia da parte dei predatori breed [catchers catcher]; definisce un nuovo tipo di turtle: i cacciatori, gli uomini bloccati sull'isola di Bering breed [sea-urchins sea-urchin]; definisce un nuovo tipo di turtle: i sea-urchins, rivali alle retine per il loro cibo di sostentamento, ovvero le kelps. breed [kelps kelp]; definisce un nuovo tipo di turtle: le kelps, cibo sia delle seacows che dei sea-urchins breed [sea-otters sea-otter]; catchers-own [n-of-preys]; le variabili proprie dei catchers, dei cacciatori. sea-urchins-own [n-of-preys]; la variabile dei sea-urchins to setup ;; (for this model to work with NetLogo's new plotting features, ;; __clear-all-and-reset-ticks should be replaced with clear-all at ;; the beginning of your setup procedure and reset-ticks at the end ;; of the procedure.) __clear-all-and-reset-ticks set-default-shape seacows "seacow" ; definisce la forma che il programma deve utilizzare per rappresentare la seacow di steller (modificata dall'autore ed inserita) set-default-shape catchers "sailboat side"; definisce la forma che il programma deve utilizzare per rappresentare i cacciatori (presenta all'interno della Library del programma) set-default-shape sea-urchins "urchin"; this input defines the shape of the sea-urchins (modified by the autor and inserted in the library) set-default-shape kelps "kelp"; this input defines the shape of the kelp (modified by the author and inserted in the library) set-default-shape sea-otters "squirrel"; per la lontra è stta utilizzata la forma dello scoiattolo, già esistente nella libreria. la forma è stata ruotata di alcuni gradi per assomigliare alle lontre che sono sempre ruotate sul loro dorso. set catchers-start 30; set kcatch 65 set ks 2900; set kk 4000; set ku 4000; set rs 0.0135; set rk 0.0061; set ru 0.0015;ricci set ro 0.0020; lontre set rcatch 0.02631 set mu 0.60; mu represents the mortality of the catchers. this could be a realistic value because many people died for famine set mu2 0.65; mu2 mortalità dei ricci create-catchers catchers-start [ ; this input crates the turtle of the catchers and the value of start is declared before set color red; this input sets the color of the turtle set size 2;this input sets the size of the boat setxy random-xcor random-ycor; this inputs sets the position of the turtle in the space, but it's indifferent for that the position is decised randomly by the program. ] create-seacows ks [;this input creates the turtle of the seacows and the value k at the start that is 200 set color grey;this command sets the color for the turtle set size 3; this input sets the size, I've choose 3 bacause the seacows were bigger than the humans setxy random-xcor random-ycor; they used to live everywhere, it's indifferent if near the shore or in the deepest water, for that the program is setted on random ] ; ; if the switch "variable" is switched on this inputs reads the command in the firts brackets creating the kelps create-kelps Kk[;this procedure creates the kelp, with the value k2 setted above, the color green, the size and the position. set color green set size 1 setxy random-xcor random-ycor ] ; if the switch "variable2" of the Interface is switched on this inputs reads the command in the first brackets, otherwise the second. create-sea-urchins Ku[; this procedure creates the sea-urchins, with the value k3 setted next, the colorblack, the size and the position. set color magenta set size 0.5 setxy random-xcor random-ycor ] ifelse seaotters = true [set Kl 2500] [set Kl 0]; ; if the switch "variable" is switched on this inputs reads the command in the firts brackets creating the kelps create-sea-otters Kl [;this procedure creates the kelp, with the value k4 setted above, the color green, the size and the position. set color brown - 2 set size 1 setxy random-xcor random-ycor ] ask patches [ set pcolor blue ] end to go tick move-seacows; it makes move the seacows move-catchers; it makes move the cathcers move-kelps; it makes move the kelpe move-sea-urchins; it makes move the sea-urchins move-sea-otters; catch; the catch of the retine by the catchers and the catch of the kelpe by the sea-urchins and the seacows reproduce; the reprodcution of the catchers after the hunt reproduce2; the reproduction of the sea-urchins after the hunt reproduce3; do-plots; the value for the monitor in the page of the interface if ticks = 27 [stop]; ticks represents the time; this case occupied 27 years, every tick for a year end to move-seacows ; it makes moves the seacows in the screen, random in the space. fd 1 means 1 step forward ask seacows [ set heading random 360 fd 1 ] end to move-catchers; it makes moves the catchers, random in the space. fd 1 means 1 step fprward ask catchers [ set heading random 360 fd 1 set n-of-preys 0; it's own variable of the catchers. it means that every year is like a season of hunt ] end to move-kelps; it makes move kelpe, random in the screen. fd 1 means 1 step forward ask kelps [ set heading random 360 fd 1 ] end to move-sea-urchins; it makes move the sea-urchins, random in the space. fd 1 means 1 step forward ask sea-urchins [ set heading random 360 fd 1 ] end to move-sea-otters; it makes move the sea-urchins, random in the space. fd 1 means 1 step forward ask sea-otters [ set heading random 360 fd 1 ] do-plots end to catch ask catchers [ ifelse any? sea-urchins in-radius catch-distance [ let to-catch [who] of sea-urchins in-radius catch-distance foreach to-catch [ ask sea-urchin ? [die] set n-of-preys n-of-preys + 1 ] ] [ if any? sea-otters in-radius catch-distanceb [ let to-catch [who] of sea-otters in-radius catch-distanceb foreach to-catch [ ask sea-otter ? [die] set n-of-preys n-of-preys + 0.5 ] ] ] ] ask catchers [ if any? seacows in-radius catch-distance [ let to-catch [who] of seacows in-radius catch-distance foreach to-catch [ ask seacow ? [die] set n-of-preys n-of-preys + 2 ] ] if any? sea-otters in-radius catch-distanceb [ let to-catch [who] of sea-otters in-radius catch-distanceb foreach to-catch [ ask sea-otter ? [die] set n-of-preys n-of-preys + 0.5 ] ] ] ask catchers [ if any? sea-urchins in-radius catch-distance [ let to-catch [who] of sea-urchins in-radius catch-distance foreach to-catch [ ask sea-urchin ? [die] set n-of-preys n-of-preys + 1 ] ] ] ask seacows [ ; ask seacows if any? kelps in-radius catch-distance2; if there are some sea-urchins in their radius of catch distance (catch distance3) [ let to-catch [who] of kelps in-radius catch-distance3; and catch the kelpe in the radius foreach to-catch [ ask kelp ? [die] ] ] ] ask sea-urchins [ if any? kelps in-radius catch-distance3; [ let to-catch [who] of kelps in-radius catch-distance ; the sea foreach to-catch [ ; for each item "captured" ask kelp ? [die] ; ask to the turtle shaped like an alga to die set n-of-preys n-of-preys + 1 ; when a ] ] ] ask sea-otters [ ; ask seacows if any? sea-urchins in-radius catch-distance4; if there are some sea-urchins in their radius of catch distance (catch distance3) [ let to-catch [who] of sea-urchins in-radius catch-distance4; and catch the kelpe in the radius foreach to-catch [ ask sea-urchin ? [die] ] ] ] end to reproduce let new-seacows round (rs * count seacows * ( 1 - (count seacows) / ks)) create-seacows new-seacows [setxy random-xcor random-ycor set color grey] let new-catchers round (kcatch * count catchers * ( 1 - (count catchers) / kcatch)) create-catchers new-catchers [setxy random-xcor random-ycor set color red set size 1] ask catchers [ ; the probability to die for the catcher estimed by the mu if random 1001 / 1000 < mu [die] ] end to reproduce2 let new-kelps round (rk * count kelps * ( 1 - (count kelps) / kk)) create-kelps new-kelps [setxy random-xcor random-ycor set color green] ask sea-urchins [ ;each sea-urchins creates as many copies of itself as half (n-of-preys/5) of the kelpe caught in season hatch round (n-of-preys / 4) [setxy random-xcor random-ycor] ] ask sea-urchins [ ; the probability to die for the sea urchin its evaluated by the mu if random 1001 / 1000 < mu2 [die] ] end to reproduce3 ifelse seaotters = true [ let new-sea-otters round (ro * count sea-otters * ( 1 - (count sea-otters) / kl)) create-sea-otters new-sea-otters [setxy random-xcor random-ycor set color brown - 2 set size 2] ask catchers [ ; each catchers creates as many copies of itself as half (n-of-preys/1) of the sea-otters caught in season; the catcehrs' reproduction depenends on the hunt of the season hatch round (n-of-preys / 2) [setxy random-xcor random-ycor] ] ask catchers [ ; the probability to die for the catcher estimed by the mu if random 1001 / 1000 < mu [die] ] ] [let new-seaotters 0] end to do-plots set-current-plot "populations" ; plot of the two lead population: seacows and catchers set-current-plot-pen "seacow" ; this command defines the pen "seacows" colured in grey in the monitor in the interface plot count seacows set-current-plot-pen "catchers";this command defines the pen "catchers" colured in red in the monitor in the page Interface plot count catchers set-current-plot-pen "sea-urchins";this command defines the pen "sea-urchins" colured in black in the forst monitor in the page Interface plot count sea-urchins set-current-plot-pen "kelps"; this command defines the pen "kelpe" in the first page inteface, colured in green plot count kelps set-current-plot-pen "sea-otters" plot count sea-otters set-current-plot "status"; the monitor at the bottom of the page, the first dedicated to the population of retine and catchers, the second to the kelpe and the sea-urchins plotxy count seacows count catchers set-current-plot "status 2" plotxy count kelps count sea-urchins set-current-plot "status 3" plotxy count sea-otters count catchers plot count sea-otters end
There is only one version of this model, created over 12 years ago by Laura Bonatesta.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Modelling the extintion of Steller Sea Cow.png | preview | Preview for 'Modelling the extintion of Steller Sea Cow' | over 12 years ago, by Laura Bonatesta | Download |
This model does not have any ancestors.
This model does not have any descendants.