Biological Orthodoxy Flunks the Software Test

Biological Orthodoxy Flunks the Software Test

Our biologists have long taught the doctrine of Darwinism, preaching that biological innovations appear because of random mutations and natural selection. But there has never been any good evidence that any complex macroscopic biological innovation ever appeared because of random mutations, natural selection, or any combination of the two. Referring to speciation (the origin of new species) in an interview, the distinguished biologist Denis Noble states, "So I go along with the view that there has been no really clear proof that speciation occurred via gradual mutation followed by selection." In the book Evolution and Ecology: The Pace of Life by Cambridge University biology professor K. D. Bennett, this mainstream authority comments on speciation (the origin of species). He says on page 175, "Natural selection has been shown to have occurred (for example, among populations of Darwin's finches), but there is no evidence that it accumulates over longer periods of time to produce speciation in the Darwinian sense."

But are there any experiments that back up the idea that random mutations and natural selection can produce very complex visible biological innovations? There are not. The plain fact is that never in human history have humans observed any very complex visible biological innovation naturally appearing, for any reason at all. There are various cases of weird mutations that have occurred because of exposure to radiation, but such mutations are almost always harmful, and we never see any new complex biological innovations appearing because of such mutations. Scientists have tried bombarding fruit flies with radiation for years, and no beneficial visible innovations ever appeared because of such a thing. The longest-running experiment on evolution is Richard Lenski's experiment, but that involves microscopic bacteria, and certainly is no evidence that visible biological innovation can occur because of Darwinian evolution. Very little has resulted from Lenski's experiment, and his main claim of innovation is merely that his bacteria can now kind of eat citrate. Such a biochemical tweak isn't anything very complex.

There is another way of testing Darwinian claims: by trying to create software that makes use of natural selection and random mutations, trying to achieve software engineering effects by "the preservation and accumulation of successive slight favorable variations," to quote Darwin. When computer programmers started to try this decades ago, some of them were very optimistic. There were quite a few people who thought along these lines:

Why think of how much natural selection and random mutations have produced in the natural world: all the very complex innovations of biology such as eyes, ears, wings and brains! If we only put natural selection and random mutations to work inside the computer, we can unleash vast forces of creativity. It will be a software revolution. Instead of manually creating programs through human design and human labor, we will be able to evolve software in a Darwinian fashion.”

For decades, many programmers have attempted to get natural selection to work inside the computer. How successful have they been? We can find the answer in a recent paper by Roman V. Yampolskiy entitled 'Why We Do Not Evolve Software? Analysis of Evolutionary Algorithms.”

Yampolskiy examines attempts to create software by using Darwinian methods. He points out that there is a great deal of hype about such attempts that does not match the meager results. Talking about evolutionary algorithms (EA), Yampolskiy states the following:

"It is interesting to do a thought experiments and try to imagine what testable predictions Charles Darwin would have made, had he made his discovery today, with full knowledge of modern bioinformatics and of computer science. His predictions may have included the following: (1) simulations of evolution will produce statistically similar results at least with respect to complexity of artifacts produced and (2) if running EAs for as long as possible continued to produce nontrivial outputs, scientists would run them forever. Likewise, he would be able to make some predictions, which would be able to falsify his theory, such as (1) representative simulations of evolution will not produce similar results to those observed in nature, (2) researchers will not be able to evolve software or other complex or novel artifacts, and (3) there will not be any projects running EAs long term because their outputs would quickly stop improving and stabilize. With respect to the public and general cultural knowledge, it would be reasonable to predict that educated people would know the longest-running EA and the most complex evolved algorithm. Similarly, even schoolchildren would know the most complex digital organism ever evolved."

Later, after reviewing work in this area, Yampolskiy states that both of the predictions that should have proven true if Darwinism is correct have not proven true. He also states that all of the listed events to falsify Darwinism have occurred. Specifically, representative simulations of evolution have not produced similar results to those observed in nature; researchers have not been able to evolve software or other complex or novel artifacts; and there have not been any projects running evolutionary algorithms long term. Moreover, no one can list the name of the longest-running evolutionary algorithm or the most complex evolutionary algorithm; and no one can name any complex digital organism that ever evolved.

It is now 2019 and the “Darwinian revolution” predicted for software development simply hasn't occurred. Computer programs are still being produced by human design and human labor. There has been some progress in automatic programming by means of code generators, but such code generators don't use natural selection. The results of programs running “evolutionary algorithms” are rather trivial things that aren't very complex – things such as character strings. There is no very complex commercially successful computer program that was produced through any type of evolutionary algorithm.  Computer program using a Darwinian scheme can accomplish some useful things, but it is generally true that such programs could accomplish just as much with fewer lines of code if they were not to use a Darwinian scheme.  Our software engineers have not been able to mine any useful engineering principles from studying the ideas of Darwin, who seems to have had no knowledge of engineering or any interest in it. 

There is another way of quickly judging whether evolutionary algorithms have been a very important player on the current software development scene.  We can simply look at the computer science courses taught at major universities, and look for a substantial presence of courses on evolutionary algorithms. Such a thing will not be found. You can see here the catalog of 155 computer science courses taught at Columbia. None of them is a course on evolutionary algorithms or genetic programming.  Similarly, none of the 60+ courses on computer science taught at SUNY Stony Brook is a course on evolutionary algorithms or genetic programming. 

Yampolskiy considers some possible reasons why we still do not evolve computer programs by any kind of Darwinian process. None of his possible reasons is very persuasive, except for the last one he considers, that the “Darwinian algorithm is incomplete or wrong” and that “the inspiration behind evolutionary computation, the Darwinian algorithm itself is wrong or at least partially incomplete.” Yampolskiy concludes, “Our analysis of relevant literature shows that no one has succeeded at evolving nontrivial software from scratch; in other words, the Darwinian algorithm works in theory but does not work in practice, when applied in the domain of software production.”

This statement by Yampolskiy is mainly correct, although he errs in stating that the Darwinian algorithm "works in theory." To the contrary, we know of a very good theoretical reason why it should not work. The reason is that a random mutation is merely a micro-fragment of a biological innovation. A particular biological innovation typically requires multiple new proteins, and the gene for a typical protein requires 25,000 or more base pairs arranged in just the right way.  A single point mutation changes or adds only one of those base pairs. So the relation of a random mutation and a biological innovation is like the relation between a random keystroke (or random character) and a complex computer program consisting of 20,000 or more characters. 

Since a mutation is merely a micro-fragment of a biological innovation,  there is no way that nature could ever have a filtering effect by which complex innovations are produced because good mutations are accumulated. Such a thing is no more possible than writing a computer program that creates useful computer programs (or useful books or essays) by generating random characters and then "accumulating the good characters" while "discarding the bad characters."

biological innovations

The fact that biological orthodoxy has flunked the software test should not come as a surprise to anyone who considers how the actual process of producing complex innovations bears no resemblance to the imagined process by which Darwinian processes supposedly produce biological innovations.  Our evolutionary biologists attempt to persuade us that very complex biological innovations appear because of an accumulation of countless tiny changes, each of which is individually rewarded. Nothing like that occurs when software teams produce complex new innovations. It is not at all true that software developers "release to production" each day's code changes,  thinking, "Each little change I make in a work day will benefit the system." 

Instead a new software release is always a very orchestrated affair in which many different code changes (almost always from different programmers) must be combined in a very coordinated way to produce a total effect that is beneficial, with many complex interdependent parts being brought together (by an experienced software release coordinator) in just the right way to produce a benefit, often in a way so that multiple "chicken or the egg" mutually dependent dependencies are very carefully resolved.  Darwinism has never credibly explained how such huge amounts of orchestration and coordination could be produced through natural selection, which is the mere fact that fit organisms reproduce more.  

An example of biological functionality with mutually dependent dependencies is the cardiopulmonary system in mammals, and the related organs it depends on. Capillaries and veins and hemoglobin molecules are useless without hearts, which are useless without such things. Hearts also require oxygen from lungs. But the lungs require a constant flow of blood from the hearts.  And the hearts won't keep beating steadily without the autonomic inputs of the brain, which itself requires the heart to keep it bathed in fresh blood.  Also, the heart won't have energy without a digestive system, which itself requires constant blood from the heart. So it's "which came first, the chicken or the egg" mutually dependent dependencies all over the place, and we can imagine no credible sequence of gradual mutation-driven innovations by which such interdependent things could have originated. 

Another example of such a "which came first, the chicken or the egg" problem has been pointed out by biochemist Michael Denton. After discussing in great detail various aspects of feathers, he states the following:

Every aspect of the feather’s origin challenges Darwinian scenarios....Which came first: the cellular condensations that created the barb, or the apoptosis that separated them into discrete filaments? Only if both developmental processes are in place can the adaptive end of a branched feather be realized. 

Denton also calls attention to the difficulty of explaining the origin of red blood cells that have no nucleus (called enucleate cells). He states this:

There is no known intermediate type of cell midway between the enucleate cell and the nucleated red cells of any other vertebrate species....Where there is an empirical absence of transitional forms, envisaging plausible hypothetical intermediates invariably proves impossible. And so it is here.

If we attempt to produce a Darwinian result using a computer, it may help to clarify a logical flaw in the Darwinian account of how complex things originate.  Any competent computer programmer could create a function that provides a random stream of characters, producing output such as "ewqiqwe23023nsdagdsogsd" or "gsdib9witb3252bfeyery" every second. Now let us suppose that we try to use such a stream of random characters to produce useful works such as essays, blog posts, and computer programs.  Following Darwinian ideas, and the frequent suggestion in Darwin's writings that biological innovations are produced by accumulations of favorable random changes,  we will try to do this by "accumulating the good stuff" and "discarding the bad stuff."  Will this work to produce useful works such as essays, blog posts, and computer programs? It certainly will not.  It also will not work to create a stream of random words (randomly getting a line from a list of 100,000 words), and then following a principle of "accumulating the good stuff" and "discarding the bad stuff," or a principle of "accumulating the useful stuff and discarding the useless stuff." 

darwinism flaw

Why will such an attempt always fail? It's because at the character level and at the word level there is no way to distinguish between something good or bad, or something useful or not useful. All characters are equally useful, and all common words are equally useful.  So at the low level of individual characters and individual words, there is no way to apply any "survival of the fittest" or any filtering effect which allows "good letters" to accumulate into good literary works, or "good words" to accumulate into good essays or good computer programs.  Similarly, since a random mutation is only the tiniest fraction of a biological innovation (such as a millionth), without any intrinsic property of being good or useful in the sense of providing a survival benefit, there is no way for nature to produce complex biological innovations by "accumulating the good mutations" and "discarding the bad mutations." 

But it is rather easy to think otherwise. You might reason: if some biological innovation is useful (in the sense of producing a survival benefit), and the innovation is caused by 100,000 little point mutations, are not each of those mutations also useful? But to think that is to commit a fallacy called the fallacy of division, the fallacy of assuming that parts of a whole must have some property of the whole.  The parts of a whole do not necessarily have some property possessed by the whole. For example, while a college textbook is heavy, individual pages of that book are not heavy. 

If we commit the fallacy of division, we may reason that since some useful biological innovation built from 100,000 mutations is useful (in the sense of providing a survival benefit), therefore the individual mutations that built it are also useful in providing a survival benefit, and that nature can accumulate such mutations by "saving the useful mutations" and "discarding the useless mutations."  But after more careful thinking we realize that such a thing cannot occur, because the individual mutations do not have any property of being useful in the sense of providing a survival benefit, and such usefulness only arises late-in-the-game from incredibly complex and hard-to-achieve combinations of very many such mutations, combinations that are incredibly unlikely to occur by chance.  A principle of "good stuff piles up" works for the owners of ski lodges hoping to explain how they got nice snow accumulations, but such a principle is basically worthless for explaining the origin of cars, bridges, computers, ships, and complex biological innovations.