One of the
most
important features of turbulent, non-linear systems is that they have a
feed-back mechanism that leads to chaotic behavior. Feigenbaum
wanted
to create a mathematical feed-back system based on a quadratic
equation.
To do this he took some starting value for x, say x0. Then, he
evaluated
the quadratic equation on x0 to get a y-value, call this y0
(=f(x0)).
The feed-back was accomplished by taking the y0 value and feeding it
back
into the equation as an x-value, i.e. set x1=y0 and find y1 =
f(x1).
By repeating (or iterating) this process we get a sequence of x and y
values
as follows:
xn =
y(n-1)
yn=f(xn)
etc.
It is clear that for the regular parabola, y=x^2, the iterates of x0 will go off to infinity if x0 is larger than 1 in absolute value and will go to zero if x0 is between -1 and 1. We say that zero and infinity are attractors for this system. That is, any choice of starting point x0 will move toward one of these atrractor points as we iterate f(x). Feigenbaum wanted to study a simple quadratic where the orbit of a starting point would not "blow-up" to infinity. What he decided to study was the quadratic y = r x (1-x). Here r is a positive constant. This equation is known as the Logistic Equation. It can be used to model population growth with a limiting population. In that model r would represent a growth rate for the population.
Let's re-discover what Feigenbaum found about iterates of points using the logistic equation. First, we have to create a geometric construction that models the logistic equation. Start by opening up a new Euclidean Canvas and choosing "Show Axes" under the "Graph" menu. (For a review of how to use the analytic and graph capabilities in Geometry Explorer look here. ) We show the labels on the origin and unit point on the axes. The distance from the origin to the unit point is the basic unit of length for the cartesian coordinate system of the graph.
To create a model for the logistic equation we first move the unit point to the right to get a larger interval to use for [0,1]. Then, we attach a point to this interval by creating a point on top of the segment between the origin and the unit point. Let's color it red so that we can identify it easily. Next, we measure the x-coordinate of this attached point using the "Measure" menu. Now, we need to create a geometric object that will serve as the r parameter in the logistic equation. One easy way to do this is by creating a segment and using its length as r.
Now, we will compute a new point on the parabola with x-value equal to the y-coordinate if the new point. To do this, open up the Calculator and compute 2*Length(k) *yCoord(P) *(1-yCoord(P) ). Then, evaluate this expression and add it back to the Canvas. Now, multi-select the y-coordinate measure and this new computed value and click "Add as (x,y)" under the "Graph" menu to plot the point labeled "newP", as shown below. Then, connect these three points and if you wish color code points on the graph of the quadratic and points on the line y=x, as shown.
Since we do not really need to see the intermediate measurement steps, hide all of the y-coordinate measures and the newest computed value. Finally to finish off our recording, we will recursively loop this process. Select the new point and the length measure and hit "Loop" in the recorder. Then, hit "Stop" in the recorder.
We now have a recording that we can play back as many times as we wish to analyze the nature of the iterates of Feigenbaum's quadratic sequence. Select the new point and the length measure and hit "FF" in the recorder window. In the dialog box that pops up type in "15" for the level and hit Okay. The Recorder will play back the construction we just recorded 15 times, each time replacing the beginning point with the end point of the previous case. What you might see is the following:
It appears that all of the iterates are bunched up near an attractor point. If we change the length parameter of segment k we notice some amazing behavior for the iterates. When k is about 1.83 (2k about 3.63) we get quite a chaotic collection of orbits.
If we shrink k so that 2k is about 3.5 we see a very orderly orbit of iterates that appear to bounce back and forth between four y-values. (You may have to move x_0 around a bit to see this clearly) We would call this orbit a 4-cycle. See if you can find 2-cycles, 8-cycles, 3-cycles, 6-cycles. A very nice introduction to the mathematics of these iterates can be found in the book Does God Play Dice? The Mathematics of Chance by Ian Stewart.