The name Electric Sheep comes from Philip K. Dick's novel "Do
Androids Dream of Electric Sheep". It realizes the collective dream of
sleeping computers from all over the Internet. It's a distributed
screen-saver that harnesses idle computers into a render farm with the
purpose of animating and evolving artificial life-forms. The project is
an attention vortex. It illustrates the process by which the longer and
closer one studies something, the more detail and structure appears.
All the software is open source and users may participate in the network
freely and anonymously. Like a peer-to-peer network, the server only
coordinates the clients. The real work of creation, consumption, and
judgment of the sheep happens in the users' computers and minds. In the
current version the clients download animations from a central server,
and this is the bottleneck that limits its growth. The next version
incorporates a gnutella module and distributes the bandwidth load much
as the computational load already is.
The screen-saver is a window into a visual space shared among all users.
Each animation is the phenotype of an artificial organism, an 'electric
sheep'. Clients download the MPEG sheep and display them one after
another in a continuous, ever-changing sequence.
Each sheep is specified by a genetic code. The codes are chosen at
random or are derived from the current population according to a genetic
algorithm with mutation and cross-over.
Users may vote for a sheep with their keyboard. Popular sheep live
longer, and are more likely to reproduce. Hence, the users' preferences
provide the fitness function for an aesthetic evolutionary algorithm.
Electric Sheep investigates the role of experiencers in creating the
experience. If nobody ran the client, there would be nothing to see.
Eons ago, tiny irregularities in our universe became centers of
accretion and eventually grew into stars. A parallel process unfolds in
cyberspace. It starts with an idea.
The sheep system exhibits increasing returns on each of its levels. As
more clients join, more computation becomes available, and the
resolution of the graphics may be increased. The more people who
participate, the better the graphics look.
Likewise, as developers focus more of their attention on the source
code, the software grows new features and is ported into new habitats.
And as more users vote for their favorite sheep, the evolutionary
algorithm more quickly distills randomness into eye candy.