Evo-Info review: Do not buy the book until…

Introduction to Evolutionary Informatics, by Robert J. Marks II, the “Charles Darwin of Intelligent Design”; William A. Dembski, the “Isaac Newton of Information Theory”; and Winston Ewert, the “Charles Ingram of Active Information.” World Scientific, 332 pages.
Classification: Engineering mathematics. Engineering analysis. (TA347)
Subjects: Evolutionary computation. Information technology–Mathematics.

… the authors establish that their mathematical analysis of search applies to models of evolution.

I have all sorts of fancy stuff to say about the new book by Marks, Dembski, and Ewert. But I wonder whether I should say anything fancy at all. There is a ginormous flaw in evolutionary informatics, quite easy to see when it’s pointed out to you. The authors develop mathematical analysis of apples, and then apply it to oranges. You need not know what apples and oranges are to see that the authors have got some explaining to do. When applying the analysis to an orange, they must identify their assumptions about apples, and show that the assumptions hold also for the orange. Otherwise the results are meaningless.

The authors have proved that there is “conservation of information” in search for a solution to a problem. I have simplified, generalized, and trivialized their results. I have also explained that their measure of “information” is actually a measure of performance. But I see now that the technical points really do not matter. What matters is that the authors have never identified, let alone justified, the assumptions of the math in their studies of evolutionary models.a They have measured “information” in models, and made a big deal of it because “information” is conserved in search for a solution to a problem. What does search for a solution to a problem have to do with modeling of evolution? Search me. In the absence of a demonstration that their “conservation of information” math applies to a model of evolution, their measurement of “information” means nothing. It especially does not mean that the evolutionary process in the model is intelligently designed by the modeler.1

I was going to post an explanation of why the analysis of search does not apply to modeling of evolution. But I realized that it would give the impression that the burden is on me to show that the authors have misapplied the analysis.2 As soon as I raise objections, the “Charles Ingram of active information” will try to turn the issue into what I have said. The issue is what he and his coauthors have never bothered to say, from 2009 to the present. As I indicated above, they must start by stating the assumptions of the math. Then they must establish that the assumptions hold for a particular model that they address. Every one of you recognizes this as a correct description of how mathematical analysis works. I suspect that the authors recognize that they cannot deliver. In the book, they work hard at fostering the misconception that an evolutionary model is essentially the same as an evolutionary search. As I explained in a sidebar to the Evo-Info series, the two are definitely not the same. Most readers will swallow the false conflation, however, and consequently will be incapable of conceiving that analysis of an evolutionary model as search needs justification.

The premise of evolutionary informatics is that evolution requires information. Until the authors demonstrate that the “conservation of information” results for search apply to models of evolution, Introduction to Evolutionary Informatics will be worthless.


1 Joe Felsenstein came up with a striking demonstration that design is not required for “information.” In his GUC Bug model (presented in a post coauthored by me), genotypes are randomly associated with fitnesses. There obviously is no design in the fitness landscape, and yet we measured a substantial quantity of “information” in the model. The “Charles Ingram of active information” twice feigned a response, first ignoring our model entirely, and then silently changing both our model and his measure of active information.

2 Actually, I have already explained why the “conservation of information” math does not apply to models of evolution, including Joe’s GUC Bug. I recently wrote a much shorter and much sweeter explanation, to be posted in my own sweet time.

a ETA: Marks et al. measure the “information” of models developed by others. Basically, they claim to show that evolutionary processes succeed in solving problems only because the modelers supply the processes with information. In Chapter 1, freely available online, they write, “Our work was initially motivated by attempts of others to describe Darwinian evolution by computer simulation or mathematical models. The authors of these papers purport that their work relates to biological evolution. We show repeatedly that the proposed models all require inclusion of significant knowledge about the problem being solved. If a goal of a model is specified in advance, that’s not Darwinian evolution: it’s intelligent design. So ironically, these models of evolution purported to demonstrate Darwinian evolution necessitate an intelligent designer. The programmer’s contribution to success, dubbed active information, is measured in bits.” If you wonder Success at what? then you are on the right track.

