Fractal Dimension

Virtual Ecosystems -- Fractal Dimension

"Effective dimension concerns the relationship between mathematical sets and natural objects."

Benoit Mandelbrot
The Fractal Geometry Of Nature
You are in an airplane taking a movie of a shark swimming on the surface of the ocean. You are trying to decide whether the shark is hunting for food or just resting. You would expect that the predator would have a highly convoluted and space filling search trajectory as he searches for food. If he has no information about the location of his prey, this kind of track increases his chances of finding his prey. If he's not hunting, his track is probably not as irregular.

In the dimension page , we noted that dimension is a constant characteristic number that can quantify the complexity of a geometric object. If this is true, dimension could quantify the shark's track. If we had a dimension for a resting shark's track, we could use that dimension as a basis for comparison as we attempt to define a shark's behavior. In the applet , you will have the opportunity to define different shark tracks and determine their complexity. But, you're wise to read ahead to get a feeling for how fractal dimension is calculated.

There are many shapes and patterns which do not conform to the integer based idea of dimension (i.e. D = 1, 2, or 3) described in the dimension page . There are patterns that lie in a two-dimensional plane, but if they are linearly scaled by a factor S, the area does not increase by S squared (D = 2), but by some non- integer amount. In other words, in our formula N = SD, D would be some value between one and two (i.e. 1.367). These geometries are called fractals and fractals describe a large percentage of all patterns in nature! A non-integer value for dimension is called a fractal dimension. And, the fractal dimension of a geometric pattern that represents an ecological phenomenon is that characteristic constant number that permits us to quantify the pattern.

Through the example of a shark's swimming track, this page describes the concept of fractal dimension. We will describe one of several ways to compute fractal dimension. We will also compare the different methods and describe when each method should be used. The computational details for the various methods can be studied in the additional resources listed below.
The shark's swimming track describes a jagged, irregular line over the surface of the water. And, since your observations are recorded at some predetermined time interval, it is highly likely that the track is composed of a number of small segments that you didn't observe.

The question at hand is, what is the dimension of the shark's track??

Is it a one-dimensional line? That's impossible because the track moves within the two-dimensional plane of the ocean surface.

But, the track isn't a two dimensional plane either. The track would only become a plane if it covered every molecule of the water surface in the plane's area of observation. That would be much like a child randomly and completely coloring a piece of paper with crayon lines. So, the track's dimension is somewhere in between a straight line and a plane because it is neither a straight line nor is it completely space filling.

Let's first examine the two possible extremes of a shark's track. If the shark were to swim only in a perfectly straight line or curve, we could say that his track is one-dimensional. If the shark were to swim in a totally random fashion, describing lines that eventually "fill" the ocean's surface, we would say that his random swimming is two-dimensional because it covers an entire two-dimensional plane.

But, the shark is controlling his movements. In effect, he is constraining his track so that his track is neither one-dimensional or two-dimensional. We would say that his track is fractal. And his track would have a fractal dimension of somewhere between that of a straight line ( i.e. 1 ) and a plane ( i.e. 2 ).

Fractal dimension is a measure of how space filling a pattern is. Any pattern in the two-dimensional space of a plane must have a fractal dimension of between 0 and 2. A point has fractal dimension of zero, a line has a fractal dimension of one, and a pattern which completely and randomly fills all the space in a plane has a fractal dimension of two. The coastline of Britian is an irregular line on a plane. It has a fractal dimension of about 1.31. The Australian coast has a fractal dimension of 1.13 and the South African coast (one of the smoothest coastlines) has a fractal dimension of 1.02.

In addition to two-dimensional space, we can talk about the fractal dimensions of objects or patterns in three-dimensional space. Here, a pattern could have a fractal dimension up to 3.0 -- the topological dimension of three-dimensional space. Natural landscapes and topography are fractal. A landscape that portrays latitude, longitude, and altitude is an example of a fractal with a dimension somewhere between 2.0 and 3.0. In fact, one could speak of very high fractal dimensions if we are dealing with multi-dimentional data sets. In our discussion, we will keep things simple by dealing with two-dimensional space.

