Coevolution and Dynamic Fitness Functions

Work in evolutionary computing, evolutionary algorithms, and genetic algorithms seems to be a thorn in ID's side. In a number of places William Dembski has argued that various computer simulations of evolutionary processes tell us nothing useful about biological evolution. By modest extension, of course, computer modeling in any science is tossed out. (Too bad for the physicists in the crowd.) But Dembski's argument fails once again, for a familiar reason: profound ignorance of the relevant literature.
For example, in section 4.10 of No Free Lunch Dembski argued that genetic algorithms are inappropriate models for undirected biological evolution because (he claims) the fitness function in a GA must be "fine tuned" by the programmer. Richard Wein ably rebutted Dembski's argument in "Not a Free Lunch But a Box of Chocolates," and David Wolpert, in "William Dembski's treatment of the No Free Lunch theorems is written in jello," specifically invoked coevolution in his critique of Dembski's misuse of the NFL theorems. More recently, in what appears to be a nascent blog, Dembski made the same claim about the lack of utility of GAs in understanding biological evolution, though he based it on a different foundation. He recounts a conversation with John Koza, a pioneer in evolutionary computing, in which he asked Koza whether he knew of any research in evolutionary computing using dynamic fitness functions. According to Dembski, Koza replied "No." That's very hard to believe, because work on dynamic fitness functions in evolutionary algorithms has been around for years and Koza knows it. The question is important for biology because biological evolution occurs in a context in which what is "fit" often changes over time. For example, in a coevolutionary arms race between predators and prey, as prey adapt to predators, predators adapt to the prey's adaptations in a continuous cross-linked battle of adaptations. Parasites and hosts engage in adaptive warfare, each adapting to the other's adaptations. Pollinators and flowers coevolve, each shaping and reshaping the fitness landscape on which the other evolves. What is fit at one stage of the predator/prey arms race may be hopelessly unfit generations later. The "Red Queen" effect names this phenomenon: one has to keep running as fast as one can in order to stay even. Fitness landscapes deform as populations coevolve and as non-biological selective variables change values. Predators get more efficient, and the climate changes. Dembski concluded from Koza's answer thatThe fact that fitness/objective functions that vary over time are not employed in biologically inspired computing, especially after all these years of genetic algorithms hype, tells me that they are not the key to solving interesting engineering problems. And if they can't do it in the engineering context, there's no reason to think they can do it in biological contexts.Unfortunately for Demsbki's conclusion, there are a number of 'pure' and applied research programs in evolutionary computing in general, and genetic algorithms in particular, in which questions about dynamic fitness functions are studied. To look just at the applied side, at the University of Oslo a project in Evolvable Hardware studied how to evolve an adaptive controller for a prosthetic hand. In order to increase the likelihood that the evolved controller would generalize to novel situations the EA utilized a varying fitness function in training. Workers at the University of Plymouth have devised design techniques that utilize evolutionary algorithms in the preliminary stages of solving engineering design problems. They have developed a novel approach to using genetic algorithms that they call an Inductive Genetic Algorithm that employs an implicitly dynamic fitness function. A review of applications of evolutionary algorithms in e-commerce describes coevolutionary models, and coevolution, of course, implies a dynamic fitness function:To summarize this important conclusion: dynamic fitness functions - either competitive ones in a co-evolution framework or interactive ones - tend to have an important role in several e-commerce applications, due to the inherently dynamic nature of this kind of application.A very interesting fact, as John Wendt pointed out on ARN recently, is that Koza himself holds a 1992 patent on problem solving using coevolving populations. Again, coevolution implies a dynamic fitness function. And finally I'll just briefly mention the GAs my firm builds to model the complex adaptive system of world markets. There's a fitness landscape that changes through time! So there's all kinds of work in evolutionary computing utilizing dynamic fitness functions. Dembski's claim fails. Either Dembski misunderstood Koza's answer, or Koza misunderstood Dembski's question. Nevertheless, based on a brief anecdote (and a sample of just one anecdote at that), and without bothering to do even a cursory literature search, Dembski reaches a flatly false conclusion about what happens in biological evolution. Richard B. Hoppe


I too call (semi)bullshit on the Koza quote. I’d be curious as to the exact question posed. First off, Koza makes a big point of differentiating between Genetic Algorithms, Genetic Programming, Evolutionary Strategies, etc.

Off the top of my desk, and in Koza’s own words- Genetic Programming (Koza92) pg94 “Fitness may also be computed in a co-evolutionary wayy as when the fitness of a game playing strategy is determined by playing that strategy against an entire population (or sampling) of opposing strategies.”

Which makes Dembski’s claim that “Yet such coevolving fitness landscapes, which I don’t deny occur in biology, are absent from evolutionary computation” sound a bit off.

Looks like Dembski pulled his blog page entirely, together with the incriminating passage about Koza. Alas, all those “Unfinished Thoughts” will now remain unfinished, forever!

Actually, the reason that evolutionary computation often uses fixed fitness functions is because that’s in the nature of the problems that it’s intended to solve. If one wishes to solve some scheduling problem (say), one has a constant overall goal – a minimum of conflicts, a minimum distance traveled, students having plenty of time between exams, etc.

I’m familiar with several optimization algorithms, though I have not used this approach very much.

Maybe Robski just dreamed that he had that conversation with Kosa?

Yup, Dembski’s Unfinished Thoughts are gone now. Ah. well. Erasure sure beats spending all that time and thought on actually answering the toughest questions. :) (Hm. Y’know, there’s a book title somewhere in there, no?)


Re Loren: Actually, the fitness function is sometimes changed in the course of a run when you have multiple objectives. A classic example is only applying parsimony pressure to a problem once it has solved its main design objective. For Dembski to say the fitness function never changes is idiocy. One might say in the majority of cases, the *form* of the fitness function does not change.

About this Entry

This page contains a single entry by Richard B. Hoppe published on March 25, 2004 6:45 PM.

IRAS President reviews Creationism’s Trojan Horse was the previous entry in this blog.

More on neutrality is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.



Author Archives

Powered by Movable Type 4.361

Site Meter