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:

x_{n}=f(x_{n-1},y_{n-1}) (1)
y_{n}=g(x_{n-1},y_{n-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:

x(t+1)=f(x(t))

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 Giuseppe Zito.Last revised