Yesterday, I quickly hacked up an implementation of the Space Colonisation algorithm, for growing trees. By trees, I don’t mean the binary trees – the living sort, just represented by segments and forks.
My inspiration was from Procedural World and this article. The idea of Space Colonisation is to colonise/fill a limited area. A tree like this would grow from the bottom up (as they usually do), gradually taking up all the available space. Trees generated by this algorithm (as far as I know) rarely have intersecting branches, and look organic.