>>11
It's adapted the the very flaws in the hardware that it resides on. It doesn't get much more optimized than that. Consider the fact that you breathe through the same tube that your food passes through. That makes it possible to choke on food. This is true for all vertebrates that I've ever heard of, but it wasn't always the case. Many extinction events ago, during the Cambrian explosion, there were animals that had separate tubes for air and food (and also many interesting body plans (that weren't just two legs + two arm things + a torso + a head) that are now gone). But... they died off, probably because of a meteor or volcano or some sort of misguided reptilian Hitler that had to exterminate the unfit or something. Who knows. So life was stuck with an easily choke-able lifeform. It's hard for a genetic algorithm to break out of local extrema, so it just had to work around it, and thats why you have the hangy-thing in the back of your throat, because a gag reflex was the best that evolution could come up with without a major shift in body structure.
So
oooo, my point with that ramble was to bring up fitness and local maxima. You won't move out of the local maxima because to do so, you'd have to decrease fitness. You'd either have to change the fitness curve (a change of environment, like, say, an ice age in real life would) or hope that random mutation would get you out. Since it's not totally different, running the selection algorithm on the same type of hardware would be only a slight change to the fitness curve, and would probably get a working design after a few hundred generations (like breeding antibacterial resistant bacteria by changing it's environment to include antibacterials).
To solve the issue of magnetism, you'd could, I suppose, use a simulator that didn't supply the details of induction, or select for designs that don't use magnetism somehow (by simulating every design?). The design wouldn't be as efficient as the one performed on real hardware though. Take a look at the weird antennas that NASA got at the bottom of the site I linked. Pretty kewl, but it's likely that such a simulation would take a few years on the computers you and I have. ;_;
like it depends on the details of the hardware and isn't an algorithm per se
I think that you are expecting the wrong thing here. At it's basis, a genetic algorithm is just another searching algorithm designed to find a solution. It's much faster than an exhaustive search of the solution space, but at the cost that it probably won't ever find the best answer, only a good-enough answer (one that satisfies the parameters of the selection algorithm). It would have to be a pretty simplistic problem to ever stumble on the global maxima, like the only requirement being that it select between two tones. Think of it as a binary tree search, where, once the tree is splayed, the search space is reduced by half every time you traverse a node, except you don't know what you're searching for and you don't know what's contained. But if that list is huge, it's still going to take a dickload of time.
I think you're interested in something like executable DNA to find actual algorithms. It's unlikely that it's ever going to do anything that you want. You'll probably never even stumble upon an algorithm that will produce the average of an arbitrary list of integers, since it's going to optimize for your training data. That's a problem similar to early neural nets, which caused much humiliation. They trained their network on images of tanks and images of trucks (to tell the difference; keep in mind that this was cutting edge, top secret military shit back in the 1620's or whenever, sometime before the AI winter) until it could identify them perfectly. But it couldn't work on any other data set. As it turned out, they took the pictures of the tanks on a rainy day, and the pictures of the trucks on a sunny day, and all the percepitron had learned was to tell if the image was light or dark. And thus funding was pulled and AI researchers were made the laughing stock of computer science for the first time. But it would by no means be the last.
The moral of that story is that you're probably fucked if you expect it to produce anything useful beyond a very small problem space. Sorry. A more realistic goal would be to write something yourself and let it be optimized. Let's work on that in this thread.