This is a system model of the growth of a population of bunnies. It tracks the number of bunnies
that are alive at each time step, and plots the results on a graph. Parameters in this model -
birth rate, carrying capacity, and competition - determine how quickly the bunnies reproduce and
their maximum population. When the model is run, it will display either exponential or asymptotic
growth, depending on the parameters chosen. A graph displays the size of both populations of
bunnies at each time step.

Background Information

In the absence of constraints, most species on Earth will grow exponentially and without end.
However, exponential growth is not sustainable in the real world for a number of different
reasons, including resource, space, and energy constraints. This model simulates two of the most
common and important constraints on a population size - the carrying capacity of the environment
and the competition between members of the species for mates and resources.

The carrying capacity of the environment is essentially the total potential supply of food, water,
air, and other resources necessary for life. In the absence of other constraints, a population
will approach the carrying capacity, but it is impossible for a population to stay above the
carrying capacity for an indefinite time. Competition is related to carrying capacity and
represents the ways in which individual members of the species prevent one another from
reproducing by fighting over territory, mates, or food. Like resource constraints, competition
becomes more intense as the population size increases, so it too tends to produce a steady state
population.

Science/Math

The fundamental principle behind this model is HAVE = HAD + CHANGE. Each time tick, the following
things happen:

Rabbits breed according to the "birf rate" in both populations

birf rate * bunnies
birf rate 0 * bunnies 0

The "bunnies" population is multiplied by the following function based on its carrying
capacity

1 - bunnies/carrying capacity

The "bunnies 0" population is reduced by its competition factor multiplied by the number pairs
of bunnies

competition * bunnies 0 * (bunnies 0 - 1)/2

The new values for both populations are plotted on the graph

Teaching Strategies

An effective way of introducing this model is to ask students to brainstorm why there are limits
on the population of animals that can exist in a certain area. Then, discuss how different factors
can affect population size in different ways. Ask the following questions:

The average litter of rabbits contains anywhere from 4 to 9 bunnies, and rabbits can breed
several times a year. Why don't rabbit populations explode to trillions of members?

What are some factors that might limit population growth for rabbits?

If students mention space or resource constraints, ask: What happens if the population of
rabbits is too high for the available space? What happens if there isn't enough food/water for
all the rabbits?

In the long run, what do you expect will happen to the population of bunnies if it faces the
limiting factors we discussed?

Implementation:

How to use the model

This is a relatively basic model, yet still has a number of interesting parameters to manipulate:

The "bunnies" parameter's initial value determines the number of rabbits present in the
population limited by carrying capacity when the model is run

The "bunnies 0" parameter's initial value determines the number of rabbits present in the
population limited by competition when the model is run

The "birf rate" parameter determines the proportion of rabbits in the first group that
reproduce each timestep

The "birf rate 0" parameter determines the proportion of rabbits in the second group that
reproduce each timestep

The "carrying capacity" parameter determines the maximum carrying capacity of the environment
in which the first group of rabbits is placed

The "competition" parameter determines the effects of inter-rabbit competition on population
growth rates in the second population

All of the aforementioned parameters are manipulated before the model is run by right clicking
(control clicking on a Mac) on their labels in the diagram. When the model is run, parameters 3-6
can also be manipulated by clicking and dragging their respective sliders. The maximum, minimum,
and step values for each parameter are pre-set. Any changes made to the sliders take effect
immediately with the exception of the initial values, which take effect the next time the
simulation is run.

To run the simulation, click the "Run a Simulation" button. The results from the simulation are
displayed immediately in graphical form. To the right of the model, a graph depicts the
populations of rabbits in both groups, with bunnies indicated by the blue line and bunnies 0
indicated by the red line. For more information on Vensim, reference the Vensim tutorial here
here.

For a complete tutorial on how to use Vensim, please go to the following link
here.

Learning Objectives

Understand the relationship between carrying capacity and steady-state population

Understand the relationship between competition and steady-state population

Objective 1

