Fractals as Art
by Alice Kelley
Computer generated fractal imagery used to be confined to the computers and textbooks of mathematicians and physicists, but new, user-friendly fractal generating programs have brought fractals into the realm of art. Fractal calendars and posters are being marketed, and progressive galleries are starting to display framed fractal images. The word fractal, from the Latin "fractus," meaning "broken," was introduced by Benoit Mandelbrot in 1975 to describe, using fractal equations, irregular, natural phenomena such as coastlines, plant branching, and mountains. Fractal shapes, like coastlines, exhibit, at increasing magnifications, both self-similarity and increasing detail. Specially written programs render images from fractal equations using a process called iteration, which means the answer from the equation at one point is used to calculate the same equation at the next point, and so on. Computers, with their ability to quickly perform the thousands of iterations necessary to graphically render a single fractal image, have made it possible to create and explore the resulting abstract fractal geometric shapes. As users who think of themselves as artists learn to use fractal programs, the resulting creations become less and less like mathematical illustrations and more and more evocative and beautiful. Certain skeptics in the art community insist that since a computer performs all the necessary calculations, artist involvement must be minimal, thus arguing that the images cannot be called true art. Though there is an element of unpredictability in my own fractal work (the result of different combinations of variables can surprise me), the final image could not exist without extensive user input. My intent is to describe the process of making the image at the top of this page, named Golden Pheasant, and the reader is then invited to decide for him or herself if this is a new art form that uses a new generation of tools, or simply random bytes created by a computer.
There are a number of programs available on the internet that were written to generate fractals. They each have different features and allow varying amounts of user input. Since Ultra Fractal is the tool I currently prefer, and is the program that created the images used in this article, the instructions I give will pertain only to it. Ultra Fractal, released in 1999 and written by Frederik Slijkerman, (http://www.ultrafractal.com, Win 95/98/NT), offers features, like layering, usually limited to image-editing tools that digital artists use, such as Adobe Photoshop. Generally speaking, layers allow different images to be superimposed, or merged, with a variety of options. Ultra Fractal allows the rendering of additional fractals within the same boundaries as the first fractal, each in a new layer with its own set of properties, and with a merge mode that dictates how the added fractal layer interacts visually with the previous fractal layers. Artists may create several different fractals from one original single-layer image by combining different layers and altering the merge modes between them, which can allow for even more artistic interpretation of traditional fractal forms.
Golden Pheasant derives from a formula called Julia(fn||fn), which reads as follows: "z = pixel, loop: IF |z| < the shift value, then z = fn1(z) + c, ELSE z = fn2(z) + c". There are two functions and one parameter involved in this equation. For parameters, the user is given the opportunity to enter a numerical value to be calculated in the equation.
With functions, the program offers a drop-down box for each available function, and the user selects from among 29 different functions, such as cos (cosine), sin (sine), tan (tangent), and sqr (square), and whatever is selected is automatically inserted into the equation. Formulas generally have up to four adjustable functions. The default values for Julia (fn||fn) are a parameter of 0,0 and "sqr" for both functions. The reason the parameter value is two numbers is because fractals are drawn on a graph with an X and a Y axis. The final parameter value has X and Y coordinates which the user defines. Thus, when one selects Julia(fn||fn) from among the hundreds of available fractal formulas, Fig. 1 appears on the screen as the default image. Starting an image from scratch always involves exploring such initially plain looking fractals.
Users often begin by experimenting with different parameter values. There is almost no upper or lower limit on the numbers available for experimentation; one can try zero, one million, negative one million, and everything in between. The problem is that quite a few, possibly most, of those values will render a blank screen.
Each formula has specific parameters that will begin to yield interesting complexity, and the user either has to discover them through trial and error, or learn from books or other users what range of parameters is useful for a given formula. For Julia variant formulas, like this one, typically values between zero and one will be effective. Often artists will find the best Julia parameter values by starting with the corresponding Mandelbrot set, which is actually a catalog of all possible Julia sets that use the formula, and using the "switch" feature in Ultra Fractal. While the Mandelbrot(fn||fn) basic formula fractal is on the screen, I clicked the switch button. A new window opened alongside the first, where each corresponding Julia is displayed as the cursor is run over different points in the Mandelbrot fractal. The pixel values at the cursor location in the Mandelbrot image become the new parameters for the corresponding Julia image. I used this method to discover that 0.44 and 0.23 yield some promising looking detail, as evidenced by Fig. 2.
A possible second step might be experimenting with the two function values. Different function values often have a dramatic effect on how the fractal is rendered. Since, as was previously mentioned, there are 29 different options available for each function, it can take time to discover a promising combination. Sometimes it becomes quickly apparent which values for the first function are going to yield interesting results, thus simplifying the search somewhat.
Often many of the values will result in a screen full of chaotic dots, or a blank screen, or simple, uninteresting shapes. For this equation with the aforementioned parameters, changing the first function to "exp" revealed Fig. 3. Notice how two angular spiral shapes have appeared. Spirals are among the most common fractal shapes, and are often sought after because they result in such pleasing imagery.
Once these spirals appeared, I began to run through the list of values for function 2.
When I selected the value "log", Fig. 4 resulted. The same spirals are present, but more detail is beginning to appear. I decided to zoom in on the larger uppermost spiral. Zooming involves using the mouse to outline an area of a fractal. When enter is clicked, the area that was inside the outlined area fills the screen. The mouse can also be used to make small adjustments to center images within their window. Fig. 5 is the result.
After locating an interesting fractal shape, the next step can be experimenting with coloring algorithms. The coloring algorithm is a function that transforms the color index value of each point, which means that functions are applied that alter the way the fractal is rendered in visually complex ways. There are ring trap algorithms that result in a fractal made of rings, also bubbles, points, and algorithms with names like "Binary Decomposition 1".
At the time of this writing, there are at least 150 different coloring algorithms to choose from. Ultra Fractal users continue to create new ones, and share them via an Ultra Fractal mailing list (available on the Ultra Fractal home page listed above). With time and practice, the user can get to know what effect each algorithm will have. All algorithms themselves have many variables that can be manipulated for different results, and have their own window on the Ultra Fractal screen, full of drop-down menus and parameter boxes. After a great deal of experimentation, I selected a coloring method called "Shapes 2 - variable" created by Luke Plant. Of the 8 shapes this algorithm provides, I selected "hyperbola". The 12 options that can be manipulated to alter the hyperbola shape were left at their default settings. This resulted in Fig. 6.
By now the artist will usually decide to manipulate the image's color palette. Fig. 6 has a finished looking shape, but the colors are part of a default "gradient" that doesn't enhance this particular image.
Each fractal (technically each layer of each fractal) has its own gradient which is represented by a window filled with bands of color. Ultra Fractal is a true-color program, therefore there are over 16 million colors available.
The user inserts control points that are used to create and adjust the bands of color and which provide complete control over hue, intensity, positioning and blending of each selected color. One fractal might look best with a gradient window that has two pastel bands of color, and another might look best with 10 different bands of bright, vivid colors. By alternating these bands with bands of black, it's possible to create highlights and shadows within a fractal image. For this fractal, I created a gradient window that is black with four bands of color, (pink, yellow, gold and salmon), grouped together in the middle. Fig. 7 shows the depth and shading that results.
Though Fig. 7 is now a beautiful fractal, I decided to alter the overall shape of the image from a rectangle to a square, the fractal seeming arbitrarily to fill a square shape in a more visually appealing manner. Then, in the "layer properties" window, I clicked the "add a new layer" button, which adds a fractal layer that is identical to the first. I altered this new layer by using a different coloring algorithm ("Twin traps," by Damien Jones) and a light yellow color palette. The result is a less detailed fractal layer that softly enhances the original fractal just a bit, just as a painter might add an extra touch of paint here or there for effect. Refer back to the top of the article to view the final result.
The last step is to give the fractal a name. I decided to call this image Golden Pheasant.
For contrast, to engender appreciation for the complex manner in which so many choices come into play, I rendered several images that are the same fractal in Fig. 7 (which was the finished fractal before it was resized as a square), each involving a single change to just one variable. In Fig. 8, I changed the first parameter from 0.44 to 1.44. The result looks interesting and could be worth exploring, but is very different from Golden Pheasant. In Fig. 9, the only change I made to Fig. 7 was to change the first function to "sqr". Fig. 10 is Fig. 7 with the same coloring algorithm, but with "astroid" picked instead of "hyperbola" as the chosen shape. Fig. 11 is Fig. 7 with a different coloring algorithm entirely, this one known as "curvature". Fig. 12 is an example of what results when the random gradient feature is used to color the fractal.
Golden Pheasant is a relatively simple fractal. I have made images with as many as 15 layers, all interacting in different ways, with different formulas in each layer. What I have described here are the technical details of the input required by any user of the program. This is the equivalent of describing the properties of oil paints, how they are applied to canvas, the uses of different shapes of brushes, and general techniques to a new student of abstract painting. Such technical knowledge does not guarantee success. As in other fields of art, fractal art has a select number of artists with a reputation for beautiful images that no one else can replicate. Of these artists, each has a generally recognizable style. I often rely on intuition coupled with chance experiments that involve a number of parameters, layers, and colors, (as well as using the knowledge I've gained from observing and learning from artists who have greater mastery over this program, and the math, than I do), to produce visually attractive images.
Computers and fractal geometry are complex tools for creating a new kind of art, one that often mirrors the organic fractal shapes in the real world. As my artist's statement notes:
"Since fractals are actually computer versions of natural fractal phenomena like coastlines, plant shapes, and weather patterns, they seem to resonate with me somehow, to not appear artificial...Each fractal starts out as chaos, and I find the pattern in it, and that pleases me. Perhaps it's a metaphor. So much of life and the universe is chaos, and I can take a tiny part of it and make beauty."
All content copyright © Alice Kelley, www.AliceKelley.com