The higher the fractal dimension of an object up to its limit (two for a limiting plane) , the more complex it is. At a fractal dimension of two, a pattern on a plane is totally random. At a low fractal dimension (say 1.00003), the pattern is not very complex.

So, our shark has a highly convoluted and space filling search trajectory as he searches for food. The fractal dimension of his track would be quite high. On the other hand, a prey wants to minimize his chances of getting caught. Therefore his movement or track would be more linear and less irregular. With a movement that is close to linear, his chances of getting caught are much less. The fractal dimension of a prey would be expected to be quite low.

So, how do we calculate fractal dimension? The objective is to find D in the formula N = SD. Our logarithmic form of the formula (D = log N/log S) provides the means.

Fractal dimension is based a measure of how an object's mass, volume, length, area, or some other property changes over varying scales of measurement. There are several methods that can be used to calculate fractal dimension. The additional resources (below) describe five methods for computing a fractal dimension. They are the similarity dimension, the caliper (or compass) method, the box-counting (or grid) method, the pixel-dilation method, and the mass-radius method. Each method has it's strengths depending on which kind of fractal pattern is being analyzed.

This page describes only the box-counting method because it lends itself well to non-exact, statistically self-similar fractal patterns that are generated from empirical data and photographs. The box-counting dimension can measure pictures that are not exactly self-similar. And most real-life patterns are statistically self-similar but not exactly self-similar. This is probably the most common scenario for marine ecologists. Furthermore, the box-counting dimension is very easy to program. But, there are limitations to the method which are described in the resources noted below. Since there are numerous methods to compute fractal dimension, it is important to know which method suits the project. The various methods and their utility are described in some of the additional resources.

Box Count Method
To calculate the box-counting dimension, we place our image on a grid. In the illustration to the left, we are using an idealized Koch fractal to mimic our shark track. s can be the total number of grid cells. Count the number of grid blocks that the pattern touches (114). Label this number n(s). Now, resize the grid. In the example, the grid square size is halved (the number of cells is doubled). Again, count the number of grid blocks that the pattern touches (273). The process can be performed over a range of box sizes. Plot the counted values found on a graph where the x-axis is the log(s) and the y-axis is the log(N(s)). Draw in the line of best fit and find the slope. The box-counting dimension is equal to the slope of that line. Or, follow the example to the left and calculate D directly. On my calculator, I actually got 1.259867. If you perform the same exercise for a figure that is a line and another figure that is a square, you will get the expected dimensions of 1.0 and 2.0 respectively.

So, with a method for computing fractal dimension, we are able to quantify the complexity of ecosystem patterns.


Lacunarity is a counterpart to the fractal dimension that describes the texture of a fractal. It has to do with the size distribution of the holes. Roughly speaking, if a fractal has large gaps or holes, it has high lacunarity; on the other hand, if a fractal is almost translationally invariant, it has low lacunarity. Different fractals can be constructed that have the same dimension but that look widely different because they have different lacunarity. There are applications of lacunarity in image processing, ecology, medicine, and other fields. I provide two lacunarity references below .

Additional Resources

bulletMeasuring the fractal dimension of natural objects from the Fractals in the Biological Sciences series. A good critical review of the different methods for calculating fractal dimension.
bulletThe Yale lecture notes and pictures describe the different methods for computing fractal dimension.
bulletA critical study of the box counting dimension . A good analysis of the limitations of the method if you can wade through the bad English
bulletHarFA -- fractal dimension software from academia.
bulletTruesoft's commercial fractal analysis software package called Benoit.
bulletAnother set of lecture notes that describe the methods for calculating fractal dimension .
bulletHere is a good description of the box counting method.
bulletAn introduction to lacunarity .
bulletLacunarity analysis .
Previous
File Last Modified: Sun, 2 Mar 2003 16:57:41 UTC
Copyright © 2001 - William C. Graham Jr.