Fractal objects, plants and music

L-systems are a mathematical formalism which was proposed by Aristid Lindenmayer in 1968 as a foundation for an axiomatic theory of development. L-systems are based upon rewriting, i.e. the basic idea is to define complex objects by succecssively replacing parts of a simple initial object using a set of rewriting rules of production. After creating such an abstract object, usually by a limited number of repetitions of these rules, all kinds of interpretations are possible. My turtle program interprets certain symbols for drawing a line segment, changing the colour, changing the line thickness, branching or changing the direction. The same symbols are used to generate for the music a Midi-file with a key, a duration and a voice. The Midi-file is then edited by Audacity, transformed in a WAV-file and reduced to Ogg/Vorbis. No MP3, because that format is not open. Being familiar with Lindenmayer, Hogeweg, Hesper the elegance (sometimes) of the pictures was no big surprise to me, but the appearance of something more or less musical certainly was. The WAV-file of 5 minutes comprises a 60 MB and the Ogg/Vorbis still 10 MB, so in order to reduce my and your data transfers I put the Ogg-file here. The WAV-output on an audio CD is available.
The L-system rules are put in File Sharing.
thumbnaildescriptionfull pictureOgg Vorbis
fig 3.2.8 Barnsley 1988 see the picture hear the music
fig p272 Peitgen & Saube 1988 see the picture hear the music
fig C8 Peitgen & Saube 1988 see the picture hear the music
Koch curve see the picture hear the music
Koch curve see the picture hear the music
a classical dragon see the picture hear the music
fig 10 Hogeweg 1976 see the picture hear the music
fig 4 Hogeweg 1976 see the picture hear the music
fig 7a Hogeweg 1976 see the picture hear the music
fig 7b Hogeweg 1976 see the picture hear the music
fig 8 Hogeweg 1976 see the picture hear the music
fig 9 Hogeweg 1976 see the picture hear the music
Hogeweg & Hesper 1974 see the picture hear the music
fig 6.1c Prusinkiewicz & Hanan 1989 see the picture hear the music
a flowering plant see the picture hear the music
fig 3.11a Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.11b Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.11c Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.11d Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.11e Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.2a Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.2b Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.2c Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.2d Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 3.2e Prusinkiewicz & Hanan 1989 see the picture hear the music
fig 4 Algorithmic Beaty of Plants see the picture hear the music
fig 10 Algorithmic Beaty of Plants see the picture hear the music
fig 11 Algorithmic Beaty of Plants see the picture hear the music
fig. C.7b Peitgen & Saube, 1988 see the picture hear the music

In order to give you some idea about these production rules, here follow the production rules for the flowering plant:
Derivation length: 10
angle factor: 24
scale factor: 90
axiom: *K2P3A0*
ignore: +-
* < A0 > * --> FF[+A1]F[-A4]F
* < A1 > * --> F[+A2]F[-A5]F
* < A2 > * --> F[+A3]F[-A6]F
* < A3 > * --> F[+A4]F[-A7]F
* < A4 > * --> F[+A5]F[-A1]F
* < A5 > * --> F[+A6]F[-A2]F
* < A6 > * --> F[+A7]F[-A3]F
* < A7 > * --> P1F[+B]F[+B]F[-B]FBP3
* < B > * --> K7P6[+F][-F]FK2P3
* < F > * --> FF
F means draw a line segment, + means turn right 180/24 degrees, - means turn left and K and P indicate line thickness and colour.

There are of course many more ways to generate more or less interesting music by some automatic means. Some centuries ago J. J. Hummel in Berlin published a method devised by Wolfgang Amadeus Mozart to write "contredances angloises" without any knowledge of composing. In those days one had to use printed tables and to throw dices; nowadays of course one does this by computer (at least I do). At irregular intervals I will generate a contredance with my program. After generating 'music' from a drawing, I wondered if the process could be reversed. Well, yes, look at contredance picture.

Please send me reactions and comment:

your name: