Virtual Ecosystems -- Fractal Construction

A Koch Snowflake Iterating Through Six Generations A Serpinski Triangle Generated With The Chaos Game Method A Barnsley Fern Generated With The IFS Method
The best way to understand the way something works is to build it. With that philosophy in mind, this page describes how simple fractal objects are constructed . The construction process will lay the groundwork for understanding self-similarity and fractal dimension .

Euclidean shapes are described by simple algebraic formulas. r2=x2+y2 completely describes a circle of radius r. For a given radius, one calculates the point at x for each of a number of given y points

But, the crude snowflake pattern shown above doesn't have a nice formula to describe itself. Instead, as a natural object, it requires a continuously iterated algorithm to be constructed. At each iteration, each line segment of the triangle is replaced by four new segments each 1/3rd the length of the parent line. The process for the generating Koch snowflake is shown below.

 


bulletStart with an equal sided triangle. A side length equal to 1 will make things easier. This triangle is often called the initiator.
bulletIn the middle third of each side of the triangle, build a smaller equilateral triangle with its sides equal to 1/3 of the length of its parent. Then erase the base side of the smaller triangle. The result for each of the sides of the original triangle should be should be four line segments, each 1/3rd the length of the original line -- a total of 12 line segments. This process is often called the generator because it is repeated in all subsequent steps.
bulletFor each of the 12 line segments, use the same process. The result should be 48 line segments 1/3rd the of the previous line segments or 1/9th the size of the original triangle's line segment.
bulletRepeat the process to the desired number of iterations.

Some interesting things happen as the Koch snowflake is constructed:

bulletThe iteration of a simple rule can produce complex shapes.
bulletNo matter how many iterations are performed, the object always stays within the bounds of the original square without ever intersecting itself.
bulletAlthough the algorithm for generating the Koch curve is concise, simple to describe, and easily computed, there is no algebraic formula that specifies the points of the curve.
bulletThe perimeter length of the snowflake object grows toward infinity as the number of iterations increase. At each iteration, the length of the curve increases by a factor of 4/3rd. The panel #1 size is 3. The panel #2 iteration is 12 x 1/3 or 4. The object in panel #3 has a perimeter size of 48 x 1/9 or 5.333. And so forth. The growth in peripheral length of the Koch snowflake is non-linear and exponential. This characteristic relates directly to the concept of fractal dimension . Look at the status bar on your browser. The Koch snowflake applet is calculating and displaying the perimeter size as each iteration is processed.
bulletIf you were to examine the Koch snowflake using a magifying glass (or a computer zoom operation), you would find that the smallest piece is identical in shape to the largest triangle. Unlike Euclidean shapes, fractal shapes have detail at all levels of magnification. Each small portion of the snowflake, when magnified, reproduces the larger portion exactly. This characteristic is called self-similarity . It is said that fractal objects have no scale because they look the same at all magnifications.
bulletBecause the Koch snowflake is composed only of lines and sharp corners, there is no way to fit a unique geometric tangent at any point. Since fitting tangents is a central feature of differential calculus, calculus cannot be used as a tool to describe or analyze the Koch snowflake and other fractal objects.

Another method for generating fractals is the "chaos" game. This method uses random numbers combined with a set of rules. The rules are:

bulletStep 1: Choose an equilateral triangle in the plane.
bulletStep 2: Label the vertices A,B, and C.
bulletStep 3: Randomly pick the initial point inside the triangle.
bulletStep 4: Randomly choose one of the three vertices.
bulletStep 5: Move to a point 1/2 the way between that vertice and where you are now. Plot that point.
bulletStep 6: Go to step 4.

After many thousands of points, the Serpinski triangle shown at the top of this page will emerge. Notice that the pattern structure inside Serpinski triangle looks a lot like the Wolfram CA Rule 22 -- mollusk shells. The characteristics of the "chaos game" approach are:

bulletWe use a deterministic rule algorithm.
bulletUnlike the Koch curve, we emply a non-deterministic, random process.
bulletWhen we plot the points generated by this random process, we always get the same result -- a figure of great regularity.
bulletOur starting point is unimportant.
bulletNo matter what our magnification, we see a Sierpinski triangle. -- i.e. there is self similarity

Yet, a third method for generating fractal forms is the Iterated Function System (IFS) approach. IFS fractals use a rule set that is supplied in a table. The table contains coefficients for rotation, translation, and scaling at different levels of detail. The computer graphics industry uses rotation, translation, and scaling to render dynamic visualizations of all kinds. With these coefficients, we can use a random number iterative process (much like the "Chaos Game" with the Sierpinski triangle) to randomly pick the coefficient set to generate a dot in the Barlsey fern shown at the top of the page. The IFS method is used extensively in image compression and storage. Instead of storing huge amounts of pixel information, the IFS method only requires that the coefficient table be stored. This significantly reduces the size of the data file that needs to be transmitted or stored.

We have just demonstrated three fractal methods for generating objects that can better appproximate natural objects than can Euclidean geometry. But, as natural as it appears, there are no irregularities in the fern. It is too perfect. The fractals that have been generated at this page are called exact fractals because their precision is exact -- a characteristic rarely found in nature.

On the other hand, cauliflower, broccolli, and our own lungs are all fractal objects with irregularities between adjacent points. The extent of physical self-similarity is limited. Nonetheless, they are all fractal attractors. Natural objects differ from exact fractals in two distinct ways:

bulletThere is always a lower and upper cutoff of the scale on which a natural fractal structure can be observed. With cauliflower you could see self similarity within certain limits. The stalks were one group of self similar objects and the flowers are another group of self similar objects.
bulletThe self similarity within a group is statistical instead of being physically exact. With statistical self similarity, an analysis of mean values, variances, etc. will give the same statistical properties at each rescaling (magnification) of the object. In other words, it is the statistical properties (not the physical dimensions.) that are self-similar. The mean and variance (not the physical form) stay the same at each level of magnification. Since there are always fluctuations (variances) in natural processes, they never lead to physical structures with an exact level of symmetry or self similarity.

We will look more at natural objects and processes to a greater extent after examining self-similarity and fractal dimension .

 

File Last Modified: Sun, 2 Mar 2003 16:57:40 UTC
Copyright © 2001 - William C. Graham Jr.