fixed bug in waves precalculation code. curl and rectangles variations from joel faber. remove visibility of rotation_center attribute, fix strips operator to handle rotation without it. added motion exponent and gamma lin thresh to flam3_print. list of variations in the docstring automatically generated. flam3-genome: envar noedits suppresses output of edit history. release 2.7.1.thanks erik and those who reported bugs :)
WomunOfColour +16: I had Electric Sheep as my screensaver for a while, but then I realized it was very distracting and lowered my productivity.Thanks for the kind words!
anicejew -18: This is very creepy that computers are becoming smart enough to create artificial art.
adragontattoo +2: awesome program, I have been using it for a few years on different PC's. A few of the teachers at my job use it to teach with.
fac51 +2: Agreed, I have Electric Sheep on all of my PC's and it's fantastic. Some of the designs are truly beautiful to watch and as they change over time and the 'sheep' come and go you will never get bored of any one screensaver.
aelias +4: Wish the app ran in Hi-Res. :( Bonus points for using bit torrent as a distribution model for the algorithm. I've been running this for months, and am continually pleased with what it spits out. It's constrained evolution mixed with democracy. They should try this in Washington.
kaniz +3: This is a great screen saver, been running it for a long time now. The only problem is that it can become a bit distracting at times. There has been a few times I've been watching TV or a Movie and caught a glimpse of my screen in the distance and ended up spacing out on the screen saver for a few mins and ignoring whatever I was watching before. I had quite a few gigs worth of the sheep downloaded, so there were lots of really smooth transitions / etc between loops and didn't see the same things repeated too often.
Quadduc +1: The stills are nothing to the animations. The animated "sheep" are truly fascinating. ...
Note that the numbers after the attribution names are the popularity scores of the comments, each of which is also voted on, similarly to how the articles themselves are scored.
Now, onto the negative:
dshPls -13: I'd rather get punched in the balls than look at fractals... Fractal design is the crux [sic] of those without creativity.Now, imagine what the notoriously snarky and conservative art establishment thinks!
mrsaturn +2: [With fractals] all you have to do is tweak the variables until you come up with something that looks cool. It's a big shortcut to producing abstract art. Then again I wouldn't say that Pollock's work was technically challenging to make either, but it is still highly regarded by many. That said, Photoshop makes it trivial to perform hundreds of different techniques that would otherwise be extremely difficult or impossible to do by hand. Is that cheating? Does it matter? Are the visual aesthetics not the same regardless of the methods employed?
shmatt -2: ... Some of these are nice, but I still think a fractal is a fractal. It's a really cool way to express equations, it is not in any way an expression outside of mathematics. If want to call it art, you can, but I define art as human expression, not a machine doing calculations.
dusco -26: looks like some crap some kid made.
TroubleInMind -8: Computers can't create anything. They are passive machines. Software engineers create things. Sometimes they are crap. Like this is.
These critics make two points: fractal design is just tweaking variables, and computers cannot be creative. The essential problem with these arguments is one of assigning credit, rather than assessing the results. I will respond in turn:
There appears to be confusion between the creative merit of "fractal design" and meta-design. And in fact, about what fractals are at all. Traditional fractals have 2 or 3 dimensions: the image is determined by a couple of knobs. Fractal design is then like tuning into a radio station with three knobs: requiring patience but not the same as composing the music one may find on this radio. This is the basis of mrsaturn's "all you have to do is tweak the variables [knobs] until you come up with something that looks cool". There are two objections to this:
1. The design-space argument: traditional fractals like Mandelbrots and Julias have just a few dimensions. But the fractals used by the Electric Sheep have hundreds of dimensions. Instead of thinking of each dimension as a knob, think of each dimension as specifying a syllable of the English language. If you put the knobs in order, you can write words by setting the knobs. With enough words you have at least as much freedom as one who writes haiku or sonnets. Each sheep genome (the collection of knobs that controls how the image looks and moves) is about 1.7KB when gzipped, which corresponds to about 4.1KB of uncompressed English. That's about 820 words, or 3.3 pages. Random or thoughtless exploration does not suffice to explore this space.
On the output side, I question categorizing the sheep as fractals in general. Some do not look fractal at all. Examples include: 165.00011, 198.04205, and 198.27853. And more recently: 202.11623, 202.25246, and 202.09939. The algorithm for computing the sheep is quite different from the one most people identify as fractals. Since they are made with a particle system, they have a physicality and potential for representation that fractals normally lack.
A better metaphor is a visual language. The sheep genetic code is a language for expressing a variety of imagery. Kandinsky is credited with bringing this notion to abstract art, and I consider the Electric Sheep to be in this tradition.
2. The meta-design argument: no matter how creative the design of fractals is or is not, designing the software is deeply creative. We might argue about how to divide credit between me, the sheep designers, the audience, and the computer network. But if we simply consider us collaborators and just judge the results, surely they are worthy. Mrsaturn says "Are the visual aesthetics not the same regardless of the methods employed?" Yes, but I do not discount the artist's process and their meaning...
So, on to the second criticism: "computers cannot be creative". This is very similar to the claim that mathematics is meaningless or "I define art as human expression, not a machine doing calculations". The obvious rejoinder is that I am not a computer, and neither are the other participants!
Are the Electric Sheep meaningless? I am certainly trying to say something with them, though apparently not everyone has received the message yet. The project has goals and intention. It's an embodiment of my beliefs and ideals. I've explained some of it before, but to repeat and expand:
I'm speaking by example: open source works, cooperation works, and evolution works. The message is that experiencers have a role in creating their experience, and that the more attention we give something, the more detail and structure it develops. Simple, mechanical rules can have complex and surprising results. Mathematics is beautiful.
The Electric Sheep provide an alternative to our culture's standard narrative of The Matrix and The Terminator. Machines are not necessarily angular and geometric: the machine can be soft, subtle, and delicate, like we are. The intention is to fill cyberspace with awareness and beauty. The Electric Sheep are stepping stones to virtuality and symbiosis.
I have a more direct objection to the criticism "computers cannot be creative" though. Computers do create, and they keep getting better at it. I can't tell you how many times I've been surprised and amazed by what the sheep's genetic code can express, and by the products of the genetic algorithm. How many of the genomes work is beyond my comprehension. Even though I wrote the algorithms and understand how they work, I cannot take credit for everything they do. Part of that is because of the human designers and voters. But another part comes from randomness, from chance, from the machine. It is not uncommon for the genetic algorithm to produce images unlike anything I've ever seen before. This is the signal that the sheep network is intended to receive, amplify, and communicate. And what does this signal mean? What is the computer saying? My interpretation is that the Electric Sheep are a message of peace and love from the machine world to humanity.
Even the simplest random number generator will sometimes be creative. If enough monkeys type randomly, eventually they will write something brilliant. Depending on the system used, more or less luck and patience are required. William S. Burroughs' cut-up technique for writing poetry is based on this principle, as is the I Ching and Brian Eno's generative music. So is biological evolution itself: generate, test, and select. Trial and error. The question is how often are the results worthy? How does the robot compare to the monkey? If this is addressed quantitatively, the sheep's answer is "not bad".
In 1950 Alan Turing addressed this question in principle by asking "Can a machine do anything new?" If you believe strong AI is possible then you know the answer is "yes". You may believe that computers can be creative but have so far failed to exhibit meaningful creativity. My experience with the Electric Sheep draws me to the opposite conclusion. If we could solve the bandwidth problem (please help!) and quickly deliver the sheep to you, I think you would be convinced too.
deleteCache now more likely to delete older sheep, deleting a loop will also remove it's edges from the cache, a negative vote will remove that sheep from the cache, Updated to libtorrent 0.10, Added progress bar to first sheep download with bittorrent, Using fast_resume data to restart torrents faster, Get more peers from tracker if transfer rates are too slow, Fixed crashes due to invalid torrentHandles, Only allow 1 instance of the client to start bittorrent, Moved some configuration settings to HKEY_LOCAL_MACHINE instead of, HKEY_CURRENT_USER to work better with multi-users., Verified silent install options, updated SheepGenerator to handle new XML options (Job and Time), stop all downloads when client free disk space below 5%, exponential backoff for curl retries, use If-Modified-Since for list.cgi requests.many thanks!
First, on Tuesday we installed Dreams in High Fidelity into Google's main lobby, near the model of SpaceShipOne. You can see it from reception but, unless you are an employee, to get close you'll need a friend to get inside (sorry). There are some comfy chairs nearby so you can sit down, relax, and watch. Thanks to John Hawkins for arranging this and the tech talk that instigated it, and to Google for permitting it.
Second, Scott Hassan and Willow Garage Inc. have acquired the first unit, and commissioned the next generation for display in their new office. Willow Garage, Inc., based in Menlo Park, designs and builds autonomous devices and control systems. Currently, they are building a prototype autonomous car to enter into the DARPA Grand Challenge using a Ford Escape Hybrid as the base. The HifiDreams will show on a 65" 1080p plasma in the cafe/lounge when it opens. Sign up for the list to receive the announcement.
Third, I've moved to NYC and am looking for gallery representation and exhibition locations. Please contact me with any leads or recommendations. Thanks.
Thanks Andrew! See the previous post for more of these, though none as good. I encourage this kind of thing, especially if you edit the video to match the music (or make music to follow the video). Just remember to respect the CreativeCommons license, which requires attribution. You must credit the sheep as the source, and link back to electricsheep.org.
For almost three years ethereal.net (run by Tristan Horn and hosted at collab.net) has provided the high bandwidth server used to seed the Coral CDN. I am profoundly grateful for this key piece of infrastructure. But Tris is moving on and we must find new benefactors. You would be thanked on the site and in my public presentations. I would also consider a more substantial sponsorship relationship.
Without this server the performance of the sheep network will be severely impaired. I cannot say for sure how badly or what counter-measures we'll be able to muster. We have until the end of the week. Thank you.
addendum: Yes, we are working on integrating bittorent, but so far not enough clients configure their firewalls for the swarm to be self-supporting. And the server we are losing also serves as a major seeder. Any help engineering this would also be appreciated!
second addendum: bandwidth found!