The fractal foundation describes fractals as “infinitely complex patterns that are self-similar across different scales. They are created by repeating a simple process over and over in an ongoing feedback loop.” (ref  Fractal Foundation).  Although the mathematical foundations of fractals were established long ago they came more to prominence when Mandelbrot published his work in the 1960’s.  In particular the advent of computing allowed demonstration of the amazing properties of fractals as recursive functions were easily implemented.  Many of us coded the Mandelbrot set as we learned programming in the 1980s with the emergence of graphical hardware for computers.  Intricate and beautiful patterns can be generated as well as more simplistic in appearance.

Figure 1: Fractal Tree
Figure 2: Mandelbrot set generated from simple code

Fractals have been used extensively in recent years in applications such as CGI and new approaches and variants have emerged such as L-systems which puts a shape grammar around these approaches and provides a powerful approach and methodology to product sophisticated shapes.

L-systems (Wikipedia Page) have been used model plant growth and morphology and have significant potential in the realm of generative design systems, especially if they could be linked with engineering simulation tools.  The major challenge comes in developing engineering systems that are not so self-similar and require significant variation in morphology and behaviour across different regions of the system.  Implementation of dynamically changing 3D solids with his type of approach is extremely challenging.