A first tour through examples - Chapter 3

Sharks and sardines

All the versions of this article: [English] [Español] [français]

The model we are going to study serves as an introduction to the qualitative analysis of differential equations in the plane. We shall introduce the concept of phase portrait.

The model

The mathematician Vito Volterra proposed in the 1920s a model describing the interaction between sharks and sardines after he was approached by the marine biologist D’Anconna to understand some real fishing data from Adriatic Sea.

Let $x(t)$ be the number of sardines as a function of time, and $y(t)$ be the number of sharks. Volterra assumed the following. The population of sardines is kept down exclusively by the sharks that eat them, in particular it is not close to the limits of its food supply (i.e., not close to its carrying capacity). The population of sharks is at the limit of its food supply, and is kept in check by the lack of sardines. Thus, if there were no sharks, $x$ would obey the equation of exponential growth we studied earlier, namely

$$\dot{x}=ax$$

for some birth rate $a>0$. In the absence of sardines, Volterra argued that $y$ would similarly obey the equation of exponential decay

$$ \dot{y}=-cy $$

for some death rate $c>0$. Next, the product $x(t)y(t)$ is proportional to the number of meetings of sardines with sharks. Volterra thus came up with the following equations:

$$ \begin{cases} \dot{x}= ax-bxy\\ \dot{y}=-cy+dxy \end{cases} $$

where $a,b,c,d$ are positive parameters.

Innocent though this system may appear, no one seems to know how to solve them for getting explicitly $x(t)$ and $y(t)$, except in a few special cases. However, we are going to see that we can still analyze them fairly completely by their trajectories in the $xy$-plane.

Visualizing the equations: the phase portrait

Before experimenting digitally with Volterra’s model, let us explain how to visualize it geometrically and how to interpret it as an imaginary fluid in the $xy$-plane.

There is a fluid flow in our equations!
We think of $(\dot{x},\dot{y})$ as the velocity vector at $(x,y)$ of an imaginary fluid flow in the $xy$-plane. This velocity vector is given by the equations of the model: it is $(ax-bxy,-cy+dxy)$. It is usually called the vector field.
Now take an initial condition $(x_0,y_0)$ and assume that there exists a unique solution $(x(t),y(t))$ such that $(x(0),y(0))=(x_0,y_0)$. This solution will trace out a curve, called a trajectory, in the $xy$-plane. In terms of our imaginary fluid, this amounts to dropping a point particle at time $t=0$ at position $(x_0,y_0)$ and look at the trajectory it follows, transported by the current. The velocity vector is tangent to this trajectory at every point $(x,y)$. Furthermore, the entire $xy$-plane is filled with trajectories, since we can drop at each point a particle and see its trajectory.

In Volterra’s model, we are obviously interested only in the positive quadrant $\{(x,y)\in\mathbb{R}^2 :x\geq 0, y\geq 0\}$. It can be shown that all trajectories of points dropped in the positive quadrant actually remain confined therein.


A way to prove it is the following. Consider the first equation that can be written as

$$ \frac{\dot{x}}{x}=\frac{\text{d}}{\text{d}t} \ln x=a-by $$

for any $x>0$.
Integrating both sides from time $0$ to time $t$ gives

$$ \ln x(t)-\ln x_0=\int_0^t (a-by(s))\text{d}s $$

i.e.

$$ x(t)=x_0 \, e^{\int_0^t (a-by(s))\text{d}s} $$

which is $>0$ for all $t>0$ if $x_0>0$. We can do the same for $y$. If $x=0$ and $y>0$, then $\dot{x}=0$ and $\dot{y}=-cy$. Thus, if one starts on the positive $y$-axis, one stays there for ever. If $y=0$ and $x>0$, then one stays on the $x$-axis for ever. The last case is when $x=0$, $y=0$. Then one stays at $(0,0)$ for ever.

Fixed points.
As mentioned for the logistic equation, there are points of special importance, both from mathematical and modeling viewpoints: fixed points. Volterra’s equations have two such points, i.e., points at which $\dot{x}$ and $\dot{y}$ are both equal to zero, or, equivalently, points at which the vector field $(ax-bxy,-cy+dxy)$ vanishes. These two points are $(0,0)$ and $(c/d,a/b)$. In our fluid interpretation, these points are stagnation points.
The first one is trivial: if both sardines and sharks are absent, nothing happens! The second fixed point corresponds to a self-sustaining of both population sizes: if we take exactly $x_0=c/d$ and $y_0=a/b$, then $x(t)=c/d$ and $y(t)=a/b$ for all $t$.


Phase portrait.
As the digital experiment shows, every solution of Volterra’s equations that is started from a point $(x_0,y_0)$, inside the positive quadrant and that is $\neq (c/d,a/b)$, has a trajectory in the $xy$-plane that is a closed curve encircling the fixed point $(c/d,a/b)$. We also see that the corresponding solutions are periodic in the sense that there exists a number $T>0$ such that $x(t+T)=x(t)$ and $y(t+T)=y(t)$ for all $t$. The period $T$, which manifestly depends on $(x_0,y_0)$, turns out not to be expressible in terms of elementary functions like polynomial, exponential, etc, functions.

The geometric representation of the trajectories of the solutions of Volterra’s equations in the $xy$-plane, usually referred to as the phase plane, is called a phase portrait.

Volterra’s model is very special, which makes quite easy to prove why trajectories are closed curves. This is because trajectories are level curves of the function $L(x,y)=x^{c} y^{a} \, e^{-(d x+by)}$. Indeed, the equations have the peculiarity of being separable, leading to

$$ \frac{a-by}{y}\, \text{d}y = \frac{-c+dx}{x}\, \text{d}x $$

which can be integrated to yield

$$ x^{c} y^{a} \, e^{-(d x+by)}=C $$

where $C$ is a constant of integration determined by the initial condition. Therefore, $L(x(t),y(t))=L(x_0,y_0)$ for all $t$. The reader can check that the function $L$ has a unique maximum at $(c/d,a/b)$ (the non-trivial fixed point), and that it decreases to zero when $(x,y)$ approaches the axes or goes to infinity in any direction in the positive quadrant. Now level curves on a mountain are easy to imagine.


Adding competition between sardines

In the absence of sharks, the number of sardines is governed by the equation $\dot{x}=ax$, meaning an exponential growth. This unrealistic feature is easily remedied by taking competition within the sardine population into account: we assume logistic growth, that is,

$$ \dot{x}=ax\left(1-\frac{x}{K}\right) $$

where $K$ is the carrying capacity. Indeed, as we saw before, all solutions starting from $x_0>0$ will tend to $K$ as $t\to+\infty$, whence the name. Therefore, the new equations are

$$ \begin{cases} \dot{x}= ax\left(1-\frac{x}{K}\right)-bxy\\ \dot{y}=-cy+dxy. \end{cases} $$

Formally, one can get back Volterra’s model by taking $K=+\infty$. Intuitively, a large but finite $K$ should not alter qualitatively the behavior of solutions. The following experiment shows that this is not the case!


We observe that even if $1/K$ is very small, the behavior of the model with competition between sardines is completely different from the one observed in Volterra’s model: there is no more cycling and all solutions starting from positive numbers of sardines and sharks converge to either the fixed point $(x=K,y=0)$ (sharks go extinct) or to the fixed point $\left(\frac{c}{d},\frac{a}{b}(1-\frac{c}{dK})\right)$ (coexistence of sharks and sardines).