You can dismiss the support request pop up for 4 weeks (28 days) if you want to be reminded again. Or you can dismiss until our next donations drive (typically at the beginning of October). Before you dismiss, please consider making a donation. Thanks!
One Time
$5/month (US)
$10/month (US)
Support II via AmazonSmile Internet Infidels Needs Your Support!
dismiss for   28 days   1 year   info


Get A-life

L-plant Horticulture


In 1968 a biologist named Aristid Lindenmeyer came up with a set of mathematical rules that modeled the growth of real plants. The basic idea is very simple. Start with a single piece of stem; a "shoot", if you like. Now, each tick of the clock you take each shoot in turn, and replace it with a sequence of three shoots joined together, with another shoot protruding from each join, as shown to the right.

Finally, you can take each unconnected tip of a shoot, and draw a leaf there. Basically, you are assuming that each piece of plant stem will try to grow and branch off new pieces of stem.


If you repeat this basic recipe a few more times, what you end up with looks remarkably like a real plant.


You can change the rules slightly, and get different sorts of plant. You can also add refinements such as varying the angles of the branches, and making the stem segments longer according to how many turns old they are.

[L-plant] [L-plant]

These algorithms are known as L-systems, and the computer-generated L-plants are now used in movie special effects as realistic looking vegetation.

Biomorphs and the Holy Grail

In 1985, Richard Dawkins wanted to demonstrate pure natural selection, much as The Game of Life had demonstrated pure cell interactions. He decided to write a program that used L-systems to generate plants. He picked nine variables for the system--length of "stem" pieces, angles, and so on; and he started with a random L-plant. The software "mutated" the nine parameters of the initial plant, and displayed the nine "offspring" in a grid. Dawkins would select one of them, and nine more variants would be bred from that specimen, and so on. He called the shapes "biomorphs".

Dawkins confirmed that if he picked the most "treelike" biomorph each time, the process of selection and mutation would result in a treelike shape after only a few generations. He could then select for "bushyness", and see the shape evolve into a bush. All of these variations were produced from random mutation, through a process much like real-world natural selection.  


After a while, though, Dawkins noticed biomorphs that had lines that crossed back on themselves. In fact, a few had protrusions that looked rather like legs or wings sprouting from tight clusters of lines that looked like bodies. Although he hadn't designed the code to draw anything but plants, suddenly he was breeding insect shapes!

[Roach] [Butterfly] [Bug]

Before long the biomorph bestiary had expanded to include spiders, birds, frogs, alphabet letters, castles, spacecraft, and even a chalice shape which Dawkins named the "Holy Grail".

[Starfighter] [Bird] [Cinderella's Castle]

The biomorph world teaches us that when a hyperreal world is given natural selection, the results can be extremely unexpected. Similar lessons were to be learnt later on in the field of software engineering; but first, we need to take a detour back to the early days of computers.