Put simply, a dynamical system is any system which changes over time. The study of dynamical systems is an important part of applied mathematics and allows us to understand and predict the long-term behaviour of many physical processes. When time is measured in discrete units (as opposed to continuous units) then we have what is called a discrete-time dynamical system. As a simple example, consider computing the compound interest on an investment (compound interest means that the interest earned is based on the current value of the investment). If the interest is compounded (added) annually, then it makes sense to define \(x_n\) as the value of the investment in year \(n\).
If we start with some initial amount of money, \(x_0\), after one year elapses the value of the investment will be \[\begin{align*} x_1 = x_0 + rx_0 = (1+r)x_0,\end{align*}\] where \(r\) is the interest rate. Similarly, after a second year elapses, the investment will be worth \[\begin{align*} x_2 = x_1 + rx_1 = (1+r)x_1.\end{align*}\] Are you starting to see a pattern? After \(n\) years, the investment is worth \[\begin{align*} x_n = (1+r)x_{n-1}.\end{align*}\] If we define a function, \(f(x) = (1+r)x\), then we can write a model for the value of the investment after \(n\) years as \(x_n = f(x_{n-1})\). The value of the investment in year \(n\) depends on the value from the previous year, year \(n-1\), and this dependence is defined by the function \(f(x)\).
This was a fairly simple example. There are many processes, both natural and man-made, which can be modelled as discrete-time dynamical systems. A few common examples include: population growth of plants and animals measured annually, radioactive decay, and bacteria growth. In order to study the dynamics of a system governed by the relation \(x_n = f(x_{n-1})\), we must understand the behaviour of the function \(f(x)\) when it is applied iteratively (multiple times) to some initial state.
Let’s consider a function \(f(x)\). We can think of functions as "machines" which map inputs to outputs.
If we want to model the long term behaviour of a discrete-time dynamical system defined by the relation \(x_{n+1} = f(x_n)\) then we will need to consider applying \(f(x)\) multiple times, or iterating \(f(x)\).
Given some initial state (initial input) \(x_0\), the iterates of \(x_0\) under the function \(f(x)\) are defined as follows.
Let \(f(x)\) be a function such that \(x_0\) is in the domain of \(f(x)\). Then we can define the following:
\(x_1 = f(x_0) = f^{[1]}(x_0)\) is the first iterate of \(x_0\) under \(f(x)\).
\(x_2 = f(x_1) = f(f(x_0)) = f^{[2]}(x_0)\) is the second iterate of \(x_0\) under \(f(x)\).
\(x_n = f(x_{n-1}) = f(f(\ldots f(x_0)\ldots )) = f^{[n]}(x_0)\) is the nth iterate of \(x_0\) under \(f(x)\).
The collection of these iterates \(\{x_0,x_1,x_2,\ldots,x_n,\ldots\}\) is called the orbit of \(x_0\) under \(f(x)\).
The orbit of a function can look very different depending on the starting value that we choose. Let’s look at some examples!
Consider the function \(f(x) = x^2\) with initial value \(x_0 = \frac{1}{2}\).
The first iterate is \(x_1 = f(x_0) =
f\left(\frac{1}{2}\right) = \frac{1}{4}\).
The second iterate is \(x_2 = f(x_1) =
f\left(\frac{1}{4}\right) = \frac{1}{16}\).
The third iterate is \(x_3 = f(x_2) =
f\left(\frac{1}{16}\right) = \frac{1}{256}\).
Continuing this process, the orbit of \(x_0=\frac{1}{2}\) under \(f(x) = x^2\) is \(\left\{\frac{1}{2},\frac{1}{4},\frac{1}{16},\frac{1}{256},\frac{1}{65536}\ldots\right\}\).
We see that the iterates of \(f(x)\) continue to get smaller and smaller, eventually approaching zero.
Once again, let \(f(x) = x^2\), and this time consider the initial value \(x_0 = 1\).
The first iterate is \(x_1 = f(x_0) = f(1)
= 1\).
The second iterate is \(x_2 = f(x_1) = f(1) =
1\).
The third iterate is \(x_3 = f(x_2) = f(1) =
1\).
Continuing this process, the orbit of \(x_0=1\) under \(f(x) = x^2\) is \(\left\{1,1,1,1,1\ldots\right\}\).
The value \(x=1\) is what is called a fixed point of \(f(x)\).
Finally, let’s consider the initial value \(x_0 = 2\), again with \(f(x) = x^2\).
The first iterate is \(x_1 = f(x_0) = f(2)
= 4\).
The second iterate is \(x_2 = f(x_1) = f(4) =
16\).
The third iterate is \(x_3 = f(x_2) = f(16) =
256\).
Continuing this process, the orbit of \(x_0=2\) under \(f(x) = x^2\) is \(\left\{2,4,16,256,65536\ldots\right\}.\)
We see that the iterates of \(f(x)\) continue to get larger and larger, eventually approaching infinity.
In the previous section, we saw that a specific input value, namely the value \(x_0 = 1\), caused the orbit of the function \(f(x) = x^2\) to get "stuck" repeating a single value over and over. This type of a special value is called a fixed point of the function \(f(x)\).
Let \(f(x)\) be a function and \(\bar{x}\) be in the domain of \(f(x)\). Then \(\bar{x}\) is a fixed point of \(f(x)\) if \(f(\bar{x}) = \bar{x}\).
A function may have multiple fixed points, one fixed point, or no fixed points at all. We can find the fixed points of the function \(f(x)\) by solving the equation \(f(\bar{x}) = \bar{x}\) for all possible solutions \(\bar{x}\) which are in the domain of \(f(x)\).
Let’s go back to the function \(f(x) = x^2\) from our previous examples. We know that this function has at least one fixed point since \(f(1) = 1\). Let’s find out if there are any others!
Set \(f(\bar{x}) = \bar{x}\) and solve. \[\begin{align*} \rightarrow \bar{x}^2 &= \bar{x}\\ \bar{x}^2 - \bar{x} &= 0\\ \bar{x}(\bar{x}-1) &= 0\end{align*}\] This has two solutions: \(\bar{x}_1 = 0\) and \(\bar{x}_2 = 1\), both of which must be fixed points of \(f(x) = x^2\).
Let’s check!
\(f(0) = 0^2 = 0\)
\(f(1) = 1^2 = 1\)
Now it’s your turn!
Find all of the fixed points of the function \(f(x) = x^2 - 2\).
Set \(f(\bar{x}) = \bar{x}\) and solve. \[\begin{align*} \rightarrow \bar{x}^2 - 2 &= \bar{x}\\ \bar{x}^2 - \bar{x} - 2 &= 0\\ (\bar{x}+1)(\bar{x}-2) &= 0\end{align*}\] This has two solution: \(\bar{x}_1 = -1\) and \(\bar{x}_2 = 2\), both of which must be fixed points of \(f(x) = x^2 - 2\).
Let’s check!
\(f(-1) = (-1)^2 - 2 = 1 - 2 =
-1\)
\(f(2) = 2^2 - 2 = 4 - 2 = 2\)
Finding the fixed points of \(f(x)\) is equivalent to finding the intersections of the function \(f(x)\) with the line \(y=x\). Let’s look once again at the function \(f(x) = x^2\) which we now know has two fixed points at \(\bar{x}_1 = 0\) and \(\bar{x}_2 = 1\). These two fixed points correspond to the two intersections with the line \(y=x\) seen in the figure below.
When studying the dynamics of a system governed by the function \(f(x)\), we are often interested in how the iterates of \(f(x)\) behave near its fixed points. Are they attracted towards a fixed point? Do they move away from the fixed point, never coming close to it? Or maybe they bounce around a fixed point, but never touch it? Using a figure like the one shown above, we can use a graphical approach to help determine the behaviour of some iterates of \(f(x)\).
First, let’s choose a starting point near the fixed point \(\bar{x}_1 = 0\). To find the first iterate we simply draw a straight line up from \(x_0\) to the point \((x_0,f(x_0))\). To find the next iterate, we need to determine where \(x_1\) lies on the \(x\)-axis, so we draw a line over to the line \(y=x\) which gives us the point \((x_1,x_1)\). Drawing a line straight down will intersect with the point \(x_1\) on the \(x\)-axis, and from here we can find the point \((x_1,f(x_1))\). Continuing the process, we find \(x_2\), \(x_3\), and so on, as shown in the figure below.
We can repeat this process using several starting values near the fixed point \(\bar{x}_1 = 0\) which results in the next figure. This is called a cobweb diagram.
The cobweb diagram shown above indicates that iterates near the fixed point \(\bar{x}_1 = 0\) tend to approach \(0\). We might say that the iterates are attracted to the fixed point \(\bar{x}_1=0\).
What about the other fixed point \(\bar{x}_2 = 1\)? Using the same process, we can draw a cobweb diagram for points near \(\bar{x}_2 = 1\).
We see from our diagram that when we start near the fixed point \(\bar{x}_2 = 1\) the iterates move away from the fixed point. On the left hand side the iterates get smaller and smaller, once again approaching the fixed point \(\bar{x}_1 = 0\), whereas on the right hand side, the iterates get larger and larger, moving away from both fixed points. We say that the iterates are repelled away from \(\bar{x}_2 = 1\).
In the previous section we saw an example of both an attractive and a repelling fixed point. Let’s formalize what this means, starting with the definition of an attractive fixed point.
A fixed point \(\bar{x}\) is an attractive fixed point of \(f(x)\) if there exists an interval surrounding \(\bar{x}\), say \(I = [a,b]\) with \(a < \bar{x} < b\), such that for all \(x\in I\), the iterates of \(f(x)\) approach \(\bar{x}\) in the limit as \(n\) approaches infinity (\(f^{[n]}(x)\to \bar{x}\)). Put in simple terms, this means that as \(n\) gets large, the iterates \(f^{[n]}(x)\) get arbitrarily close to \(\bar{x}\).
This could look something like this:
or like this:
Once again we look at \(f(x) = x^2\). We saw graphically that the fixed point at \(x = 0\) is an attractive fixed point. To show that this is true, let’s define the interval \(I = [-0.95,0.95]\) which clearly contains the point \(x=0\). Notice that all \(x\in I\) satisfy \(|x|<1\).
This means that if we choose any \(x_0\in I\), \(|x_1| = |f(x_0)| < |x_0| < 1\).
Repeating this argument, we see that \(|x_0| > |x_1| > |x_2| > |x_3| > \ldots > 0\), i.e. the iterates are decreasing in magnitude towards the fixed point \(x=0\).
Technically, a bit more work needs to be done to show that the sequence does in fact converge to the fixed point \(x=0\), but that’s beyond the scope of this lesson.
Now, what about repelling fixed points?
A fixed point \(\bar{x}\) is a repelling fixed point of \(f(x)\) if there exists some interval around \(\bar{x}\), say \(I = [a,b]\) with \(a < \bar{x} < b\), such that for all \(x\in I\), \(x\neq \bar{x}\), we have that \(|f(x) - \bar{x}| > |x-\bar{x}|\). This means that the function, \(f\), maps the point \(x\) further away from the fixed point \(\bar{x}\).
Notice how the definition of a repelling fixed point only depends on the behaviour of the first iteration of \(f\), NOT the long term behaviour.
Let’s look at \(f(x) = x^2\) one last time. Our cobweb diagram indicated that the second fixed point at \(x=1\) is a repelling fixed point. To show that this is true, let’s define the interval \(I = [0.5,1.5]\) which contains \(x=1\). For any \(x\in I\), \(x\neq 1\) we have \[\begin{align*} |f(x)-1| &= |x^2 - 1|\\ &= |x+1||x-1|\\ &\geq 1.5|x-1| & \text{(since $x\in I$)}\\ &> |x-1|.\end{align*}\] Therefore \(x = 1\) is a repelling fixed point.
Another interesting behaviour we might come across when studying the iteration dynamics of a function are orbits which exhibit periodic behaviour, effectively jumping back and forth between a finite number of values. Let’s look at an example!
Consider the function \(f(x) = -\sqrt[3]{x}\) and the initial value \(x_0 = 1\). We can see that \(f(1) = -1\) and \(f(-1) = 1\). Therefore the orbit of \(x_0 = 1\) under \(f(x)\) is \(\left\{1,-1,1,-1,1,-1,\ldots\right\}\). We say that the pair of points \(\left\{1,-1\right\}\) is a two-cycle of \(f(x)\).
The point \(x_0\) is a periodic point of period \(n\) of \(f(x)\) if the following is true
\(f^{[n]}(x_0) = x_0\) (this means \(x_0\) is a fixed point of \(f^{[n]}(x)\)), and
\(f^{[m]}(x_0) \neq x_0\) for all \(m\), \(0 < m < n\).
If \(x_0\) is a periodic point of period \(n\), then the set \(\left\{ x_0,x_1,x_2,\ldots,x_{n-1}\right\}\) is called an \(n\)-cycle of \(f(x)\).
We can use the first bullet point in the definition above in order to solve for the periodic points of period \(n\) of a function. Let’s take another look at the function \(f(x) = -\sqrt[3]{x}\).
Let’s say that we want to find all of the two cycles of the function \(f(x) = -\sqrt[3]{x}\). This means we need to find the fixed points of \(f^{[2]}(x)\). But what is \(f^{[2]}(x)\)?
\[\begin{align*} f^{[2]}(x) &= f(f(x))\\ &= -\sqrt[3]{f(x)}\\ &= -\left(-x^{1/3}\right)^{1/3} & \text{(remember that $\sqrt[3]{x}=x^{1/3}$)}\\ &= x^{1/9}\end{align*}\]
To find the fixed points we solve \(f^{[2]}(\bar{x}) = \bar{x}\), i.e. \(\bar{x}^{1/9} = \bar{x}\). This has solutions \(\bar{x} = -1, 0,\) and \(1\). The point \(\bar{x} = 0\) is a fixed point of the original function \(f(x)\) (we could also call it a periodic point of period one) and the points \(\left\{1,-1\right\}\) form a two-cycle, as we saw previously.
Now it’s your turn!
Given that \(f(x) = \frac{1}{x}\), find the periodic points of period two of \(f(x)\).
Hint: You may want to find the fixed points of \(f(x)\) first.
First, find the fixed points of \(f(x)\) by solving \(f(\bar{x}) = \bar{x}\). \[\begin{align*} \frac{1}{\bar{x}} &= \bar{x}\\ \bar{x}^2 = 1\end{align*}\] This has solutions \(\bar{x}_1 = -1\) and \(\bar{x}_2 = 1\). so these must be our fixed points.
Now we want to solve for the fixed points of \(f^{[2]}(x)\). \[\begin{align*} f^{[2]}(x) &= f(f(x))\\ &= \frac{1}{1/x}\\ &= x\end{align*}\] Setting \(f^{[2]}(\bar{x})=\bar{x}\) gives \(\bar{x} = \bar{x}\). This is true for all values of \(\bar{x}\). Does this mean that all values of \(\bar{x}\) are periodic points of period two of \(f(x)\)? Almost!
Since the points \(\bar{x}_1 = -1\) and \(\bar{x}_2 = 1\) are fixed points of \(f(x)\), they cannot also be periodic points of period two. We also need to be careful and consider the domain of \(f(x)\), which excludes the point \(x=0\) (since \(f(x) = \frac{1}{x}\) is undefined when \(x=0\)). This means that \(x=0\) cannot be a periodic point of \(f(x)\). What we are left with is that all \(x\in\mathbb{R}\) except for \(x=-1, 1\), and \(0\) are periodic points of period two of \(f(x)\). We could write the set of periodic points of period two of \(f(x)\) as \(\left\{x\in\mathbb{R}| x\neq -1,1,0\right\}\).