November 17, 2006
Scott Draves (aka Spot) gave a great talk on the Electric Sheep project yesterday to the Digital Arts and New Media program at UC Santa Cruz. Spot is well known for his algorithmic artwork based on cellular automata (CA) and fractals. When I knew him at CMU in 1996-1997, he had been working for several years on a CA-based screen saver called Bomb.
What I like about Scott’s work is the rich, organic feel of his mathematically-based generated images. I find that much CA and fractal art has a cold, clinical flavor that makes it feel like an illustration for a math text. Scott has found ways to twist and tweak such systems so that the images they produce escape out of “math space” and become interesting in their own right.
Electric Sheep combines the concepts of screensaver-based massively parallel supercomputers (ala SETI@Home), genetic algorithms, and fractal generated art (using recursive set functions that employ non-linear rather than the standard linear transfer functions) to generate morphing fractal animations that breed and reproduce. Scott’s server now contains thousands of these sheep, both the ones that were popular (received many votes while running on screensavers, and thus reproduced) and ones that weren’t. He has recently teamed up with the famous UCSC chaos theoretician Ralph Abraham to statistically analyze the properties of the sheep stored on his server, looking for correlations between formal properties of the sheep and aesthetic judgments (based on the popularity votes that drive the evolution of the sheep). They are currently focusing on fractal dimension as the correlate.
One of the more interesting design goals he has is to create expressive languages that limit what can be expressed to only the aesthetic images. “Expressiveness” and “limit” are obviously in conflict. One could create a very non-expressive language that consists of five menu choices among hand-crafted images on the one hand, and an extremely expressive language that lets you express any image, but, out of all possible sentences in the language, has vast landscapes of crap interspersed with occasional nice images, on the other (a bitmap is such a language). The hard task is to create languages in the middle, in the sweet Spot. Reminds me of the design goals of the editors in Spore, where they want to give the player freedom to create any creature/building/etc., but have a bunch of tacit design knowledge built into the editor so that everything that is created is nice.
At the end of the talk, Scott mentioned that his current project is exploring how to move beyond the expressiveness of the Electric Sheep genome (which consists of parameters for the recursive fractal equation) to something that is Turing complete. Again, the trick is to find a Turing complete language that brings the “nice” things to the front (whatever the aesthetics of such code creatures will be). Then the Sheep will really evolve lives of their own.