In this podcast I get on to the next step in the blind watchmaker development, assuming the first three steps described in the last podcast are meeting no resistance.

Sensory observations are to be communicated back to the genome interpreter in the form of instructions that return nuances.

We could choose among different subroutines, but in this episode I try to make a case for introducing symmetry.

Blind Watchmaker

  1. binary genome
  2. nuances
  3. cost
  4. forking
    • Instruction return values
    • void or null means continue normally
    • return nuance means make a choice
    • fork could choose different genome paths
    • ... but would it be legitimate to introduce symmetry??

Technorati Tags:

In this podcast episode I get into the first details of how the Blind Watchmaker works, since the design seems to be solidifying into something that looks tight and actually has proven to do something, building D@H bodies. The next step, as I said at the last Greythumb gathering, is to get the blind-watchmaker code to also manage behavior.

The plan now is to go step by step from the very basics of the blind watchmaker development, and see if people can contribute ideas and maybe code as we go. At least people can stop me from doing stupid things, if they're listening.

Blind Watchmaker

  1. Generic Binary Genome & Instruction Sets
    • Bit strings
    • Invented but remembered
    • Short bit string --> method call
  2. Nuance parameters (with bit precision)
    • Spectrum between two ends
    • They come from the genome
  3. Cost
    • Default is bit-length
    • Instructions represent expenditure
    • Observations are acts too
  4. Technorati Tags:

One of my first videos got a spike in viewership. Thanks Boing Boing and Make Magazine!

First Boing Boing and now Make Magazine.

I hope it brings more people into the community.

Technorati Tags:

The project just got some attention from Cory Doctorow (my son and I both just read his latest book) on Boing Boing!

Technorati Tags:

This podcast episode contains some audio of the three speakers at GTNL 2 in Den Haag. I hope you can overlook the audio quality. I'll do better next time.

Technorati Tags:

The second Grethumb gathering in The Netherlands was held at the KABK in Den Haag, in a really nice auditorium with a huge projection screen. The room was a little hard to find but Joost Rekveld, who teaches there, helped by sticking signs to the wall with pointing arrows. Eventually about 25 people found their way to the auditorium and we got started.


First off was Rudolf Penninkhof, who gave us a talk about Imagination Engines, describing the approach taken to neural networks. Rudolf had music playing in the background which was generated by their technology, and he expressed his regret that although the technology and the approach was extremely interesting and had great potential, it was not open source so you can't really dig in deep.

Rudolf had some good introductory video on the subject, some long and philosophical ones, for those interested.

