Fractals/Iterated function systems

Iterated Function Systems (or IFS) is the name given to a method for calculating fractals based on a number of contractive affine transformations.

Researchers
Michael Barnsley did a lot of work on this type of fractal, including naming it.

Australian mathematician John Hutchinson (who called the system a "Multiple Reduction Copy Machine" or MRCM), also contributed to the field.

The Basic Method
There are quite a few variations on this method, but the basic idea is still the same.


 * 1) Define a number of contractive affine transformations in the unit square (these are also known as "Hutchinson Operators").
 * 2) Insert points at random positions into the unit square (or another initializing region of R2)
 * 3) Make a random selection from the list of transformations, and apply it to the point.
 * 4) After some run-up number of iterations, begin drawing the points into an accumulation buffer.
 * 5) Continue inserting points until the desired coverage (or quality) is achieved.
 * 6) The accumulated values will usually need a log-transform to bring them into good viewing range.
 * 7) Sorting the positions of, and resampling the points into an image using a filter kernel can give a better resulting image but is a lot more costly in terms of memory and computation.

Affine Transformations
Affine transforms are a geometrical construct that comprises translation, rotation, scaling and shear in 2 or more dimensions. A 2-dimensional affine transform can be conveniently stored in a 3x3 matrix for the transformation of homogeneous 2D points. These transforms are applied by simply multiplying the point's position by the matrix.

Related Fractals

 * The flame fractal is quite similar to IFS but adding non-linear transformations, not just affine ones.
 * new class of escape time fractals: "Kaleidoscopic IFS by Knighty

Links

 * IFStile is a cross-platform (Windows, Mac, Linux) IFS freeware program
 * Wikipedia page on IFS
 * Classic Iterated Function Systems by Larry Riddle, Agnes Scott College