The essays

Previous essays

Fractal FAQ

Chaos in Discrete Dynamical Systems


Feigenbaum fractal

Mandelbrot:how to

L-Systems tutorial

Chaos in a driven pendulum

Turbulent landscapes

Chaos from Nonlinear Mappings

Dynamical systems lecture notes

Fractals, chaos, symmetry, physical laws and computer programs
The Questions The essays

How Nature is described by mathematical laws

Before we "discover" the law behind a physical phenomenon,we have first to "measure" it. For example,only after the measurements from Tycho Brahe, Kepler was able to discover the three laws about planetary motion. Measurements are made using numbers,so the laws that describe physical phenomena are mathematical. The general way to do it is by giving a set of differential equations like the famous f=ma. Unfortunately using these differential equations to get information about the physical systems is rather tricky. The complex formalism obscures many important points like:

Chaotic attractors,stability and life processes

If we consider our body as a dynamical system, we can say that it is described from "a lot" of parameters and that, since we still survive, these parameters were always inside some "survival" range.

But how we manage,during our life, to keep these parameters inside the survival range? An obvious way is a direct control from our brain:for example, the body temperature is raising too much and you go in the shade or take a pill, etc.

This kind of control is in the case of our body exceptional:normally our body is going to take care of itself, with no apparent necessity of conscious control.

There is the possibility that this capability of selfcontrol is connected to chaotic attractors regulating some basic life processes. Chaotic attractors have in fact this "magic" capability of attracting the variables describing the process in the range of values where the attractor lies.So the values are random inside this "box" but are always inside it, no matter what happens.

You can have a first hand idea on how this happens by looking at an interesting phenomenon that sometime happens in water streams. If you have a rubber ball or a plastic box in the water flow of a stream it will move in a unpredictable way until it either get caught on the river side, or arrives at the sea. But if you have a small waterfall (because for example you have a step in the stream bed) it can stay forever moving always in the same position. It get caught in a chaotic attractor at the end of the fall, a kind of vortex where it spins and moves always in the space of few inches. What we have is a precise control of the object position, with no external intervention.

Another example of such "dynamical stability",you can experiment yourself at home with a hair dryer and a ping-pong ball.Keeping the hair dryer vertical,the ball floats in the air flow moving always in the same position.

Do some life processes control themselves in the same way? For example, the heart beat?

Newton's factory

I have often wondered how Newton would have tackled physics problems now with our powerful graphics workstations. For example ...

Newton is informed that astronauts have discovered on the moon an authomatic alien factory perfectly working. This factory seems to be working since millions of years without ever stopping. We want to know the law describing how it works.

It seems that it is possible to describe the factory's state at every instant with only two variables(you can think of these as amount of some essential product):let's call them x and y. These have always been in the range -4,4 otherwise the factory would have stopped.

Newton,having a personal computer, thinks about an algorithm that computes x and y at time n knowing its values at time n-1 i.e. an iteration:

   xn=f(xn-1,yn-1)  (1)
where f and g are two algebraic formulas containing the four basic operations and some constants.

To start with, Newton asks if it is easy to find formulas of this kind that generate values for x,y always in the allowed range. He starts trying and, you perhaps guessed it, discovers that almost any formula which is not trivial ,works! You aren't convinced? Then try to invent a new formula, put some variable parameters and let the computer try different sets of initial points and parameters values generated randomly. After some trials, the computer will find the right combination of initial values and parameters. Of course it is difficult to check that the iteration will continue always in the allowed range for millions of years,but we are enough sure that, if it is still inside this range after 1000 iterations, probably it will be trapped there forever.

At this point Newton decides to exploit the power of his computer,that during the night has nothing to do. Why not let the computer generate directly the random formulas by chance, trying them one by one and keeping only the good ones? Newton,being also a good programmer,writes a program that generates algebraic formulas from sets of random numbers. He puts the computer to work and the following morning has the satisfaction to look at the first series of formulas "discovered" from the computer.

   x = x*y+a*x-y      with a=0.357057         (1)
   y = x+y

   x = a*y       a=-0.999881                 (2)
   y=  x + b*y   b = 0.09160503

   x = -y                                     (3)
   y = x*x*x -x -y

   x = a*x/y -y    a=.000496                   (4)
   y = x + y +b    b=.510406