Then Anne van Rossum (pronounced Ah-nuh, and yes it's a normal male name in the part of NL where he comes from) showed us a nice collection of movies about the Replicator project, which is central to his pursuit of a PhD degree. Anne told us about his adventures with this fascinating European project in which self-configuring robots are the dream they're working towards. Modules are to find each other, click together, network with each other, and form a body to accomplish some specific task. They would afterwards simply dissasemble and reassemble in another configuration.

Some of the most interesting parts of Anne's presentation were the videos and the stories about a 128x128 cell visual system that was a different kind of hardware. It was visual hardware that worked on the basis of "spikes", like when our neurons get hot and bothered and then eventually flash the accumulated energy in one shot. The fascinating effect that we saw was that only changes in pixels were registered. Imagine that looking through sunglasses from a distance makes it look exactly like the sunglasses are clear. Think about that. We saw it, and talked about how it is biologically inspired.

Finally, I got up and took the group through an accelerated history of Darwin at Home, going right into a demonstration of the program that I just got running a few days previously. I showed Bits Building Bodies which is the first application built on the basis of the fluidiom-core package I'm distilling from all the different D@H programs built in the last few years. This application represents the first application of the blind-watchmaker code that I've been developing for the last couple of months.

The demonstration showed a growing Darwin at Home body being built step-by-step over and over again, while along the top of the screen you could see the binary 00101001101011011010 genome as it is being read. The cool thing about it is that you can repeat it and watch the same building happen. It's genome building phenotype.

For the coders in the audience, I then proceeded to show the Embryology class where the blind-watchmaker annotations describe how the bits cause things to happen.

I ended off describing where I want the project to go now, as a kind of virtual world scenario where people can meet and chat while they watch things evolve. I asked them who could help me bring the evolution meme to as many people as possible.

Tamas Mahr, my Hungarian programmer friend made an insightful funny comment afterwards as we were walking downtown for a beer. He said that this binary scripting language knows no syntax errors. I thought that was a safe language to have a blind-watchmaker code with.

All in all, this was a very successful get-together, and some new faces appeared. There's a potential, according to Joost, that the Media Arts department of the University of Leiden may well be willing to host the next Greythumb NL.

Technorati Tags:

Done with building the tensegrity by hand, I've decided that for now it's too difficult for me to evolve anything interesting with tensegrity shapes. There's a lot of design to be done with them, And I'll be continuing that most definitely, but for evolution I'm going to search elsewhere

In this episode of the podcast I talk about this and the direction that things are going now. I've returned to the code that makes up all the previous versions of Darwin at Home and I'm working intensely to distill the best things from them all into a toolbox that can be used to build a number of applications.

Next tuesday the 23rd of September at the Dutch Royal Academy of Visual Arts in Den Haag we will be holding the second Greythumb Netherlands gathering. If you're interested, please join the group online.

I wanted pretty badly to present something interesting at that gathering, and finally my work of the last while is starting to pay off because I've been able to build a program where "bits build bodies". The blind watchmaker project with its genetic system, is now connected to the new fluidiom-core classes I've been distilling, and producing lots of interesting geometrical phenotypes.

Technorati Tags:

So there, I finally got it out of my system. Some people (especially my architect friends) tend to suggest that what I do is too virtual, and I'm really starting to understand what they mean by that. I've actually built a physical tensegrity, and it's great fun to dribble it on the table. When you tap on the top it starts to bounce back and if you do that rhythmically you can move the tower around, bouncing it like a basketball. Good fun.

It sure ain't easy for a coder like me to get something physical built! I have a number of friends who are really good at building physical things, but I'm definitely not one of them. Typically when I build things the result makes me wish I had hired somebody to do it instead. But this time I've apparently outdone myself. Even the architects are impressed.

It's this virtual world that I find so much easier to build in, and one of the main reasons is that the virtual model avoids "tangles", since things just pass through each other. Not so in the real world, working as I did with pieces of wood, and little nylon rings and cable. I had to develop the step-by-step techniques to build this thing without getting things all tangled up and I can tell you that it took a few iterations!

The way I approached building this tensegrity was pretty unique, I think. My virtual model (seen here at the right) was exactly what I used as a basis. I set it up so that I could read the exact lengths of all the cables, recorded them, studied how it all fit together by looking at the structure in stereo (set it up in OpenGL, with two eyes, two points of view, then you see the depth). Then I mass-produced the parts of the tensegrity, cutting things precisely to the right measurements. After that I built individual three-stick modules using the pre-cut nylon rope assemblies, and when I had a bunch of modules (alternating right-left-handed) I was able to quickly assemble the tower by making six connections where each module joins the next. The whole thing took only a few hours, once I had figured out the system, and failed a couple of times.

Anyway, I did it, and I'm really proud of it. I can pick this thing up and put it into peoples' hands so they really know what tensegrity feels like.

Click on the picture for a big version.

My friend Hans Moor would describe the whole process I went through building this as a kind of "evolution" involving many steps of "selection" to get to the end result.

Now that I've built it I'm itching to get back to building evolution software. About time to put out another podcast as well.

Don't forget that there's a new Greythumb gathering set up, and it will be happening in the Royal Academy for the Visual Arts in The Hague on the 23rd of September. We have at least three speakers, so don't miss it!

When: Sept 23rd, 18:00-21:30

Where: The Academy

In this episode of the podcast I once again go for a walk in the bush, and this time talk about the change in direction that the Nuance Engine has taken, as well as about the very first Greythumb Netherlands get-together.

Here's a picture of WORM, where Greythumb NL was held in June:

..and here is the duck (a WORM-sponsored work of art, for you cultural barbarians!)

I've decided to change the name of the project to Blind Watchmaker because I no longer like the association "engine", and it's one of the most thought-provoking archetype memes that Dawkins introduced with his book of that name.

I'll save going into the actual Blind Watchmaker code until I've got it stable enough. It's going to be a neat system, which lets you submit instruction sets and takes it from there.

ecodesic

This is the first crack at creating a mini-universe in which the Blind Watchmaker system will be demonstrated. The little balls you see represent creatures that move around on the surface of the planet. Listen to the podcast to hear about how I plan to try and turn this into a Blind Watchmaker programming competition.

Technorati Tags:

There's something about a ray-traced image that is so beautiful! Things can be shiny, in which case all the reflections are taken care of perfectly by the ray-trace algorithm. I put some time in yesterday to get code up and running that generates POV-Ray scripts based on the tensegrity object model, and here is the result:


Click here to see the full-scale image.

It kind of reminds me of some of the paintings of Salvadore Dali with the vast empty spaces and the precise shadows.

Soon this same piece of code will be employed to make movies of the growing tensegrities. I suspect that the vast majority of visitors to darwin@home are not the kind of people who would be interested in running a program to see stuff, so it always makes me happy to be able to produce accessible images and films of these things.

There's a New Yorker story on Buckminster Fuller which talks about how nutty he was.

Technorati Tags:

Let's try something new! I found out about a trick that allows me to put this JOGL application into the form of a Java Applet which makes running it more straightforward since it just appears on a web page.

Please give the new version of the Tensegrity World Applet a try and let me now if it works for you without a hitch. You are asked to approve the JOGL extension which comes from Sun Microsystems, but that shouldn't be a problem.

This applet shows growing tensegrities, and they are growing on the basis of "Cell" objects which are each attached to individual tensegrity segments. So far the code of the cell is very simple. It just waits a short while, sprouts a new segment, and then vulcanizes itself. The new segment is given a new cell, which does the same thing only it vulcanizes slightly earlier than the previous one. Eventually this will all be orchestrated by a genome.

In this episode of the podcaset I talk about what this applet is doing, and what it should eventually develop into. Lots of work has been going into getting the tensegrity code prepared to work with the Nuance Engine, although this version doesn't yet show the connection. That will take a little more work.

For those of you in the Netherlands, don't forget the upcoming Greythumb NL Gathering at WORM! I hope to see you there.

Technorati Tags:

This is just a short podcast to let listeners know about the first gathering of Greythumb here that I've been able to set up with the WORM organization, thanks to Hajo Doorn who runs the place.

The event is on the agenda so hopefully even more people will come than I specifically invite, since word will spread at least a bit.

My hope is that we can have a shot at creating a "Scenius" by getting these people together in one place.

Technorati Tags:

In this episode of the podcast I continue where I left off last time, but this time it's about making the first connection between the nuance engine and something else. Needless to say, the first thing that deserves trying is to somehow get the nuance engine to build tensegrities! I discuss the approach that seems to make the most sense.

Also, it appears to be possible to set up an applet that uses OpenGL via JOGL without having to use Java Webstart. The nice thing about applets is that they just sit there on a web page, rather than you having to launch them. (..and ever since browsers started storing JNLP files instead of just using them to launch and keeping them hidden, Webstart has become a slightly dirty process, leaving droppings behind). Next version should be an applet with a text field for you to type binary numbers 0101010010101010, which are used as genotypes to generate tensegrity phenotypes.

Technorati Tags: