You are on page 1of 5

Prepared by Siti Khadzimah Sallip

Lotka-Volterra Two Species Model

Two Species Models
The models we have discussed so far (Malthus and Logistic) are single
species models. Many of the most interesting dynamics in the biological world
have to do with interactions between species. Mathematical models which
incorporate these interactions are required if we hope to simulate these dynamics.

One of the first models to incorporate interactions between predators and prey was
proposed in 1925 by the American biophysicist Alfred Lotka and the Italian
mathematician Vito Volterra. Unlike the Malthusian and Logistic models we have
previously seen, the Lotka-Volterra model is based on differential equations.

Differential Equations
For our purposes, the best way to understand differential equations is to contrast
them with the now familiar difference equations. When using difference equations
the population sizes are computed at discrete points in time. These results can be
likened to snapshots, we observe the situation at points in time but do not observe
what happens between snapshots. In the difference equation models we've
discussed so far, the snapshots have been taken at the beginning of each time
period, often years.

In constrast, differential equation models strive to observe the population

at every moment in time. They accomplish this by trying to find a formula X(t) for
the population where t can be any value, not necessary an integer. In our analogy,
the solution to a differential equation is like watching an event unfold, observing
every nuance of its evolution.

In practice, this lofty goal of differential equations is not fully met. This is because
of the difficulty of finding the formulas that actually solve differential equations.
What normally happens instead is that a numerical approximation of the
differential equation's solution is found. This is routinely done by converting the
differential equation into an "equivalent" difference equation, and solving that.
(For details, see any undergraduate differential equations text. Most modern
calculus text also discuss numerical solution of differential equations.) The
"equivalent" difference equation is usually solved using very small time steps. The
result is like a motion picture; the illusion of smooth motion is obtained while in
fact we are seeing a sequence of snapshots.
Instead of giving us information on how much something changes over the course
of one full time period, differential equations give us a formula for
the derivative (from calculus) of some interesting quantity like a population level.
Fortunately for us, the derivative is just a fancy notion for the change in a quantity
per unit time. So, as far as we're concerned, we can treat the formula for the
derivative in exactly the same manner as we treated the formula for change in the
difference equation case. The only change is that in the differential equation case it
is a good idea to use small time steps rather than the time step of 1 typically used
in difference equation models.

Displaying Differential Equations

As those of you who have calculus in your backgrounds may remember, the
derivative has many different notations. If X(t) is a function, the derivative of
X(t) can be represented in a fraction-like form dX/dt or as X'(t). Another common
notation is to put a single dot over the function name. We will use the fraction-like

The common way of indicating a differential equation is to place the derivative

symbol to the left of an equal sign and the formula for the derivative to the right.
For example, a differential equation form of the Logistic model would take the

dX/dt = r*X*(1-X/K).

To solve this model with Stella we note that both sides of this equation represent
the change in population size, just as X(i+1) - X(i) does in the difference equation
models. Consequently, the right hand side of the differential equation is precisely
the formula that should appear in the flow in the Stella model. Note that this gives
us exactly the same model as we derived in the Logistic difference equation case.
We can use either the bi-directional single flow version or the better birth/death
two flow version.

Just as with difference equation models, differential equation models require initial
conditions. These are indicated in precisely the same way as for the difference
equation models discussed earlier.

This works for any differential equation model, simply use the right hand side of
the differential equation as the formula for the flow setting. Let me emphasize
again that the only difference is that differential equation models should generally
be solved with small time steps, while difference equation models should be solved
with time steps of 1.

1. Run the Logistic Stella model developed earlier under several different time
steps. Does the overall behavior of the model seem sensitive to the time

Finding equilibrium populations (a.k.a. steady states) is just as important in the

differential equation case as it is in the difference equation case, and just as easy.
To find the equilibria simply set the derivative equal to zero (indicating no change)
and solve the resulting algebraic (no derivatives) equation for the equilibrium. In
the case of the logistic example given above, the equilibria are exactly the same for
the difference equation models and the differential equation models.

The Lotka-Volterra model describes interactions between two species in an
ecosystem, a predator and a prey. This represents our first multi-species model.
Since we are considering two species, the model will involve two equations, one
which describes how the prey population changes and the second which describes
how the predator population changes.

For concreteness let us assume that the prey in our model are rabbits, and that the
predators are foxes. If we let R(t) and F(t) represent the number of rabbits and
foxes, respectively, that are alive at time t, then the Lotka-Volterra model is:

dR/dt = a*R - b*R*F

dF/dt = e*b*R*F - c*F

where the parameters are defined by:

a is the natural growth rate of rabbits in the absence of predation,

c is the natural death rate of foxes in the absence of food (rabbits),

b is the death rate per encounter of rabbits due to predation,

e is the efficiency of turning predated rabbits into foxes.

The Stella model representing the Lotka-Volterra model will be slightly more
complex than the single species models we've dealt with before. The main
difference is that our model will have two stocks (reservoirs), one for each species.
Each species will have its own birth and death rates. In addition, the Lotka-Volterra
model involves four parameters rather than two. All told, the Stella representation
of the Lotka-Volterra model will use two stocks, four flows, four converters and
many connectors.

1. Split the rabbit's differential equation into the births part and the deaths part.

2. Do the same for the fox's equation.

3. Using the following parameter values, write down the differential equations
for the Lotka-Volterra model and find all equilibrium points. This will
involve solving two equations for two unknowns
(namely R(*)and F(*)). HINT: this model produces two steady states, one of
which should be unsurprising.

o a = 0.04

o b = 0.0005

o c = 0.2

o e = 0.1

4. Optional: Try to find expressions for the Lotka-Volterra steady states in

terms of the parameters. In other words, try to find formulas
for R(*) and F(*) without plugging in specific values for the parameters.

5. Create a Stella model for the Lotka-Volterra model. Use the parameter
values given above as values for the four converters in your model. Try
various initial conditions for the rabbits and fox populations; choose some to
be near the equilibria you determined above, and have some be far away.
Use different time steps and different running times. Which equilibrium is
stable, unstable?

6. Try both the usual time series graph and the scatter graph to examine the
model output. A scatter plot of rabbit versus fox population is particularly
interesting. To produce such a graph pull down the graph icon, place it
somewhere in the model, double click on the graph when it appears and
select the scatter plot option. This will require you to choose two quantities
to plot. Pick the rabbit and fox populations. You should get some interesting
pictures if you let the model run long enough.

Analysis of Lotka-Volterra
The Lotka-Volterra model is one of the earliest predator-prey models to be based
on sound mathematical principles. It forms the basis of many models used today in
the analysis of population dynamics. Unfortunately, in its original form Lotka-
Volterra has some significant problems. As you may have noted in your
experiments, neither equilibrium point is stable. Instead the predator and prey
populations seem to cycle endlessly without settling down quickly. It can be shown
(see any undergraduate differential equations book for details) that this behavior
will be observed for any set of values of the model's four parameters. While this
cycling has been observed in nature, it is not overwhelmingly common. It appears
that Lotka-Volterra by itself is not sufficient to model many predator-prey systems.
Context specific information must be added.