More than 100 formulas and some much more complex than these ones. How can he make sense of them? Well, the computer he owns has good graphics possibilities and it is very easy to generate images from these formulas. You can interpret the pair of numbers as points in a plane and generate wonderful images in the window -4 <x,y<4. Newton does some graphics programming and the formulas become extraordinary creatures that inhabit the computer screen. Many kinds of spirals, chaotic attractors and also attractors which are in the same time chaotic and symmetric.
Now things start making sense but unfortunately the image of a single orbit doesn't give a complete representation of a formula (a single formula will generate a different orbit for each initial point).
Newton thinks a little bit about this problem and finds a solution shown in the following pictures where you have a complete representation of the chosen formula.In fact,all the points connected to the same orbit are represented with the same color. The white parts correspond instead to initial values that have orbits which go outside the allowed range.Each formula will have its peculiar graphic signature: sometimes formulas which have similar single orbits will produce completely different images if represented in this way.

Now things start to clarify. The point that represents the behaviour of the factory,being forced to loop in the square of allowed x,y values, does this producing an extraordinary dance sometime symmetric,sometime random but always guided from the mathematical formula or better from how such a formula sees the space in the given window. It is this structure which is shown in the pictures.

Nature as computer

It is possible that Nature behaves as a computer and that its laws are computer programs?Of course we know that nature laws are mathematical. Computer programs are simply mathematics in action. So,there is nothing new in the statement that Nature behaves like a computer.

You can think of scientists as people making measurements and then searching an algorithm that reproduces the values of these measurements and is also able to compute future values.

But the fact that nature's laws are computer programs can "explain" two important properties of the mathematical laws describing Nature:symmetry and chaos. Up to now it was very difficult to explain why all physical laws presented symmetry and sometime chaos. In fact,if these laws are computer programs we can explain it.

It seems that if there are two possible programs to regulate some phenomena, God like almost all programmers, prefers the shortest program. Now the shortest possible programs are those containing recursive procedures. Are these recursive procedures that generate spatial symmetries. Look,for example, how a tree is built in a computer. A tree is defined by drawing the stem ,then turning to right and drawing a smaller tree, then to left and drawing another similar tree. You will say that this tree is not realistic. But,in fact,with only a slightly more complex algorithm,computer programs are able to sinthesize many 3D plants similar to the real ones.

In conclusion,spatial and fractal symmetries are present every time one wants to spare on the length of the algorithm by using a recursive procedure (we have a fractal symmetry when something remains the same at any scale:for example a tree branch is equal to the whole tree).

What about chaos? If we consider physical phenomena in time(i.e. their temporal development) they will be described from one or more variables. Let's consider just one variable x. The simplest algorithm that describes how this variable changes in time is as usual a recursive procedure:

This is an
iteration. To model natural phenomena we are interested in iterations which are non trivial(like those that make x constant) or impossible (like those that make x infinite). The simplest such iteration is:
x = c*x*(1-x) 
The Feigenbaum diagram gives a complete portrait of what happens when we change x. At some values of c it starts looping between 2,then 4,8,16 and then infinite values,i.e. it becomes chaotic.

In conclusion, to keep algorithms short , we use iterations and these present chaos. We can try to understand what is the origin of this chaotic development. In mathematics exists this abstraction which are the real numbers:abstraction because they have infinite precision and need infinite information to be represented.The numerical result of physical measurements is of course finite like the numbers in the computer. At first mathematicians and physicists didn't understand that this little difference could cause chaos.We understand now it with the computers because they use,like nature,limited precision numbers.

But what happens exactly? Let's start with ideal (infinite) numbers. To each real starting point it corresponds a sequence of ideal numbers which form what is called its orbit. Now, if I use my limited computer (or the results of a measurement) already after the first step of the iteration ,the result is an approximation and so, instead of continuing on the ideal start orbit, I jump on a nearby orbit. The same happens at each next step . If the iteration is "well" behaved , I can end near to where I should have landed in the ideal case, but in the chaotic case I go in a completely different place! In fact the chaos signature is that if I take a certain number of points very close, after some time they are disperded in the whole region which is the (strange) attractor for that iteration. Usually a strange attractor is a fractal.For this reason the easiest way to draw a fractal, is an iteration in one or more dimensions. For example the Lorentz attractor is a three dimensional iteration created to model weather. Nonlinear phenomena and phenomena with feedback in nature are thus originated from the need to have simple and for this reason recursive algorithms.