588 thoughts on “Evo-Info review: Do not buy the book until…

  1. Mung: Give us a real example, from an EA. Say you have an organism in your EA with a genotype in your EA and you want to measure the fitness of the organisms or the genotype, so you define a method get_fitness.

    What would the implementation of that function look like?

    Fitness can be measured in real organisms. For example, by mark-recapture methods to measure survivorship, by using DNA sequences for assigning parentage, etc.

    If I want to then see what the effects of those fitness differences are, I can write a simulation program and put those estimated fitnesses into its table of fitnesses of different genotypes.

    Alternatively, we might be asking what the effect of certain amounts of natural selection are in a situation with (say) multiple loci with two alleles each, with no interaction of fitnesses at different loci, with multiple populations that have gene flow between them, and with the loci all fairly closely linked. That’s a situation where the mathematical theory has a hard time predicting how well natural selection does in the presence of genetic drift. So we set it up in the simulation, and run multiple replicates. We aren’t analyzing a particular real natural population then, just investigating the relative strength of evolutionary forces.

    Forcing all this activity into the framework of a “search” seems entirely unnecessary. You seem to want to do that, though.

  2. phoodoo: Slowly but surely, without a definition of winning, other than just saying the best wins, you end up with nothing meaningful. The computer can not decide what you mean by survival. Until you tell it what survival means, it will just keep saying it will exist. It will die and come back to life, it will multiply, it will become invisible, it will become impenetrable, it will become nothing.

    We must always decide for the computer, what it means to win.

    Nope. When we write a computer program simulating some evolutionary situation, we need some definition of what the fitness of each phenotype will be. But we don’t need to define “winning”.

  3. phoodoo:

    Joe Felsenstein: we need some definition of what the fitness of each phenotype will be.

    Before or after you write the program?

    By the time you come to writing the part of the program which determines what the fitnesses of the phenotypes will be.

    There are some programs, such as Tierra and Avida, where the fitnesses are not computed by the program, but where the digital organisms interact, and whether they survive or not, reproduce or not, is the outcome of the details of the interaction.

    I realize that phoodoo is building up to some “gotcha” moment where phoodoo declares that by having the program compute the fitnesses we are having it specify the outcome of a “search”. To make the matter more specific consider this case: We have an infinite diploid population with random mating. There are discrete generations. Two gene loci are linked, with recombination fraction 0.2. The table of fitnesses is

            BB      Bb      bb
    AA 0.976 0.913 0.879
    Aa 0.956 1.000 0.934
    aa 0.983 0.954 0.946

    Now perhaps phoodoo, who understands these things so well, can tell us what the outcome will be. Will the genotype AaBb take over and become 100% of the population? Would a Mendelian consider that a reasonable thing to happen?

  4. Joe Felsenstein: Fitness can be measured in real organisms.

    So?

    phoodoo:

    In an EA, the concept of fitness is another name for the thing for which you search. There is still no getting around that Joe.

    Joe:

    Utterly wrong. Fitness can be measured.

    Your response to phoodoo then is a non-sequitur.

    The question is “fitness” in genetic algorithms/evolutionary algorithms.

    More semantics. 🙂

  5. Joe Felsenstein: By the time you come to writing the part of the program which determines what the fitnesses of the phenotypes will be.

    Where’s keiths?

    Why do you need to determine what the fitnesses will be when you can just measure them?

  6. Joe Felsenstein: Forcing all this activity into the framework of a “search” seems entirely unnecessary. You seem to want to do that, though.

    For now I’d just be thrilled to see some actual code for how to measure the fitness of an organism/genotype in a genetic algorithm.

    Mung:

    Give us a real example, from an EA. Say you have an organism in your EA with a genotype in your EA and you want to measure the fitness of the organism or the genotype, so you define a method get_fitness. What would the implementation of that function look like?

  7. Joe Felsenstein: Now perhaps phoodoo, who understands these things so well, can tell us what the outcome will be

    You clearly don’t understand what is being said in the slightest. Or you refuse to understand.

  8. phoodoo: You clearly don’t understand what is being said in the slightest. Or you refuse to understand.

    Joe is no dummy, he knows exactly what is being said.

  9. Mung: For now I’d just be thrilled to see some actual code for how to measure the fitness of an organism/genotype in a genetic algorithm.

    This is so odd, considering that you appropriately put “fitness” in scare quotes in the preceding comment. Doubling down on the rhetorical conflation of evolutionary search and evolutionary modeling? It’s the foundation of evolutionary informatics, to be sure.

  10. phoodoo: You clearly don’t understand what is being said in the slightest. Or you refuse to understand.

    I understand why he responded as he did. And it’s a sensible response.

    I’ve come to understand that you and Mung, like most people (including engineers), understand precious little about modeling. And interactions like this are not going to help you understand. I’m thinking about what might help. So don’t take this as an insult. But do take it as a hint: you might want to speak a bit more tentatively.

  11. Tom English: phoodoo: You clearly don’t understand what is being said in the slightest. Or you refuse to understand.

    I understand why he responded as he did. And it’s a sensible response.

    I also understand why he responded like he did. Because he can’t respond by saying, Yes, you are right, an EA is just another name for a sophisticated search, where you tell a computer the objective of your search. So what Joe responded with was discussion of the RESULT of your search, as if those two concepts are interchangeable words.

    So I also understand why you think that it is sensible. I also think your warning is funny.

    Let me give you a warning. By saying this is sensible response, a sensible person can see you are not sensible.

  12. Tom English: I’ve come to understand that you and Mung, like most people (including engineers), understand precious little about modeling.

    All application development is modeling. There’s an entire architectural pattern that attempts to capture that, known as Model View Controller (MVC).

    Not that I know anything about application development.

    I understand more than I’ve been given credit for in the past here at TSZ, and it would be a shame (on me) if you think you’ve found a chink.

    Instead of attacking me and phoodoo why not hold Joe F. to account?

    WTF is so difficult about coding a get_fitness function in a genetic algorithm? I even know the answer, or at least part of the answer. But does Joe?

  13. Joe Felsenstein: Fitness can be measured in real organisms

    How does one measure the fitness of a digital organism?

    This thread is about the DEM book. It’s about alleged “models” of evolution. Perhaps it is the evolutionists who “understand precious little about modeling.”

  14. Mung: But the Dawkins Weasel program is a search algorithm. One might infer from this that evolution is a search. Yet it is often denied that evolution is a search.

    And if evolution is not a search, how can it be legitimate to model it as such?

    Joe Felsenstein: Evolution is usually modeled by having genotypes, which may or may not have different fitnesses. Then we see what happens. We usually have some questions in mind.

    Is that a search?

    phoodoo: In an EA, the concept of fitness is another name for the thing for which you search. There is still no getting around that Joe.

    There’s your non sequitur, Mung. And why do you and phoodoo not recognize it as that? Because the intellectual heroes of the “intelligent design” offshoot of “creation science” have duped you into believing that evolution is modeled as search.

    Mung: Now you want to discuss semantics? I’m so confused. What would qualify it as a search and what would disqualify it as a search?

    Joe described modeling, and prompted you to say whether you would call it search. You ducked out.

  15. Tom English: Joe Felsenstein: Evolution is usually modeled by having genotypes, which may or may not have different fitnesses.

    Question: How do you decide they have fitness?

    Answer: By calling the things you call fit, fit.

  16. Tom English: Joe described modeling, and prompted you to say whether you would call it search. You ducked out.

    Well put. I even described a particular model, and asked phoodoo to tell us what would happen. phoodoo’s position seems to be that fitness just tells us in advance what will happen and is nothing more than a reflection of that.

    So, phoodoo or Mung, now that you can see the fitnesses, what will happen in that model?

    And why are we not allowed to consider it, but must confine ourselves to things that can be considered GAs or EAs?

  17. Joe Felsenstein: I realize that phoodoo is building up to some “gotcha” moment where phoodoo declares that by having the program compute the fitnesses we are having it specify the outcome of a “search”.

    You are vastly overestimating phoodoo

  18. Mung: How does one measure the fitness of a digital organism?

    You measure it’s reproductive success.

    This thread is about the DEM book. It’s about alleged “models” of evolution. Perhaps it is the evolutionists who “understand precious little about modeling.”

    Perhaps not.

  19. phoodoo: Mung: How does one measure the fitness of a digital organism?

    By defining something as fit.

    No. Nobody defines anything as “fit”. It’s a relative term. Some organisms are more fit than others because they have more offspring.

    As above, you measure fitness by measuring what the term refers to: reproductive success.

    In the same way that you measure height. You first have to understand what the term height refers to. It refers to the distance from the ground to the top of the organism. Then when you understand this, you can measure it because now you know what you’re supposed to be measuring: Distance along a certain axis.

    So with fitness, aka reproductive success. So you simply count the number of offspring some organism has (I think in actuality you do this over a number of generations and derive an average). Say it has eight offspring. You could set this as fitness 1. Then you count the number of offspring another one has (maybe it only has four). And you compare the two and see that 4/8 = ½. So you have measured the fitness of the next one to be 0.5.

    Now you have done a measurement of the fitness of two organisms. Now you can predict, for example, how a population consisting of 50% organism A with fitness 1, and 50% organism B with fitness 0.5, will look 20 generations later.

  20. phoodoo: Question: How do you decide they have fitness?

    That’s like asking how we decide that an organism has height.

    Since fitness refers to reproductive success, they have it no matter what. Even if they have 0 offspring. Then they just have a fitness of 0.

    Answer: By calling the things you call fit, fit.

    No. Wrong answer. Nobody says anything is “fit”. Fitness is a quantity that refers to relative reproductive success. Things aren’t declared fit or not-fit. They’re given a number. It is a quantity, it is measured by counting.

    Take the height analogy again and substitute it with fitness to see where you go wrong.
    “Question: How do you decide they have height?”
    “Answer: By calling things you call height, height”.

    This should make it readily apparent to any rational observer how utterly silly your recurrent issue with the concept of fitness really is.

  21. Phoodoo, Mung and the likes can’t wrap their heads around the definition of fitness. What? Reproductive success? But WHO defines what succeeds at reproducing? Their design presuppositions are so ingrained in their thinking that they just can’t escape their idiotic assumptions.

  22. Honestly, I think there is some sort of weird psychological tunnel-vision like effect at work here. It’s like, when it comes to a certain subject, they are somehow prevented from understanding it. At all.

    How the hell can the concept of fitness be an issue? It is completely nonsensical what they say. I can at least understand the argument when they reject abiogenesis or macroevolution by saying it’s “just chance” and this is too unlikely. Or the argument from irreducible complexity. “it can’t evolve because the intermediates are nonfunctional”. I don’t agree and I believe there are good answers to it, but at least that argument makes rational sense. It is coherent.

    This strange issue they have with fitness somehow being “circular” is utterly fucking void of logical sense. I have a hard time even grasping how they could get to that place where this is a problem. I can only guess here but there is something psychoemotionally going on that just shuts off that part of the brain that has to do with logic and language when it comes to the subject of evolution. The whole thing is so intolerable to them, so thoroughly poisoned by indoctrination and conservative religious propaganda, they literally lose the ability to rationally consider simple terms and concepts that relate to the subject.

    It’s truly strange and unsettling to behold.

  23. Rumraket,

    It’s truly strange and unsettling to behold.

    It is a syndrome, you are right. If EAs had been given another name, and the link with natural evolution kept under wraps, it might be approached with a more open mind (although we might have to keep schtum about models of evolution). But as soon as it looks like it might say something about evolution itself, there is a scurry to find the thing wrong with it. Which there must be, ‘cos, y’know, the Bible. One sees the same with probability theory, simple ecology expanded over longer timescales, genomes with extensive genetic identity, simple models of drift, time series of divergence and so on. Contrarianism on steroids.

  24. Rumraket: Since fitness refers to reproductive success

    Bingo! Bingo.

    Now try reading again for comprehension Rumraket!

    Fitness DOES NOT refer to reproductive success in an EA UNTIL you define what reproductive success entails!!

    So now I am telling you to your face, it is YOU who is lacking the ability to comprehend the issue Mung and I have raised. You are lost. Completely. It is totally over your head, and beyond your thinking skills to ever get it. Don’t bother trying. You have tunnel vision. No worse, you have a tunnel brain. Or a tunnel through your brain.

    It is truly strange and unsettling to behold.

  25. Mung,

    Please tell me, there are people discussing here who presumably have a certain respectable level of education. They also know how to operate a keypad, and can write complete sentences, sometimes even with complete thoughts.

    So please explain to me, how can they be so absolutely clueless, so utterly incapable of understanding such a basic premise? Its baffling. Its beyond strange. Is it a disease? Are they recovering alcoholics, who still need time for brain cells to light back up? Its such a mystery.

  26. phoodoo,

    Fitness DOES NOT refer to reproductive success in an EA UNTIL you define what reproductive success entails!!

    Fitness as a concept is independent of all implementations of it. In biology, it really is number of offspring, so there’s little point stamping your feet when people say that. It’s easy to export that to an EA with copying strings – the copies are the offspring, which you can count. That’s separate from the ideas of more and less fit, and the implementation-specific reasons for different genotypes having different numbers, just as ‘higher’ and ‘lower’ are separate from the concept of ‘integer’.

    You are grumbling that the concept doesn’t exist until you code it, which is silly.

    Here’s an implementation of ‘get_fitness’, in VB so everyone can sneer at the rubbishy language I chose (!):

    Sub get_fitness
    end sub

    Do genotypes have fitness in that implementation?

  27. phoodoo: Bingo! Bingo.
    Now try reading again for comprehension Rumraket!

    I have read and comprehended all that it was rationally possible to comprehend of your writings on the concept of fitness in GA’s / models of evolution. And it doesn’t make logical sense.

    You’re literally not making any sense and you should try to take a break from this discussion and come back. And I really mean it. I emplore you to try to disconnect your contrarian attitude to the subject. I’m not sure what exactly to tell you here because I’m not sure how it got to this place. But honestly, there’s something wrong with how we interact once we come to the subject of evolution, fitness and simulations.

    I’m going to ask something of you that might seem insulting at first. But I’m deeply serious, I’m not saying this just to call you an idiot or piss you off. I must ask you to try to do this. Try to forget about me, personally (yes, I’m an arrogant shithead, but forget about me please), about ego, about “worldview”, politics, all that crap. Just let it all go, if you can. Then come back here and ask questions. No investment, no debate, no argument, no “winning” or anything like it. Only as a person who wants to try to understand something. Try to at least take on a state of mind where maybe there could be something to this? – and you have to find out by asking questions. Questions that get at the principles, not questions somehow designed to demonstrate how you think it’s all bullshit (because we get it, you think it’s all bullshit).

    But what if it’s not? What if you’ve got it wrong? How would you find out if you’re wrong? Try to imagine that you really, really, want to discover if you are. Try to pretend you’ve never heard of any of this before.

    I really hope this is possible. I believe it is possible because in plenty of other ways you’re clearly not an idiot, which is why I find your issue with fitness here so perplexing.

  28. Allan Miller,

    Oh really Allan? So you mean we can’t use EA to design the best wind turbines, or the best antennas, because that has nothing to do with reproductive success, right?

    So, ok, first let’s dispose of EVERY algorithm which tries to build anything or make a solution, because fitness only means how many reproduce. Whew, I am glad we got that out of the way first!

  29. phoodoo,

    Oh really Allan? So you mean we can’t use EA to design the best wind turbines, or the best antennas, because that has nothing to do with reproductive success, right?

    Not at all relevant. The fitness of a genotype in any EA is the number of offspring produced. Period. Whatever you actually use it for.

    So, ok, first let’s dispose of EVERY algorithm which tries to build anything or make a solution, because fitness only means how many reproduce. Whew, I am glad we got that out of the way first!

    That is what fitness means, yes (although it’s how many offspring accrue to each, not how many reproduce). I don’t know why you’re getting so red-faced about it.

  30. OK though, let’s try wind turbines. We have a population of genotypes, and we have some means to convert genotypes into actual wind turbines. Perhaps it’s a series of coordinates in xyz space.

    Obviously, we are looking for something that distinguishes better turbines from worse. We’ve coded the EA for a purpose, not so we can just sit and look at it. We set them up and spin ’em, and measure the efficiency or whatever. The genotypes that don’t do so well according to those criteria, we eliminate. Then we do some reproducin’. Then we repeat. Have we coded ‘better’ and ‘worse’ into the program? No. Yet the genotypes have differing numbers of offspring – fitness. The fitter ones produce more, but we have coded no ‘def_fitness’ routine.

  31. Allan Miller,

    I am trying to think of how many ways these statements of yours are wrong.

    Let’s go with this first. How do we predict, based on fitness, which ones will produce the most for the next spin?

  32. phoodoo,

    I am trying to think of how many ways these statements of yours are wrong.

    I’m betting the count currently stands at zero … 🙂

    Let’s go with this first. How do we predict, based on fitness, which ones will produce the most for the next spin?

    Do we need to? Why? If we knew what we were after, we wouldn’t use an EA.

  33. phoodoo,

    So maybe the least fit will reproduce the most?

    You’re still asking that question? Not if you’ve followed up to this point. It’s like saying ‘maybe the smaller are bigger’.

  34. Allan Miller,

    Gee, it sounds like you are saying everything has exactly the same fitness in your model.

    Until it doesn’t of course.

    I guess since all are equal, we could just eliminate 70% randomly every spin. It won’t change anything if they are all equal.

  35. phoodoo: Gee, it sounds like you are saying everything has exactly the same fitness in your model.

    It does not sound like that, it’s just your pathetic comprehension skills

  36. dazz: It does not sound like that, it’s just your pathetic comprehension skills

    Great, then just explain it to us all, how do we tell which has more fitness and which has less?

  37. phoodoo,

    Gee, it sounds like you are saying everything has exactly the same fitness in your model.

    In environments where everything has the same fitness, then everything does indeed have the same fitness.

    Until it doesn’t of course.

    In scenarios where some genotypes have different fitnesses, then indeed, not everything has the same fitness.

    Baby steps, I guess.

    I guess since all are equal, we could just eliminate 70% randomly every spin. It won’t change anything if they are all equal.

    If you implement each genotype as an actual wind turbine, and all of them performed exactly the same, then there would be no fitness differential and you would indeed eliminate ‘at random’. I don’t know why you think that would happen, though obviously it could. Either way, you don’t tell the program which genotypes, if any, are fitter, so I don’t really know what you are gibbering about.

  38. On another matter, I got a roulette wheel, but I can’t predict which number is going to come up next. I’m thinking of sending it back.

  39. Allan, you should have bought it from a publication I saw once — a gift catalog I got on a United Airlines flight. It declared that you could help find winning lottery numbers by buying a small plastic lottery machine that used the same method of choosing numbers that the lotteries did — random selection!

  40. Allan Miller,

    Of course you are telling the program which are fitter, all of them. There is NEVER a difference in fitness in your program. Anytime I stop the program, ALL individuals have a fitness of one. Because you eliminate ones AFTER they have already reproduced, not before. That is why you couldn’t answer my question about predicting which would have the most offspring (which you should have been able to). The answer was they will always have the exact same number of offspring, until they don’t.

    And thus, in evolution, the only definition of fit one can use is, how many are there. If they exist they are fit. 1 or 0. Exactly the same as in your program. 1 or 0.

  41. phoodoo: And thus, in evolution, the only definition of fit one can use is, how many are there. If they exist they are fit.

    How about fitness of genotypes? There are more than one individual of the same genotype. Consider the number of them that there are before selection, and the number after. The fraction is the estimate of the viability of that genotype.

Leave a Reply