MAT 335 Weekly Summary Part II: Dynamics and Julia Sets
Winter, 2003



Page numbers refer to the text.
Also look at the previous year's commentary; W2000, W2001, and W2002.


Some useful formulae

Last updated: 6 April

Click on the date to go to that section: 24 Feb. (Dynamics and Graphical Iteration), 3 March (Graphical Iteration cont., ergodic orbits, symbolic dynamics), 10 March (Symbolic dynamics, bifurcation), 17 March (Final-state diagram for the logistic function, Charkovsky's Theorem, Two dimensional dynamical systems), 24 March (Henon Map), 31 March (Complex numbers and Julia sets), 7 April (The Mandelbrot set)


Fractals Summary




  • (Week of) 24 February

    Dynamics. As an introduction, read the preface to the text, Sections 1.4 and 1.5, and the introduction to Chapter 10 (pp 507-508).
    Pages we will cover in Chapter 10; 509-515, 520-527(top), 536-567, 576-580.
    For graphical iteration, see pages 57-59 and Figures 11.8, 11.9, 11.16.

    Please look at these handouts:
    Graphical Analysis, and Experiments with the Logistic Function.

    See also the 3 Mar, 2000 commentary.

    The dynamics part of this course will be restricted mostly to discrete dynamical systems in one dimension or two dimensions, i.e., sequences {x0, x1, x2, . . . } where the xi are in R (one dimensional systems), or in R2 (two dimensional systems). (When we study Julia sets we will be considering discrete dynamical systems where the xi are in C, the complex numbers). The sequences will be deterministic, that is, they will be produced by a well-defined "rule" or "law", usually of the form xn+1 = f(xn) for some function f(x). That is, these dynamical systems are obtained through iteration of a function: x1 = f(x0), x2 = f(x1) = f ( f (x0)) = f 2(x0), . . . , xn = f n(x0), . . . (note that f n(x) denotes the n-fold composition of f, not the nth power of f). The orbit of a point x is the sequence {x0=x, x2, x3, . . . } with initial point x. The orbits of f is the collection of orbits obtained by choosing different initial points x0.

    Although these types of dynamical systems may seem 'simple' when compared to systems like the weather or stock market, in fact they show just as much 'complexity' as these other systems, and in fact a careful study of one dimensional discrete systems has provided many of the discoveries in so-called chaos theory. Most of the time we will study one particular one dimensional system defined by the logistic function; fa(x) = ax(1-x). Here, a is a parameter that varies between 0 and 4. You can check that if a is in this range, then if x0 is in [0,1], all the points x1, x2, . . . in the orbit of x0 will lie in [0,1]. And that if x0 lies outside [0,1], then xn tends to minus infinity as n tends to infinity. (You can see these properties easily with graphical iteration.) Thus, we will study orbits {x0, x1, x2, . . . } of points x0 generated with the logistic function (via xn+1 = fa(xn)) where x0 lies in [0,1]. We saw, using the VB program Time Series (see also the handout Experiments with the Logistic Function for examples), that there is a wide variety of behaviour of the orbits of the logistic function as the parameter a is varied.

    Our main tools for studying these systems are; The VB program Time Series generates time series and histograms for the logistic function, and the applet Graphical Iteration performs graphical iteration for the logistic function and its iterates. Use the applet Bifurcation to see how the shape of the graph of the logistic function and its iterates changes as the parameter a varies.

    We observed a variety of behaviour of the orbits of the logistic function (see the handout, Experiments with the Logistic Function). We saw fixed point behavior - that is, the xn approach a fixed point p of the logistic function (so fa(p) = p), periodic orbits (of various periods) - that is, the numbers xn repeat themselves after a certain period, and 'chaotic' orbits where the numbers xn seem to fill out the entire interval [0,1] (or at least some sub-interval of [0,1]). Note that if x is a periodic point of f of period k (that is, f k(x) = x so that the orbit of x = {x, x1, x2, . . . , xk-1, xk = f k(x) = x, x1, . . . } repeats itself after every k steps), then x is also periodic of period 2k, and 3k, etc. The smallest integer m such that a point is periodic with period m is called the prime period of the point. So if a point is periodic with prime period m, then the point is also a periodic point with all periods that are integer multiples of m, and the point is not periodic with a period equal to any integer less than m.
    Comment on terminology: When we call a point x a periodic point, we mean that its orbit {x = x0, x1, x2, . . . ,} is periodic.



  • March 3

    To study these behaviors systematically, we introduce some notations and definitions (see the handout,
    Graphical Analysis). Among the fixed points are the stable and unstable fixed points. If the initial point x0 is near a stable fixed point, the points in the orbit x1, x2, . . . of x0 will approach the fixed point. If the initial point is near an unstable fixed point, the points in the orbit will move away from the fixed point. (Note that a fixed point need not be stable or unstable.) We have an analytical criteria for stability of fixed points; if |f '(p)|<1, then p is a stable fixed point, and if |f '(p)|>1, then p is an unstable fixed point. For stable fixed points, the stable set (or basin of attraction) Ws(p) is the set of all points x whose orbits approach the fixed point. For periodic points we have a similar criteria for stability and instability; if x is a periodic point of period k, then the orbit of x is stable if |(f k)'(x)| < 1 and unstable if |(f k)'(x)| >1 (a stable periodic orbit attracts orbits that start nearby, while orbits starting nearby unstable periodic orbits move away from that orbit). See the handout Experiments with the Logistic Function for examples of stable fixed points and stable periodic orbits (pages 1 and 5), and unstable fixed points and periodic orbits (page 8). Note that if | (f k)'(x)| = 1 the point x may be either stable, unstable, or neither (see the Graphical Analysis handout).

    See Figure 11.9, page 595, for examples of the graphical analysis of stable and unstable fixed points, in the cases where the derivative f '(p) is positive or negative.

    Another important property of orbits of a function f(x) is their sensitivity to changes in the initial point x0. That is, if we make a small change to the initial point, say x0 + e where e is a small number, is the orbit of x0+e similar to the orbit of x0? If it is, then the orbit is 'robust' under small perturbations and we don't have to worry about reproducing the initial condition (that's x0) exactly to reproduce (essentially) the same orbit. Here the important quantity is not the error, but the relative error (see page 513).
    If the orbit changes drastically under small perturbations in the initial condition, then unless we can reproduce the initial condition (essentially) exactly, we won't be able to reproduce the orbit of x0. For some functions f(x), the orbits are extremely sensitive to changes in initial conditions. So much so that the systems appear random because seemingly identical initial conditions produce different orbits (in the long run). We saw that for 0 < a < 3.5 (or so), all orbits of the logistic function are not sensitive to changes in initial conditions (because all orbits approach the stable periodic orbit). However, for a greater than about 3.5, orbits can be very senstive to initial conditions. In fact, for a=4, errors in initial conditions roughly double with each iteration of f, so pretty soon orbits that started off very close to each other look very different.

    See page 6 of the handout, Experiments with the Logistic Function, and Section 10.1 in the text.

    To find a periodic point of f(x) of period k you can solve the equation f k(x) = x for x. However, this could be difficult, and even impossible analytically (although you could still get an approximate solution using Newton's method, for instance). It is an easy matter though to draw the graph of f k(x) and just see if it intersects the diagonal y = x. If it does, then clearly this point is a periodic point of f of period k.

    Looking at examples of orbits of the logistic function (see the handout, Experiments with the Logistic Function), we see two basic types; periodic (i.e., there are only finitely many distinct numbers in the orbit and the points just cycle through them) and 'ergodic' (i.e., it appears that there are infinitely many different numbers in the orbit). An ergodic orbit {x0, x1, x2, . . . } is an orbit that 'fills out' an interval. More precisely, if the orbit {x0, x1, x2, . . . } is ergodic on the interval I, then for any y in I and any (small) e > 0, there is (at least one) point xk in the orbit that passes within e of y; |xk - y| < e (see Section 10.3). The histograms of periodic orbits are made up of finitely many spikes, while the histograms of ergodic orbits are made up of contiuous bands that cover intervals. You can see these types of histograms when running the Logistic Movie applet (for example, when a = 3.5 you see a periodic orbit with 4 spikes, and when a=3.6 you see an ergodic orbit with two bands).

    When we see a periodic orbit for the logistic function at a particular value of the parameter a, all orbits (eventually) become that same periodic orbit (that is, the periodic orbit is stable, and its stable set appears to be the entire interval [0,1]). So there's not much to say about the dynamics (orbits) for those values of a. For those parameter values where we see ergodic orbits, it's not clear what the exact properties of those orbits are. Notice that when a=4 we see ergodic orbits that fill the entire interval [0,1], and for parameter values less than 4 where there are ergodic orbits, those orbits look a lot like 'smaller' versions of the orbits for a=4 (more about this in the next chapter). So if we could undestand the structure of the orbits for a=4, then we could understand the structure of any ergodic orbit (for any value of a). To do this we apply the technique of symbolic dynamics.

    Symbolic dynamics (Section 10.6)
    We study the logistic equation for a=4; f(x) = 4x(1-x). Looking at the time series of orbits of f(x), we see that they all fill out the interval [0,1]; it appears that there is no 'order', i.e., that there are no periodic orbits. However, we know that there certainly are because if you draw the graph of f k for k = 1, 2, 3, . . . you see that there are many places where the graph of f k intersects the diagonal y=x (see the diagrams included in Homework #4), so these points are period k points (and so generate orbits of period k - of course some of these points may not be prime period k, but some are). We also notice from the graph of f k that the slope of f k at any one of these points of intersection with y=x is greater than 1 in absolute value, so none of these periodic points are stable. So in fact f(x) has infinitely many periodic points, of all periods, and all of them are unstable. So if you wanted to observe one of them experimentally, i.e., numerically with a computer (eg. time series), you would need to know very well (almost exactly) what these points are. One way to do that is to solve the equation f k(x) = x - but this means finding a root of a 2 k -1 degree polynomial, and if k > 2 there is no analytic formula for them so you would have to estimate them by solving with Newton's method (for example). We can find the exact values of these periodic points another way - using symbolic dynamics. Symbolic dynamics is a very useful technique for studying complex systems.

    To use symbolic dynamics to study the logistic equation, we first start with the tent transformation T, and to study the tent transformation we study the map T ~ which acts on binary sequences. The map T ~ was defined to mimic the action of T, but on the binary representation of numbers. We saw that T ~ has a shift or a shift-then-conjugate action on sequences (note that the text uses the term dual instead of conjugate). So to find periodic points of T ~ we look for (binary) sequences that repeat themselves after k iterations of T ~. Then we convert this sequence to a number x - and this number then is a periodic point of T. Finally, to obtain a periodic point for the logistic function we map this x to the number x'= h(x)= sin 2(pi*x/2). Then x' is a periodic point of f. See Table 10.43 on page 562.

    See the March 10, W00 commentary for more details.

    Using this method we found (or we will find next week) the period 2 point 0.011(0011) of T ~ (remember that (abcd) means repeat the pattern abcd), which converts to the number 2/5 ( i.e., [2/5]2 = 0.011(0011)) which is a period 2 point for T, which in turn converts to the period 2 point h(2/5) = 0.345491502814.... for f(x) (check!).
    You can check that 0.00011110(00011110) is a period 4 point of T ~, and since [30/255]2 = 0.00011110(00011110), 30/255 is a period 4 point of T (check!), and so h(30/255) = 0.0337638852976 is a period 4 point of f(x) - you can check this with the VB program Time Series or the applet Graphical Iteration. If you do you will also see that this orbit is indeed unstable.
    In general, a binary sequence that is a period k point for T ~ will be made up of a repeating pattern (of 0' s or 1' s) of length k or 2k. (If the dynamics on the sequences was just shift left (like the shift operator described on page 549), then of course any period k sequence would be made up of a repeating pattern of length k and visa versa, but the possibility of conjugating the sequence too (as you shift it) makes it possible for a period k sequence to be made up of a repeating pattern of length 2k and not of length k ; see some of the examples we did. Consequently, there are binary sequences that are made up of a repeating pattern of length k but are not period k points of T ~.)

    **************************

    I talked a little about the notion of a random sequence (on an interval I, so all the points x n are in I ) that is defined by a continuous distribution function v(x). See the handout, Random Sequences for details. That is, the numbers xn in the sequence are picked randomly according to v(x). More precisely, the probability that xn will be in a (little) interval Id of width d centred at the point z is approximately d v(z) (the precise formula is on the handout). The point I was emphasizing was that ergodic orbits and random orbits share the property that their histograms (or distribution functions v(x)) are continuous across the interval I, but that the order that the points appear is vastly different between the two. For instance, if {x0, x1, x 2, . . . } is an orbit of the logistic function f 4(x), then if you plot (xn+1, xn) the points will fill out the graph of f 4(x) (because xn+1 = f 4(xn); see the middle figure of Figure 12.61, p. 747 ). But if {y0, y 1, y 2, . . . } is a random sequence, the plot of the points (yn+1, yn) will not lie on a curve, they will be spread out all over the place (see the top figure of Figure 12.61 ). This is because given a number yn, the next number yn+1 in the random sequence can be any number in the interval I, and so above the number yn+1 will be points from all over the interval I. See also the discussion in Section 6.4 of the text (in particular, pages 333-337).

    *****************************

  • March 10

    Using symbolic dynamics (for the map T ~ and then transfering those results to the tent transformation T and then to f4) we showed that An important observation in regards to the ergodic orbits is that if x is a number such that [x]2 contains every possible (finite) string of 1 's and 0 's, then the orbit of x under the tent transformation T will pass arbitrarily close to every point in [0,1] (look at (T ~) k ([x] 2) to prove this; that is, by shifting or shifting + conjugating [x]2, you can get it to match the first n digits of any binary string, where n is arbitrary). That is, for any y in [0,1] and any (small) e > 0, there is a k such that |x k - y| < e for some x k in the orbit of x under T. This implies then that the point z = h(x) has an ergodic orbit for f4.

    To prove that periodic orbits are dense, we needed the concept of the parity of a finite string of 0 's and 1 's. Consider the string c = c1c2...ck. Then to determine its parity we look at (T ~)k(c1c2...ck0) (that is, T ~ iterated k times). We say that c preserves parity if (T ~)k(c1c2...ck0)=0, and that c reverses parity if (T ~)k(c1c2...ck0)=1. So, if an (infinite) binary sequence a begins with the string c, then applyingT ~ k times to a will result in the string ak+1ak+2.... if c preserves parity, while if c reverses parity then applying T ~ k times to a results in the sequence a*k+1a*k+2.....

    See the
    10 March, W00 commentary.

    We discussed the Shadowing Lemma (see page 577,588 and 10 March, W00 commentary). This addresses the question, "If the orbits are very sensitive to errors in the computation, then do numerical calculations give any information at all about the true (exact) dynamics?" Under certain contitions, numerical orbits - even though they are not true orbits of the equation - DO give information about the true orbits.



    Bifurcation and Final-State Diagrams
    Pages covered in Chapter 11 for this topic: 585-597, 603-605, 608-612, 616-618, 625-627, 636-638.

    We recalled the period-doubling bifurcation and saw why this happens by looking at the graphs of fa and it compositions as a varies (eg. Figure 11.20). (A period-doubling bifurcation is when a period k orbit changes into a period 2k orbit as a is varied; see the Experiments with the logistic function handout.)

    The first period-doubling bifurcation of the logistic function occurs when a=3; the fixed point (period 1) 'disappears' (i.e., becomes unstable) and a period 2 orbit appears (so is it stable). Let's calculate the derivative of the logistic function at the fixed point (see also the handout Graphical Analysis, page 4). fa'(x) = a-2ax. The non-zero fixed point is at p = (a-1)/a (solve fa(p) = p), so the derivative at the fixed point is fa'(p) = a-2ap = 2-a . We see then that |fa'(p)| < 1 for 1 < a < 3 and |fa'(p)| > 1 when a > 3. We verified this behavior with the Graphical Iteration applet. The fixed point is near 2/3 for a near 3. Taking initial points near the fixed point, we observed the orbit spiraling towards the fixed point when a < 3, and spiraling away (and towards the period 2 orbit) when a > 3.

    The appearance of the period two orbit 'from the period 1 orbit' can be understod by examining the graph of f 2 as a increases through the value 3 (see page 5 of the handout Graphical Analysis and Figure 11.20 in the text). Using the applet Bifurcation we could see how the graph of f 2 crosses the diagonal y = x just once (near 2/3) for a <3, but three times when a increases past 3. Furthermore, the 2 new fixed points of f 2 split off the (period 1) fixed point. Thus, as a increases through 3 a period 2 orbit appears 'from' the period 1 orbit (recall the time series and histograms in the Experiments with the Logistic Function handout, pages 1, 3 and 7).

    A similar thing happens to the period 2 orbit as a increases past the value 3.4494. The period 2 orbit changes from stable to unstable just as it 'splits' into a period 4 orbit (see the Experiments with the Logistic Function handout page 1, and Figure 11.29 on page 625). (The period 2 orbit does not really split; it is still there but it is 'invisible' because it has become unstable.) When we examine the graph of f 4 with the Bifurcation Applet as a increases past 3.4494 we see the same thing happening as for f 2 near a = 3; near each of the 2 period 2 points (the 2 fixed points of f 4) the graph of f 4 changes from crossing the diagonal y = x just once to three times. Thus, 4 new period 4 points appear (they make the new period 4 orbit).

    The process continues as a increases. We observe a sequence of period-doublings. Each period-doubling can be understood by examing the graph of f 2k for appropriate k. And each time a new orbit appears (so is stable), the 'old' one becomes unstable (so disappears). As you can see, this period-doubling will occur for any function ga(x) = ag(x) whose graph looks like the graph of the logistic function (i.e., one peak). As the parameter a increases we would see a sequence of period-doubling bifurcations. This is the universality of period-doubling bifurcations.


    One way to visualize the behaviour of the periodic points as a varies is to draw a bifurcation diagram. This is a plot of the periodic points pa vs a; see Figure 11.17 and page 6 of the handout Graphical Analysis. The final-state diagram is a plot of the 'final-state' of an orbit vs a (see page 603). This is similar to the bifurcation diagram, but only stable periodic points are plotted on a final-state diagram, as are ergodic orbits. The final-state diagram is computed experimentally, i.e., with a computer, and for the logistic equation shows a wealth of interesting structure (Figure 11.5). We will spend the next lecture studying it and explaining some of that structure.

    We also discussed universality and Feigenbaum's constant (see pp 611-618, 625-627 in text). If g is any 'unimodal' function defined on the interval [0,1] (unimodal means 'one bump' - see page 616), then the family of functions ga(x) = ag(x) look similar to the logistic family fa(x) = ax(1-x). Increasing the value of a makes the 'bumps' in the graph of the iterates of ga larger, and so we expect there to be period-doubling bifurcations as with the logistic family. In particular, we looked at the function ga(x) = ax2sin(Pi*x) and its iterates and saw why it would go through period doubling bifurcations (go to this page to see the graphs). This also explains why the final-state diagram for this function looks similar to the final-state diagram of the logistic function (Figure 11.23). In fact, the final-state diagrams of any unimodal family of functions look like the final-state diagram of the logistic family.

    So although it is no mystery why all unimodal maps go through period-doubling bifurcations like the logistic function, it is remarkable that the rate at which unimodal maps go through the period-doubling bifurcations (i.e., the distance (in a) between one bifurcation and the next) is the same for all such families of function. This rate is defined as the Feigenbaum constant d = 4.699.... and universality refers to this common rate of bifurcation. A great many diffferent mathematical and physical systems exhibit such universal behavior (see page 618).


    See the 17 March, W00 notes for more commentary on these topics.


  • March 17

    Final-State Diagram of Logistic Function

    We studied the structure of the final-state diagram of the logistic function (see Figure 11.5, p 591). For a values less than the 'Feigenbaum point' s infinity = 3.5699.... (p.612), the logistic family f a(x) = ax(1-x) goes through a series of period-doubling bifurcations at a values b1=3.0, b2=3.449, b3=3.544, . . . . For a values greater than sinfinity, the final-state diagram is made of ergodic behaviour or periodic orbits. The main features here are; We can explain most of these features (see the handout,
    Notes on the Logistic Function - Self-Similarity and Universality). The self-similarity of the final state diagram for the logistic function can be explained by studying the iterates of f a for various values of a (see pages 625-627 and 638). In particular, within the periodic 'windows' of the final state diagram (eg., the period 3 window near a = 3.85) we see replicas of the entire final-state diagram (see Figure 11.41, p637). So to understand the structure inside the period 3 window near a = 3.85 for example, we look at f 3 at a near 3.85; Figure 11.42. The graph of f 3 intersects the diagonal line at three places; near x=0.15, x=0.5 and x=0.95. At each one of these places the part of the graph of f 3 resembles a miniature graph of f, and as a varies over the range 3.83 to 3.85, those pieces of f 3 resemble the graph of f as a varies from 2.8 to 4. Note too the invariant box surrounding each of those pieces of f 3 (Figure 11.42); if the initial point x0 lies inside the invariant box, then all iterates under f 3 remain inside those boxes (you can check this for yourself using the Graphical Iteration applet). Thus, we see why there are miniature final-state diagrams inside each period window. See the page, The Self-Similarity of the Logistic Function. The shadow lines can be explained by the 'squeezing' effect of the top of the parabola on points near 1/2; see page 3 of the Self-Similarity of the Logistic handout, and Figures 11.38, 11.39. The shadow lines can be computed by plotting the graphs of the iterates of fa(va). See: plots of the shadow lines of the logistic function.

    I ran some histogram movies of the logistic function with the Logistic Movie applet. We saw how the shadow lines appear as spikes in the histograms (see also for example Figures 11.35, 11.36 p631,632), and we noticed how periodic windows would appear and then quickly 'disappear' through the period-doubling route to chaos. Two windows we looked at were a period 3 window near a = 3.838 and a period 4 window near a = 3.9604 (this last one is very thin, so set delta a to be smaller than 0.00005 on the applet).


    We studied Charkovsky's ordering of the integers (p 639) and Charkovsky's Theorem: If f has a point of period k, then f has a point of period m for every m such that k >> m in the Charkovsky ordering.

    See also the 16,19, and 23 March commentaries from W01, and the 17 March commentary from W00.


    Let's say a few words about the logistic function for paramete values a <= 0 and a > 4. First, if a=0 then all orbits are just {x0, 0, 0, 0, ... } so nothing happens there. If a < 0 the logistic function goes through a series of period-doubling bifurcations (as a decreases), and so has a final-state diagram similar to the one for 1 < a < 4. Note that for a < 0 the 'invariant box' (or 'essential square') changes with a (similar to what happens for x2 + a; see Figure 13.43). See the Logistic function for a<0 page for graphs.

    For a > 4 the top of the parabola is above the line y=1, and so orbits that start in [0,1] can 'escape', i.e., they can go off to - infinity. By 'backward graphical iteration' we can determine which points in [0,1] have orbits that remain inside [0,1] (i.e., do not go off to - infinity). We see that this 'prisoner set' is a Cantor set! See Figure 11.50 (page 647) and Section 13.8.

    Two-dimensional dynamical systems

    See the handouts Two Dimensional Dynamics and the Henon Map, the 21 March commentary from W00, and the 26 March, W01 commentaries.

    A two dimensional discrete dynamical system is defined by a function F(x,y) of two variables x and y. That is, F is a function from R2 to R2. An orbit of a point z = (x,y) is the sequence {z, F(z), F 2(z), F 3(z), ...}. We want to describe the behavior of orbits of F. There may be fixed points p; F(p) = p, and periodic points ; a point p is periodic of period k if Fk(p) = p. Periodic points (and their orbits) can be stable (i.e., attract nearby orbits) unstable (i.e., repel nearby orbits), or neither. The derivative ( = Jacobian matrix of F) of F or its iterate Fk at the periodic point can tell us the stability of the periodic point, just like in one dimension.

    Some examples of two dimensional dynamical systems are the linear ones; F(x,y) = A(x,y) where A is a 2 by 2 matrix. For any two dimensional dynamical system, the phase portrait is a plot of the orbits of F in the xy-plane (so for example, the orbit of a fixed point would just be the single point p, and the orbit of a periodic point would just be k points, but in general an orbit would be an infinite sequence of points spread out over the plane).

    A remark about the Jacobian J(F)[x,y] of a function F at the point (x,y). The Jacobian is the matrix of partial derivatives of the function; see page 2 of the handout 'Two Dimensional Dynamics' and page 666 in the text. Note that the Jacobian is a matrix that depends on the point (x,y). In addition to giving information about the stability of periodic points of F (as mentioned above), the absolute value of the determinant of the Jacobian, |J(F)[x,y]|, tells you how the function F changes area: If |J(F)[x,y]| < 1 then F shrinks area near the point (x,y), and if |J(F)[x,y]| > 1 then F enlarges area near the point (x,y).




  • March 24

    See the handout
    Experiments with the Henon Map. Read Section 12.1 in the text and the 12 March, W00

    The Henon map is a function H(x,y) defined on R2; it takes the point with coordinates (x,y) to the point with coordinates H(x,y) = (y +1-ax2, bx), that is, the x-coordinate of the point H(x,y) is y +1-ax2, and the y-coordinate of the point H(x,y) is bx. There are two parameters a and b which, when they are varied, produce different dynamics (orbits) of H. An orbit of H is a sequence of points (xn, yn) = Hn(x0, y0) where (x0,y0) is the initial point of the orbit.

    As with any discrete dynamical system (in any dimension), the main object to study are the periodic points (orbits) and their stable sets. We also distinguish invariant sets. These are sets A that remain inside of A under iteration by H: H(A) in A. Periodic points satisfy the equation Hk(x,y) = (x,y). The time series of orbits of a two-dimensional system are points in the plane R2. A fixed point has a time series which is just one point (itself); a period two orbit has a time series which is just two points, a period 3 orbit is just three points, etc. An orbit which is not periodic would have a time series of infinitely many (different) points. These points could be distributed throughout the plane in an arbitrary manner. One can look at the histograms of orbits by plotting either the xn or yn coordinates of the points in the orbit vs n (see the handout, "Experiments with the Henon Map").

    The Henon map goes through a series of period-doubling bifurcations when b is fixed and a varies: see the handout "Experiments with the Henon Map". As we saw with the logistic function, the time series of orbits split (double) at every bifurcation point. We can make a final-state diagram (and bifurcation diagram) for each coordinate x and y. It turns out that for the Henon Map, for b = 0.3 and a varying, the final-state diagram (for x) looks very much like the final-state diagram for the logistic function (seee Figures 12.15 and 12.16 on pages 675, 676). We see self-similarity in the final-state diagram, period-doubling branches, ergodic orbits (they fill out the 'bands'), and periodic windows within these ergodic bands. And in Figure 12.16 we see the 'shadow lines' that we noticed in the final-state diagram of the logistic function. Using our knowledge of how these lines arose in that case, we can understand where the shadow lines come from in the Henon final-state diagram. To do this we need to look at the equation determining the dynamics of the x coordinate. Going back to the definition of H(x,y), we see that xn = f(xn-1) where f(x) = -ax2 + bx - 1. Where this quadratic f has its vertex is where the xn are 'squeezed'. By following the orbit of these squeezed points we would trace out the shadow lines.

    For parameter valus near b=0.3, a = 1.4 the Henon map has a "strange attractor" S. This set S is obtained by iterating H(A) where A is a certain invariant set in R2: see pages 661 - 665. Orbits on S behave chaotically, i.e., they exhibit sensitive dependence on initial conditions and they 'fill out' the attractor S (so by plotting just one orbit in S we get a picture of the entire set S). The attractor S is 'strange' because it has a fractal-like structure; see Figure 12.12. See the applet Henon Movie for an animation of an orbit on the attractor. The basin of attraction of S is a large set in R2 that stretches out to infinity (Figure 12.8). The orbit of any point in this set approaches S, while the orbit of any point outside this set goes off to infinity. So the long-term behavior of orbits of H is determined by the set S. This strange attractor is actually an infinitely long curve that has been stretched and folded infinitely many times by H (see Figures 12.3, 12.4) to give it its fractal-like structure. A point on this curve moves along the curve under iteration by H, so as far as the point is concerned it is moving along very simply under iteration by H by following this (one dimensional) curve, but this curve has such a wild and complicated shape (in two dimensions) that the dynamics of the orbit appear very complex to us (who are observing it in two dimensions). This is an example of how geometry determines the behavior of dynamics (this is a common theme in dynamical systems).



  • March 31

    Julia Sets

    Pages in text covered: 776-785, 787, 789-799, 820-825, 826--832. See also the handout,
    Notes on Julia Sets and the Mandelbrot Set.

    After a brief introduction (review) to complex numbers (see handout Complex Numbers and Section 13.2) we discussed complex dynamical systems. These are discrete dynamical systems obtained by iterating a complex function f(z), where z (and hence f(z)) are complex numbers. Complex numbers can be thought of as two dimensional real numbers because we can represent them as a vector z = (x,y) where x is the real part of z and y is the imaginary part of z (we write z = x+iy). So complex dynamical systems can be thought of as two dimensional real dynamical systems.

    We ask the usual questions about a complex dynamical systems: What are the periodic orbits? Or more generally, the invariant sets? What are their basins of attraction? The point infinity is always an attracting fixed point of f(z) if f is a polynomial. The competition between the stable (attracting) periodic orbits define the boundaries of their basins of attractions. These boundaries can have a very complex structure and usually are fractal-like.

    The complex quadratic map is the function qc(z)= z2+c where c is a complex parameter. This function is the complex version of the logistic function. The prisoner set Pc are those complex numbers whose orbits remain bounded under iteration by qc, and the excape set Ec are those points whose orbits go off to infinity (so they are in the basin of attraction of infinity). The boundary of the prisoner set is called the Julia set and is denoted by Jc. We study, then, the bifurcation diagram of qc(z), in the sense that we study how the prisoner set changes as the parameter c changes (and so how the Julia set changes). For polynomials f(z), the Julia set is either connected (one piece) or totally disconected (dust).

    Drawing Julia sets of qc either by encirclements (see pages 795-797) or by the chaos game using the nonlinear IFS W = q-1= w1 U w2 (see pages 820-824 and the handout, Notes on Julia Sets and the Mandelbrot Set).

    Some facts about Julia sets that are useful to know (these facts apply to the Julia sets of any polynomial zn + c.)

    Chaos game algorithm for drawing Julia sets. We now describe another algorithm for drawing Jc (see Section 13.7). Suppose w = qc(z). Then (qc)-1(w) = z. However, (qc)-1 involves taking the square root so we expect two solutions to (qc)-1(w) (the only time there is only one solution to (qc)-1(w) is when w = c; then the only solution is 0). If w1(w) = sqrt(w-c) and if w2(w) = - sqrt(w-c) = -w1, then (qc)-1(w) = w1(w) and (qc)-1(w) = w2(w). So, if z1 = w1(w), z2 = w2(w), then qc(z1) = w and qc(z2) = w. We see that z1 and z2 are the backward images (or preimages) of w under qc.

    So we can define an "IFS" by W = (qc)-1 = w1 U w2 like we did before for drawing fractals. This time the transformations w1 and w2 are nonlinear transformations instead of affine ones. Now, points z in the escape set Ec move away from Jc under iteration by qc (since they go off to infinity), so they move towards Jc under iteration by (qc)-1. If the prisoner set Pc has an interior (that is, has a nozero area so that Pc is not just Jc), then usually there is a stable periodic orbit inside of Pc and in that case Pc is the stable set of this periodic orbit, and since points move towards that orbit under interation by qc, they move away from the orbit under (qc)-1 and towards Jc. However, in some cases when the prisoner set Pc has an interior there may not be any stable orbit inside. In this case there is an orbit that is neutrally stable ("parabolic"; see for example Figure 14.20) - here |(qc)k ' (z)| = 1. So in this case we can't say that the IFS W is contracting on Pc. (Remark: We see then that the Julia set Jc are those points that feel the attraction of infinity (which is always an attracting fixed point of qc) and the stable periodic orbit equally (points outside of Jc feel the attraction of infinity more strongly while points inside of Jc feel the attraction of the stable periodic orbit more strongly); the Julia set Jc is the place where these two "forces" are in equilibrium). So points inside of Pc (except for the stable periodic orbit itself) move away from the stable orbit and towards Jc under iteration by W = (qc)-1. Therefore, W is a contraction on R2 (we identify the complex numbers C with the plane R2 via z = (a,b) where z=a+ib), and so we can appeal to the Contraction Mapping Principle to conclude that there is a unique fixed point of W, and that if A is any (bounded) subset of R2, then W n(A) tends towards this fixed point as n tends towards infinity. Now what is the fixed point of W? By fact (1) above, the Julia set Jc is. Thus, we can iterate this IFS on (almost) any set to obtain an approximation of Jc; see Figure 13.35. w1 and w2 also give us a way to define addresses on Jc (see problem 10 in Homework #6).

    Now that we have defined an IFS for the Julia set, we can draw it using the chaos game algorithm. The chaos game algorithm for drawing Julia sets is; See Figure 13.36. To see an actual code implementing this algorithm, see the MAPLE program available in the Julia movie page. The applet Julia Set Movies uses the chaos game algorithm to draw Julia sets.

    From examples (see Figure 13.36 and the Julia sets drawn by the Julia Movie applet), we see that this chaos game algorithm doesn't always draw the Julia set well. This is related to the same problem we encountered with the chaos game algorithm for drawing fractals (some addresses on the Julia set have a very low probability of getting game points). It seems that "corner points" of the Julia sets are not drawn very well with this algorithm. There is a modified chaos game algorithm, called the Modified Inverse Iteration Method, that draws the Julia sets much better (see Figure 13.36). This algorithm is described in the book, The Science of Fractal Images.

    The self-similarity of Julia sets can be described by qc. That is, images of small parts of Jc under the transformation qc will cover the whole Julia set. This is the "nonlinear" self-similarity of Julia sets. See Figure 13.37.

    Newton's method for finding zeros of a function f(x) (i.e., finding points y such that f(y)=0) consists of constructing the sequence {x0, x1, x2, . . . } so that the xn converge to a zero of f(x) as n tends to infiniy. The sequence is obtained from the discrete dynamical system F(x) = x - (f(x) / f '(x)), that is, xn+1 = F(xn). This method also works for the complex function f(z); the complex discrete dynamical system is F(z) = z - (f(z) / f '(z)). The function f(z) may have many zeros; depending on where the initial point z0 is, the sequence zn = Fn(z0) will converge to different zeros, or it may not converge at all (the orbit will be "chaotic"). Each zero has a basin of attraction (each zero is a stable fixed point of F(z) - check!). The Julia set of F(z) is the boundaries of these basins of attraction and are usually extremely complicated; see Figure 13.4, and page 4 of the Diagrams of Julia and Mandelbrot Sets handout. See pages 773 - 775 in the text for a discussion of Newton's method applied to the function f(z) = z3 -1, so F(z) = z - (z3-1 / 3z2). Here there are three zeros located on the circle of radius 1 (in the complex plane) equally spaced around the circle beginning with the number 1. The Julia set, Figure 13.4, has this symmetry.


    I passed around the books A First Course in Chaotic Dynamical Systems by Robert Devaney (on reserve at Gerstein), The Beauty of Fractal Images by H.-O. Peitgen and P.H. Richter. These two books have many colourful images of Julia sets. I also passed around the book The Science of Fractal Images by M.F. Barnsley et. al. This book describes in more mathematical detail some of the topics discussed in this course including drawing Julia sets and the Mandelbrot set.

    See also the March 28, W00 commentary and the March 29, April 2, W01 commentary.




  • April 7

    The Mandelbrot set

    Pages covered in the text: 841-846, 855-858, 862(bottom half) -870(upper half; Fig 14.23), 878-879, and all the figures related to those pages.
    See also the handouts
    Notes on Julia Sets and the Mandelbrot Set, and Diagrams of Julia and Mandelbrot Sets.

    Topics covered (details can be found in the 7 April, W00, commentary and the 6 and 9 April, W01, commentary);
    See the applet Julia Sets Movie for movies of Julia sets as the parameter c moves inside and outside the Mandelbrot set. Here you can see the Julia set break up into dust as c moves from within M to outside M.

    Although the Mandelbrot set is extremely complicated (it has been conjectured that the boundary of the Mandelbrot set has fractal dimension 2!), it is easy to understand its large-scale features, that is, the 'bulbs' that make up the bulk of it (the Mandelbrot set is made up of 'bulbs' of various sizes and hair-like extensions from the boundaries). We can predict the bulbs by noting that whenever q c(z) has a stable periodic orbit, then Pc is non-empty (i.e., has non-zero area). Thus, in this case J c is connected (it can't be dust!) and so c is in M. The large heart-like main body is due to c-values where q c(z) has a stable fixed point. The large circular 'head' attached on the left side of the main body is due to c-values for which qc(z) has a stable period 2 orbit. The other bulbs can be found by determining the c-values for which qc(z) has a stable period n orbit for each n = 3, 4, 5, ... . See pages 862-866 in the text, and the 7 April, W00, commentary.

    We can also define the 'Mandelbrot sets' for polynomials z d + c for d = 3, 4, 5, . . . . That is, they are the sets of c-values for which the Julia set of z d+c is connected. These have similar properites as the Mandelbrot set for d = 2 in that they have symmetry and have some sort of self-similarity (and they probably also act as 'road maps' for the Julia sets of z d + c). See the Mandelbrot Sets page for examples. We could also describe the main features of these Mandelbrot sets (eg., their 'bulbs') by determining when z d + c has stable periodic orbits as we did above.

    I demonstrated the XAOS software that draws Julia sets and the Mandelbrot set (and other sets). You can find this software at the XAOS website: http://xaos.theory.org. We can demonstrate the similarity of Julia sets Jc and regions near c in the Mandelbrot set (cf. Section 14.2) by zooming into parts of the 'bulbs' on the Mandelbrot set and then use the Fast Julia Mode (in the Calculation menu) to draw the Julia set for that c. We demonstrated this for the other types of Mandelbrot sets too (i.e., for z d + c for d = 3, 4, 5, 6).

    We watched part of the video, "Fractals: An Animated Discussion" (available at the Audio-Visual Library, call number 002948). Another video was "Mandelbrot Sets and Julia Sets" that was produced by Dr. John Hubbard's Dynamical Systems Laboratory at Cornell University in 1990 (contact: Art Marix, P.O. 880PC, Ithaca, NY, 14851. Try also Matrix Editions Publishing; www.matrixeditions.com).

    See also the 7 April, W00, commentary and the 6 and 9 April, W01, commentary.



    To be continued....





    Back to the top

    Back to the MAT 335 Home Page