Julia and Mandelbrot set

Julia and Mandelbrot sets are connected to iterations in the following way. If we want to make a mathematical analysis of iterations it is convenient to go from real iterations like x=c*x*(1-x) to complex iterations like z=c*z*(1-z) where c and z are complex numbers. In the complex domain,in fact, exists a simplest iteration z=z^2+c which is chaotic and thus we can start from this!

If we want to study it,we see that it depends from four parameters:x0,y0 represent the starting point;c1,c2 the constant. We can keep c1,c2 constant varying x0,y0 and representing in some way the fact that the iteration goes to infinity:this is the Julia set. For each c we have a different set .Viceversa we can keep x0,y0 constant and equal to 0 and vary c obtaining the Mandelbrot set (also here we could have set x0,y0 to different values but in fact, the sets for different x0,y0 values are equal to the one with x0,y0=0 with only a "deformation"). The Mandelbrot set is a generalization of the Feigenbaum diagram for planar iterations.

No wonder they are so complex and so similar to natural landscapes since they are connected to iterations which describe natural phenomena. These Julia,Mandelbrot and Feigenbaum sets can be defined for each possible iteration and are usually similar to the prototypical iterations which are called the logistic and the quadratic map.

Sinthesizing natural phenomena with recursive procedures

Considering how powerful are recursive procedures in creating natural patterns,is it possible to find a general way to sinthesize natural patterns?
In fact there are at least two such methods,both using recursive procedures.In the first method,of the Lindemeyer grammars,the starting point is the generation of a string of "move" and "turn" which are interpreted in the end as drawing commands from a computer "turtle". We assign to these two operations some symbols which will be the basic ones in our grammar. Then we define some complex symbols and rules that say how complex symbols transform into strings of complex and basic symbols. With this grammar, we do a certain number of iterations,starting from a given initial string and generating a final string. This will be interpreted by the drawing turtle that uses only basic symbols. This approach can be extended also to 3 dimensions with a 3D turtle and creates realistic representations of plants but also of other objects.

In the second method,we take in account the fact that,in a recursive procedure that works on points in the plane and calls itself n times in each iteration, what happens is that all the points in a picture will undergo each time n different transformations. These transformations will rotate,scale and translate the original image at each iteration. In fact the original recursive procedure is equivalent to a set of affine transformations(this is what is called IFS or iterated function system). Given a set of affine transformations,the image that you get in the end doesn't depend at all from the initial image! This makes possible the use of the so called "chaos algorithm":you start with any point and at each iteration you choose a random affine transformation in the set and apply it. The final result is always the same image: the attractor connected to the set of affine transformations.

It is possible,given an arbitrary image, to sinthesize a set of affine transformations that will produce it? Barnsley has shown a procedure to do this.This means that the original image (which can take megabytes) can be represented with the few numbers of the affine set.This is the fractal compression.

Why are natural laws recursive?

In programming a recursive procedure is a procedure that calls itself. For example: n! = (n-1)! * n
In mathematical modeling of natural phenomena the recursiveness comes from the fact that we describe nature with differential equations. These say more or less this:look,I can't say to you exactly what will be the value of quantity s at time t, but if you know its value at a time very near before, I can give you the new value.(In other words we give the law for the rate of change of quantity s in time)
The same is in space:i.e. if you can give a value very near in space, I can compute the new value. Of course,like for the factorial, all this is of limited value and can be used for a direct computation only in very simple cases.(In the case of the factorial ,the computation is possible because we say that 0! and 1! are equal to 1. So,starting from this value, we can compute any value n! For the physical laws you can start from an instant when you know the value but,being the space infinite, it is not always possible to apply the law.) Unless you try to approximate a solution with a map that is of course recursive, since you feed back each time the last result.

Maintained by
.Last revised