To accomplish this objective, have students run the simulation with several different values for
carrying capacity, and observe how the graph of the bunny population changes each time. They
should specifically pay attention to the asymptotic steady state. Ask the following questions:

From your observations, what is the relationship between the carrying capacity and the
eventual steady state population?

The bunnification equation is "birf rate*bunnies*(1-bunnies/carrying capacity)". What happens
when bunnies = carrying capacity? Does this make sense with what you observed?

Now change the birf rate and re-run the simulation a few times. What is the relationship
between birf rate and bunny population? Does the steady state population change? Why or why
not?

Objective 2

To accomplish this objective, have students run the simulation with several different values for
competition, and observe how the graph of the bunny population changes each time. They should
specifically pay attention to the asymptotic steady state. Ask the following questions:

From your observations, what is the relationship between the competition factor and the
eventual steady state population?

The asymptotic steady state for "bunnies 0" with default parameters is a population of exactly
5001. What is the relationship, if any, between this and the competition factor?

Now modify the birf rate 0 and re-run the simulation a few times. What is the relationship
between birf rate 0 and bunny 0 population? Does the steady state population change? Why or
why not?

How does the relationship between the competition factor and the asymptotic steady-state
population change when the birf rate 0 changes? What does that suggest about the differences
between competition and carrying capacity?

Extensions:

Understand the mathematics behind the equation for the competition factor

Discuss which constraint is more realistic, and what qualities both parts of the model lack
when compared with the real world

Extension 1

Have students solve the equation in bunnification 0 for the population of bunnies 0. The final
equation should be in terms of birf rate 0 and competition. Ask the following questions:

Why is the competition factor multiplied by "bunnies 0 * (bunnies 0 - 1)/2" instead of just
"bunnies 0"? What does that function measure in the real world?

If the population of bunnies 0 were to double, what would happen to the term multiplied by the
competition factor? Does this make sense in the real world?

How does the solved version of the equation depend on the competition factor? How does it
depend on the birf rate?

Extension 2

Discuss with students the real-world implications of both types of constraints. Ask the following
questions:

Set the parameters in both functions so that they have the same asymptotic steady state. How
does the graph of the populations differ in the time before they reach the steady state?

Now increase the birf rate and birf rate 0 by the same amount. How does the graph of the
populations change for each group?

The carrying capacity equation suggests that the birf rate of the population determines how
quickly it reaches its maximum, but does not change the maximum itself. Is this realistic? Why
or why not?

This equation suggests that the maximum number of bunnies that can sustainably live in an area
depends, in part, on how quickly they can reproduce. Is this realistic? Why or why not?

Does either of these population functions ever decrease? Is this realistic? What real-world
factors might account for a temporarily decreasing population that is not captured by these
models?

This is an agent model roughly analogous to the Bunny Comparison model. Like Bunny Comparison,
this models the population of rabbits as they reproduce and die; however, it approximates both
carrying capacity and competition by requiring the rabbits to eat grass in order to survive. Grass
grows at a set rate, so if there are too many rabbits, they will run out of grass and start to
starve to death. As an additional factor, this model introduces the concept of a predator -
wolves. These reproduce alongside rabbits and, as the rabbits eat the grass, the wolves eat the
rabbits. As an agent model, this introduces an element of randomness to the population graph, and
as such, it is an excellent way to explain why real-world populations don't asymptotically grow
towards a steady state.

This is another agent model, but this model forgoes resource constraints in favor of predators as
the only constraint on the prey population. This is a very different constraint than either
carrying capacity or competition, as it is inherently much less stable. The relative reproduction
rates of predators and prey tend to lead to cycles rather than a steady state: when the population
of prey increases, the population of predators will also increase, causing the population of prey
to decrease, which in turn causes the population of predators to decrease. The danger is that if
the population of predators ever gets too large, they could eat all of the prey before they have
time to start reproducing. Conversely, it is possible that all the predators will starve to death
while some prey still remain, leading to an explosion in the prey population.