A Linear Genetic Programming Language for Evolving Fractals

Daniel Ashlock, Justin Schonfeld, and Joseph Alexander Brown
Submitted to TEVC

Abstract PDF eprint

There are several types of fractals, including Man- delbrot set, Julia sets, and Newton’s method, based on the iteration of complex functions combined with testing for a termination condition. This study extends and combines several fractal iterators into a linear genetic programming language that can specify a wide variety of images. In addition to traditional fractal iterators, rotation, scaling, displacement, and flow of control statements are added to the language. Two fitness functions based on the variability of time to capture of points on a sample grid are used to drive evolution of fractals. The fitness functions are compared for their ability to evolve programs of various length in the fractal language. One of the fitness functions is found to produce both a larger variety of fractals and a larger fraction of relatively trivial images. A set of experiments is performed to show that the type of fractal located can be diversified by increasing the limit on the number of statements executed by the fractal program. Overall the system is demonstrated to be able to locate a large variety of fractals with distinct visual characters. The system is intended as an on-demand image library for use with a photomosaic generator.