Home Download Help Forum Resources Extensions FAQ NetLogo Publications Contact Us Donate Models: Library Community Modeling Commons Beginners Interactive NetLogo Dictionary (BIND) NetLogo Dictionary User Manuals: Web Printable Chinese Czech Farsi / Persian Japanese Spanish

NetLogo Models Library: 
If you download the NetLogo application, this model is included. You can also Try running it in NetLogo Web 
This project explores a simple ecosystem made up of rabbits, grass, and weeds. The rabbits wander around randomly, and the grass and weeds grow randomly. When a rabbit bumps into some grass or weeds, it eats the grass and gains energy. If the rabbit gains enough energy, it reproduces. If it doesn't gain enough energy, it dies.
The grass and weeds can be adjusted to grow at different rates and give the rabbits differing amounts of energy. The model can be used to explore the competitive advantages of these variables.
Click the SETUP button to setup the rabbits (red), grass (green), and weeds (violet). Click the GO button to start the simulation.
The NUMBER slider controls the initial number of rabbits. The BIRTHTHRESHOLD slider sets the energy level at which the rabbits reproduce. The GRASSGROWTHRATE slider controls the rate at which the grass grows. The WEEDSGROWTHRATE slider controls the rate at which the weeds grow.
The model's default settings are such that at first the weeds are not present (weedsgrowrate = 0, weedsenergy = 0). This is so that you can look at the interaction of just rabbits and grass. Once you have done this, you can start to add in the effect of weeds.
Watch the COUNT RABBITS monitor and the POPULATIONS plot to see how the rabbit population changes over time. At first, there is not enough grass for the rabbits, and many rabbits die. But that allows the grass to grow more freely, providing an abundance of food for the remaining rabbits. The rabbits gain energy and reproduce. The abundance of rabbits leads to a shortage of grass, and the cycle begins again.
The rabbit population goes through a damped oscillation, eventually stabilizing in a narrow range. The total amount of grass also oscillates, out of phase with the rabbit population.
These dual oscillations are characteristic of predatorprey systems. Such systems are usually described by a set of differential equations known as the LotkaVolterra equations. NetLogo provides a new way of studying predatoryprey systems and other ecosystems.
Leaving other parameters alone, change the grassgrowrate and let the system stabilize again. Would you expect that there would now be more grass? More rabbits?
Change only the birththreshold of the rabbits. How does this affect the steadystate levels of rabbits and grass?
With the current settings, the rabbit population goes through a damped oscillation. By changing the parameters, can you create an undamped oscillation? Or an unstable oscillation?
In the current version, each rabbit has the same birththreshold. What would happen if each rabbit had a different birththreshold? What if the birththreshold of each new rabbit was slightly different from the birththreshold of its parent? How would the values for birththreshold evolve over time?
Now add weeds by making the sliders WEEDSGROWRATE the same as GRASSGROWRATE and WEEDSENERGY the same as GRASSENERGY. Notice that the amount of grass and weeds is about the same.
Now make grass and weeds grow at different rates. What happens?
What if the weeds grow at the same rate as grass, but they give less energy to the rabbits when eaten (WEEDSENERGY is less than GRASSENERGY)?
Think of other ways that two plant species might differ and try them out to see what happens to their relative populations. For example, what if a weed could grow where there was already grass, but grass couldn't grow where there was a weed? What if the rabbits preferred the plant that gave them the most energy?
Run the model for a bit, then suddenly change the birth threshold to zero. What happens?
Notice that every black patch has a random chance of growing grass or weeds each turn, using the rule:
if randomfloat 1000 < weedsgrowrate
[ set pcolor violet ]
if randomfloat 1000 < grassgrowrate
[ set pcolor green ]
Wolf Sheep Predation is another interacting ecosystem with different rules.
If you mention this model or the NetLogo software in a publication, we ask that you include the citations below.
For the model itself:
Please cite the NetLogo software as:
Copyright 2001 Uri Wilensky.
This work is licensed under the Creative Commons AttributionNonCommercialShareAlike 3.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/byncsa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at uri@northwestern.edu.
This model was created as part of the projects: PARTICIPATORY SIMULATIONS: NETWORKBASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS and/or INTEGRATED SIMULATION AND MODELING ENVIRONMENT. The project gratefully acknowledges the support of the National Science Foundation (REPP & ROLE programs)  grant numbers REC #9814682 and REC0126227.
(back to the NetLogo Models Library)