Back in 2016, @Eddie gave a challenge, and I answered in a post I want to recover here, continuing the conversation with @EricMH, one of Dr Robert Marks’ PhD students (of the ID movement). @Dan_Eastwood you might want to see this too.
[original post here: Intelligent Design - Open Forum - The BioLogos Forum]
Before diving into this, I should emphasize that in Biology we do NOT think that randomization + selection is enough to explain the full diversity of life. That simple version of Darwinism was falsified a long time ago. It turns out other mechanisms are quantitatively more important.
Still, this is a very strange request. Isn’t the answer to these questions well known?
Is there anyone out there who has, in a professional capacity, actually written an evolutionary algorithm or Darwinian algorithm, who will take the personal responsibility (sans Wikipedia or other internet links) of defining or explaining these terms? And of providing a very clear example where, say, a toaster designer, or a designer of a new hypodermic needle, was totally stumped until he/she programmed a computer to use an evolutionary algorithm, and thus came up with a better toaster or needle?
So this is exactly what I have my PhD in @eddie. One example that we talked a lot about during my undergrad was the use of genetic algoirthms to solve difficult problems in design (e.g. aircraft wing design http://flab.eng.isas.jaxa.jp/member/oyama/papers/SMC99.pdf which has been recently updated http://enu.kz/repository/2011/AIAA-2011-5881.pdf). You can read about this here on wiki Wing-shape optimization - Wikipedia.
More close to home, one of the most widely used drug design software packages: DOCK from UCSF, used a genetic algorithm to fit molecules in protein pockets http://dock.compbio.ucsf.edu/. This program wasted about 2 years of my life in graduate school (for genetic algorithm unrelated reasons).
Now, of course, I looked on the internet to get those URLs, but I knew of these papers before searching. Remember, I am a professor and this is squarely within my domain of expertise: machine learning and artificial intelligence applied to biology.
Right now, genetic algorithms (i.e. Darwinian algorithms) are not used frequently because we have better algorithms, like stochastic gradient descent and simplex optimization. GA are most useful when these other methods do not work so well (because analytic gradients are not available or gradients are bad hints) and/or massively parallel resources are available (because genetic algorithms are trivially parallelizable). That being said, in machine learning, it is generally accepted that genetic algorithms are extremely effective in most problems (especially if there are multiple solutions), but have two limitations:
They are too slow to be preferred over gradient descent based methods when only one processor is used. A true “evolutionary” algorithm (remember) would automatically scale processing power to deal equally fast with a population of a million and of one hundred (generation times are the same no matter how large the population). In simulation, however, generation time scales linearly with population size, so this makes GA very slow in practice.
They are are good at getting good solutions, but sometimes struggle in the last steps to get very high precision solution. This is one way in which simplex search does better than GA, because it automatically scales down its steps as the right answer is found.
In context of evolution, neither of these limitations is relevant. In biology, generation time is independent of population size, approximate solutions are fine, large populations improve the search well beyond what is possible with a computer, there are multiple solutions, and the fitness landscape might be rough with little information. The biology design problem is different than the human design problem. GA is much better for biology than it will ever be for human design problems.
Of course, nothing I’ve written here is new knowledge. It is obvious to anyone in the field. I thought it was well known, even in the ID community. Even Dembski’s work references this at times.
I know scores of ID proponents who are in the software business, many of them having Ph.D.s in electrical engineering, computer programming, etc. They are all skeptical that any genuinely Darwinian programming can produce anything useful.
Of course they will be skeptical. This doesn’t make them right. And I have no idea what “genuinely Darwinian” means. The algorithm is randomization + selection → design. If that isn’t Darwinian, I do not know what is. It is not an elegant solution, and it can be slow to use in a computer (because it scales linearly with population size) but it is very very effective. And biology does not even rely exclusively on this strategy.
[The follow clarification: Intelligent Design - Open Forum - The BioLogos Forum]
Clearly the ID people acknowledge the existence of genetic algorithms, and they also acknowledge that these can be useful. So where I expressed doubt that genetic algorithms could do anything useful at all, I was misstating the ID folks’ position. However, I was correct in saying (in a clumsy, unclear way) that they have doubts whether the most successful genetic algorithms are “purely” Darwinian, i.e., they have doubts that the successful genetic algorithms completely eschew “tuning” of any kind. But I don’t want to make that point myself, lest I stumble in the expression. I will cite one article as an example of the ID critique of genetic algorithms, in which the virtues of the algorithms are granted, but cautions regarding some claims for them are expressed:
I do not expect you to agree with the conclusions of the article, but at least the article should make clear to you some of the ID remarks on genetic algorithms that I was conveying in an inadequate and unclear manner.
As I understand it @EricMH’s usage of these terms (which may be idiosyncratic), the examples of evolutionary algorithms I put forward shouldn’t be able to work. I’d like to hear how their theory makes sense of the these results, where darwinian algorithms are able to design things to difficult for humans to design on their own.
@eddie, for the record, thanks for issuing the challenge. I still remember this all these years later.