Monday, December 25, 2006

Evolutionary Design And Evolutionary Engineering: Emerging Technologies

I watched at Technology Review an excellent video about evolutionary engineering/design presented by Eric Bonabeau:

Evolutionary Design - Computers can provide design variations that no human would have imagined.

Bonabeau gives a nice overview of evolutionary computation applications, such as a ship control system and drug design, both problems are difficult to model through mathematics itself, so it is interesting to evolve solutions for that kind of problems.

It reminds me Professor Hans-Paul Schwefel and his approach to evolve a two phase flashing nozzle. Since no simulation model was available at the time an experimental optimization¹ had to be performed, using a so-called (1+1) Evolution Strategy without recombination, but that ES had evolutionary operators of gene duplication and deletion. I guess that was one of the early evolvable hardware experiments.

It is amazing to see how evolutionary computation evolved since its beginnings when the Cybernetics Zeitgeist was at its apogee.


¹ Experimental Optimization means that you have a real physical, mechanical, electrical, optical, chemical, etc, object or some model, like physical, of the real object - and absolutely no computer - and you want to alter some of its properties (size, charge, temperature, pressure, etc.) in order to achieve an improved performance according to some criterion (criteria). Before the end of the 1960s Ingo Rechenberg and Hans-Paul Schwefel did not think of using the Evolution Strategy as a numerical method. Computers were not yet available in larger numbers, and if so, their power was rather weak.

Saturday, December 23, 2006


I found some months ago two very interesting audio presentations from David Fogel and other from David E. Goldberg. According to Fogel (hear here the presentation or download it), what works best is the synergistic effect obtained by combining simulated evolutionary learning with human learning. As an example of this latter approach he tells the story of Blondie24, a checkers program supplied with only minimal information that was able to reach high levels of expertise thanks to the application of genetic algorithms. Fogel looks at other real-world applications in industry, medicine, and defense, as well as speculating on the future capabilities offered by these combined learning mechanisms. It is a nice example of evolutionary computation application.

Goldberg's presentation is about the evolution of genetic algorithms through the 1990s, when GAs had their Warhol 15 minutes of fame, and where they are today. It is an interesting overview of genetic algorithms (although I disagree on some parts of his presentation), why they did not solve some classes of problems (maybe this paper here and this other here can help to understand that why), the results got by the first generation of genetic algorithms and, of course, the results obtained through new generation GAs, such as hBOA (Hierarchical Bayesian Optimization Algorithm). He also talks on the comparison made between a Simple Genetic Algorithm (or SGA) and hBOA on an antenna design problem. There is, of course, Goldberg's famous quote which he uses to ask why when the subject is conceptual machines, such as genetic algorithms, persons often want to see proof and rigor, while other machines, such as airplanes and toasters, are frequently used and persons do not ask for rigor and proof, here you are the quote:

"Nobody has ever formally proven that an airplane flies, but we all entrust our lives to them/it."

Yes, I agree that no one has ever proven mathematically/formally that an airplane can fly (or a toaster can toast), but an airplane (or toaster, fan, towel, shoes, etc) is not an algorithm! When we talk about evolutionary algorithms, we are also talking about algorithms (I guess it is clear) and we cannot disconnect an algorithm from its natural features, such as convergence proof and complexity analysis. If we disconnect them, the situation tends to get worse, because we need to consider those inherent features/characteristics to make a rigorous analysis of the algorithms' behaviour (it is valid for genetic algorithms too). Inevitably, that task needs rigor and proof. I suppose that would be difficult to convince people, mainly computer scientists, to use an algorithm which does not have all those stuffs I said. (If you want to read a more detailed version of that quote, please, see here.)

Monday, December 18, 2006

A Small Bioinspired Spy.

I read at Air & Space about a mini-copter spy inspired by maple seeds. That mini-copter will be used on spy actions made by military soldiers. But the project is still facing some technical problems, such as rotation stress and which thruster would be interesting to use.

That mini-copter is the first of its kind and was developed by the famous Skunk Works division from Lockheed Martin.

Tha small spy is another invention that reminds me Ingo Rechenberg's approach to solve (often difficult) problems and we should remember that evolutionary algorithms are bioinspired too.

Friday, December 08, 2006

Car Control

Togelius has an interesting post about physical car control. See here. It contains a nice video of simulations.

The control is made through a "hard-coded" controller which has only 15 lines. But his groups would like to evolve another one, probably through evolutionary neural networks.
Charles Darwin Has A Posse Check Google Page Rank