Robert's Mistakes

Diagram 14: Bifurcation diagram / Feigenbaum constant

Dec 15, 2013

It shows the behaviour of attracting fixed points of a dynamical system under parameter changes. It's a very popular diagram, read on and i'll tell you why that is, and some of it's secrets...

Remember diagram 12, the logistic map?

It's a simple model for restricted population growth . A low reproduction rate r lets the population converge to a single limit. Increasing r, at some point, a bifurcation happens, and in the limit the population will oscillate between two values. That's called period doubling .

The Feigenbaum constant is named due to Mitchell Jay Feigenbaum, who noticed that, during period doubling, the next period is compressed by a common factor (about 4.6692). PlanetMath puts it like this:

Feigenbaum discovered that this constant arose in any dynamical system that approaches chaotic behavior via period-doubling bifurcation, and has a single quadratic maximum. So in some sense, Feigenbaum’s constant is a universal constant of chaos theory.

Not only do all these systems exhibit the same behaviour in their period doubling, but each diagram classifies a whole range of dynamical systems, many different formulas giving the same picture.

The bifurcation diagram shows the stable orbits for all r. The funnel near r=3 happens because the convergence slows down. To illustrate that i added the time series in red and a histogram in green for an r just before 3.

What about the repelling fixed points (repelling orbits)? We can draw these, too! Each fixed point is a solution of the equation:

x = f(x) or f(x) - x = 0

It means applying f to x gives x again. We can solve this for the logistic map. More interestingly, we can solve f(f(x)) - x, f^3(x) - x, ... to find all period 2, period 3, ... orbits.

I'd like to show you a public worksheet on sagemath, but it seems that feature isn't implemented on cloud.sagemath.com yet. Maybe next time.

The image with three red curves shows f^1 (black), f^2 (blue), f^3 (red) and f^4 (in green). Period infinity happens way before the red curve. Let me tell you that while f^1 and f^2 are part of the graph for f^4, f^3 has it's own curve! Also notice the small greens curves on the far right, indicating where period 10 might be luring.

The next one (more red) shows the 1st, 2nd, 4th, and 8th iterates, each contained in all later ones. Notice how the curves align at vertical lines!

Altough the logistic map quickly escalates towards infinity for growth rates greater than 4, it seems we can continue the solution plots to the right. I did that for you (range is 3.5 - 5) in the last picture, all in red. And that makes sense. There are still repelling fixed points and those give a cantor set...

Wikipedia on the person:

http://en.wikipedia.org/wiki/Mitchell_Feigenbaum

PlanetMath on the constant:

http://planetmath.org/feigenbaumconstant

Beginner's level introduction, has images of other diagrams:

http://classes.yale.edu/01-02/math190a/Fractals/Chaos/TLBifDiag/TLBifDiag.html

Wikipedia on the diagram (a bit short):

http://en.wikipedia.org/wiki/Bifurcation_diagram

http://en.wikipedia.org/wiki/Complex_quadratic_polynomial#Critical_curves

And here's the sage code:

f(x,a) = a*(1-x)*x; 
f2(x,a) = f(f(x,a),a); 
f4(x,a) = f2(f2(x,a),a); 
f8(x,a) = f4(f4(x,a),a); 
f3(x,a) = f(f(f(x,a),a),a); 
p = implicit_plot(f8 - x, (2.5,4), (0,1), color="red", plot_points=800);
p += implicit_plot(f4 - x, (2.5,4), (0,1), color="green"); 
p += implicit_plot(f2 - x, (2.5,4), (0,1), color="blue"); 
p += implicit_plot(f - x, (2.5,4), (0,1), color="black"); 
p.show()