7 ms·
The Algorithmic Beauty of Plants (1990)
- foenix 12y agoAnother great resource about fractals and l-systems is Jeffery Ventrella's "Brainfilling Curves", which is also available for free online to read and download: http://www.fractalcurves.com/ http://www.fractalcurves.com/
- jordan0day 12y agoWow, that looks beautiful!
- bglazer 12y agoOh wow. This is a huge nostalgia rush. Jeffery Ventrella's website absolutely hooked me on programming. The visualizations were totally mesmerizing for me as a 10 year old kid. Especially this: http://www.ventrella.com/Ideas/Fluid/fluid.html http://www.ventrella.com/Ideas/Fluid/fluid.html. It's a 167kb fluid simulation that ran smoothly on a pc circa 1999. And Darwin Pond too! Most engaging artificial evolution simulation I've ever seen. http://www.ventrella.com/Darwin/darwin.html http://www.ventrella.com/Darwin/darwin.html Edit: I've been looking for this forever. Thanks for the link.
- jordan0day 12y agoFor something in a similar vein, but perhaps more approachable, check out The Computational Beauty of Nature (http://www.amazon.com/The-Computational-Beauty-Nature-Explorations/dp/0262561271 http://www.amazon.com/The-Computational-Beauty-Nature-Explor...).
- FractalNerve 12y agoHello Jordan, have you read that book and would you recommend it over "The Fractal Geometry of Nature by Benoit Mandelbrot (1982) [1]? I'm asking because I bought the latter and would like to know if this book provides more recent information on the topic. Thank you. -- [1] http://www.amazon.com/Fractal-Geometry-Nature-Benoit-Mandelbrot/dp/0716711869 http://www.amazon.com/Fractal-Geometry-Nature-Benoit-Mandelb...
- krazydad 12y agoThe Mandelbrot book was the first one on the topic (published in 1983, revised from books published in 1975 and 1977), and is the least likely to have 'recent information on the topic'. It's also not as readable as some of the others, but it's certainly a classic (and deserving of a larger Wikipedia article than it currently has).
- jordan0day 12y agoI have not read Mandelbrot's book (yet!), so I can't really compare it. I don't know what sort of depth you're looking for, but I'd call CBoN a "medium"-depth book on the subjects involved. It's possible to read it like a pop-science book and still appreciate it, but you can actually sit down with pencil and paper (or write some code) and gain a pretty good level of insight. You're not going to necessarily gain a complete understanding of all the underlying math, though, just by reading this book. Anyway, it's a pretty darn good use of $40, IMO. Buy it!
- gwf 12y agoThanks for making the recommendation for CBofN (I am the author). I should also add that the naming of my book was clearly inspired by ABofP (or ripped-off, depending on your point of view). ABofP was a real inspiration to me.
- evgen 12y agoGreat book BTW! Is the Kindle version new? I ask because I could swear I went looking for this a year or so ago before moving and ended up having my copy scanned and pulped so that I could take it with me.
- gwf 12y agoThanks so much! Here's the funny thing ... I had no idea there was a kindle version until just now (your comment prompted me to go look). I am pretty sure that it's new because -- while I don't follow the sales closely -- I also like to look at the breakdown of sales every year and I can't recall there ever being a kindle or digital category. So, yes, that's my guess. I am going to go buy a copy now just, well, because I can.
- evgen 12y agoSo, since you have purchased can you tell me if this is a decent conversion to azw3? I prefer epub/azw3 over pdf since it reflows well on a smaller device (yes, some images/charts will never work on a smaller screen) and would probably buy another copy if it turns out to actually be good version rather than some topaz scan packaged up as a kindle version...
- jordan0day 12y agoI really loved CBoN -- it really is a very good book. I felt like each chapter was approachable enough that I could just casually read it and felt like I "got it", but when I sat down with pencil and paper and worked through it I gained a real appreciation for each section.
- 12y ago
- agumonkey 12y agoMandatory Turing morphogenesis : http://www.brandeis.edu/now/2014/march/turingpnas.html http://www.brandeis.edu/now/2014/march/turingpnas.html
- dmritard96 12y agoThanks for this, my mom is a botanist and I have always been into drawing plants with code.
- username223 12y agoMandatory Romanesco broccoli link: https://en.wikipedia.org/wiki/File:Romanesco_broccoli_(3).jpg It's almost too cool-looking to eat.
- twtwtaway 12y agoHow can one not believe in God after seeing this?
- tizzdogg 12y agoBecause it shows that it just takes simple math and algorithms to make complex beautiful things, and not an all-powerful deity? Some people see the order behind natural beauty as evidence of a designer, but I think this actually demonstates how beautiful systems can arise on their own without guidance. If something was designed by an all-powerful being, it would be surprising if we mere humans could understand its patterns at all. Different perspectives, I guess.. you are of course free to believe whatever you want.
- twtwtaway 12y agoYeah, different perspectives indeed. But to me it seems unreasonable that for example the tablet I'm writing this on somehow came into existence by itself. Touchscreen, CPU, OS and no creator at all? The things we see in nature are much more complex than my tablet?
- alexqgb 12y agoThe fault in your logic is your failure to account for the extrordinary difference in timescales involved in the creation of tablets and ferns. It's worth remembering that Charles Darwin was a geologist by training. At the time, geology was a relativly new discipline, and the first line of scientific inquiry that demanded any concept of deep time. Its development signaled the dawning realization that the Earth was a lot older than anyone had previously guessed ("possibly a billion years" speculated Charles). Acquiring an accurate measure of the timescales on which geological events played out is what set the stage for an evolutionary theory of life's development. Indeed, the theory of evolution is virtually inconceivable in the absence of these scales.
- twtwtaway 12y agoSo what you are saying is that given enough time and some random events my tablet could actually come to existance all by itself? And who set the whole environment for this to happen?
- obsurveyor 12y agoI've got this on my bookshelf right next to "The Algorithmic Beauty of Sea Shells" and "The Science Fractal Images". Hope more old books like this get digital releases for free/modest cost.
- grownseed 12y agoWhen I was 7, my dad introduced me to my first programming concept ever. While having a walk in the forest, he asked me to look at fern and made me inquire about its structure. He proceeded to tell me about recursivity and a very long conversation ensued. Needless to say, my mind was absolutely blown. Over the years, we had many discussions like that first one, relating programming concepts to real-life principles. My dad was never (and still isn't) a "hardcore" programmer, but as far as understanding and explaining logic go, I'm still to find somebody capable of explaining things so simply and beautifully. Quite a few years later at University, my teacher with two PhDs failed to explain the basics of OOP to my class in a 4 hours span, entangling himself and everybody in lingo and concepts that even confused me, who already knew OOP. Academics would sometimes do well to relate to the real world and deflate their egos.
- wallflower 12y ago> Academics would sometimes do well to relate to the real world and deflate their egos. This is really the key to teaching beginners. The difference between telling someone what something is versus encouraging them to see it for themselves. Apart from the tired car analogy, how would you (or better how would your dad have) explain(ed) OOP to a relative beginner? We find that we sometimes have to start with the very basics - as in a variable is a 'box' to put a value in. Literally, we hand out boxes. Really, simple intuitive stuff like variables is something that is non-intuitive for most people.
- lelandbatey 12y agoThe way I had it explained to me I always really liked. We spent a long time on very simple things: logic, control flow, functions, variables. Then, after learning that and all the limitations of those tools, my teacher said: "an object is something that can contain functions and data. In fact, in many languages, functions and variables are both objects." At least that's how I remember it.
- SixSigma 12y agoWe keep the cooking equipment and raw materials in the kitchen. Same goes for the bathroom, laundry, den, bedroom. These are all "rooms" which share features like doors, heating, floors, lights. These will be in building, which could be detached, block, semi-detached, terrace. These also have common processes but differences. We human computers move between these rooms, sometimes we bring data with us (are we hungry, sleepy, with friends, naked) and use the processes and data in the rooms to perform useful actions. Once compete we might be in a different state (dressed, sated, refreshed, clean), the room might be different for the next person (dirty, empty, wet), we might leave the outputs there or take them with us to a different room or even outside of the building.
- jamespollack 12y agoafter reading ABOP, i did a lot of searching on L systems and found this amazing three.js library -- http://grow3.zyxxy.de/ http://grow3.zyxxy.de/
- kristopolous 12y agocouldn't someone also entitle this "the incredible clumsiness of human perception"
- placebo 12y agoI can understand why the algorithm for some fractals can turn out to look like plants. What I don't understand (probably for lack of reading up on the subject) is why do plants look like fractals. I mean you won't find some microprocessor in every plant issuing orders to grow according to a fractal formula so I assume this is a emergent statistical phenomena from constraints within the plant genetics - but is the bridge between the fractal shapes and plant shapes well understood?
- dougabug 12y agoFractals have no inherent dependency on microprocessors. Microprocessors can be used to generate fractals simply because they can execute the generation rules of a fractal, but you could could likewise generate them with anything which can perform a specific affine transformation, for instance a copy machine. An affine transformation is simply a linear transformation together with a translation, for fractals the linear transformation would typically be a scaling composed with a rotation. You could easily imagine how you might follow such a simple growth pattern, just iterate the same scale rotate and translate operation mechanically so the branches look like the whole thing.
- placebo 12y agoI wasn't really suggesting that microprocessors are required to generate fractals, but rather that I don't understand how the process that eventually generates the fractal shapes occurs in plants. You have a good point that all that is needed is a relatively simple operation repeated in every part of the system which indeed makes it easier for me to imagine how the shape forms. From what level this operation starts to be expressed is probably something botanists can answer.
- baggers 12y agoWarning I probably don't know what the hell I'm talking about. However my gut instinct is that self similarity mean shorter code (dna) shorter dna (protein chains) take less energy to copy thus gives you a survival advantage (often survival for plants means getting set up and leaves out fast). An experiment was done a while back where they took a bacterium and 'unrolled the code' of the dna (seems there are deduplication routines in nature). When the result was grown in a lab it behaved just like the original but didnt grow as large.
- spacemanmatt 12y agoI didn't realize what a prize it was to buy a hardback edition in the mid-90s. Now I keep the e-book on my tablet for reference. Not that I have to refer to L-systems often.