Archive for October, 2004

Book Notes

Tuesday, October 19th, 2004
Growing Up With Lucy: How To Build An Android in 20 Easy Steps arrived today and by page 3 there’s already an inspiring quote to share.
    “The Lucy project is really a kind of one-man, miniature moonshot – a broad and audacious endeavor with big prizes to be won, but also high personal stakes and a significant chance of complete failure. Yet moonshots are sometimes the only way: you cannot reach the moon by learning to jump incrementally higher and higher, no matter how impressively rapid your initial progress might be; sometimes you need to take a bold step, stop jumping, and set to work on building a moon rocket”

The author, Steve Grand, was the main programmer of Creatures and also wrote Creation: Life And How To Make It, one of my favorite ALife books.

Speaking of books, I’ve been pretty happy with AI Techniques for Game Programming for getting up to speed with Genetic Algorithms. The logical next step is Genetic Programming, a successor to Genetic Algorithms that evolves computer programs to find solutions to problems. I just ordered a copy of Genetic Programming : An Introduction, which looks promising and will hopefully keep my brain from exploding when I tackle the Koza books.

Life

Wednesday, October 6th, 2004

Since becoming interested in Artificial Life & computer based simulation several months ago I’ve spent a great deal of time researching Artificial Life & simulation, and a great deal of time programming. But I realized recently that most of that programming has been building foundations to do work with, but very little coding on the actual topic that got me started! So yesterday I put together a simple implementation of Conway’s Game of Life’s_Game_of_Life . If you’ve never played around with the Game of Life, I highly recommend giving it a try. My implementation (along with full OCaml source) can be downloaded here. There’s an included binary for Windows, but it should be compilable on any system that OCaml/LablGL works on.

I had a lot of fun programming my Life implementation and it’s neat to see the complex patterns that can be generated from such simple rules. The pattern that’s loaded up when the program runs is one that I found while playing around that surprised me just how interesting the result was (the pattern is just 8 cells in a jagged line, but runs for many generations).

For a much more feature rich version of Life (for Windows) check out Life32. It’s an impressive piece of work.