ev

Recent discussions of genetic algorithms here and Dave Thomas’ evisceration of Winston Ewert’s review of several genetic algorithms at The Panda’s Thumb prompted me to dust off my notes and ev implementation.

Introduction

In the spring of 1984, Thomas Schneider submitted his Ph.D thesis demonstrating that the information content of DNA binding sites closely approximates the information required to identify the sites in the genome. In the week between submitting his thesis and defending it, he wrote a software simulation to confirm that the behavior he observed in biological organisms could arise from a subset of known evolutionary mechanisms. Specifically, starting from a completely random population, he used only point mutations and simple fitness-based selection to create the next generation.

The function of ev is to explain and model an observation about natural systems.
— Thomas D. Schneider

Even with this grossly simplified version of evolution, Schneider’s simulator, tersely named ev, demonstrated that the information content of a DNA binding site, R_{sequence}, consistently and relatively quickly evolves to be approximately equal to the information required to identify the binding sites in a given genome, R_{frequency}, just as is seen in the biological systems that were the subject of his thesis.

Schneider didn’t publish the details of ev until 2000, in response to creationist claims that evolution is incapable of generating information.

Core Concepts

Before discussing the implementation, it’s important to understand exactly what is being simulated. Dr. Schneider’s thesis is quite readable. The core concepts of ev are binding sites, R_{sequence}, and R_{frequency}.

Binding Sites

A binding site is a location on a strand of DNA or RNA where a protein can attach (bind). Binding sites consist of a sequence of nucleotides that together provide the necessary chemical bonds to hold the protein.

A good example of binding sites in action is the synthesis of messenger RNA (mRNA) by RNA polymerase (RNAP). RNAP binds to a set of a few tens of base pairs on a DNA strand which triggers a series of chemical reactions that result in mRNA. This mRNA is then picked up by a ribosome (which also attaches to a binding site) that transcribes a protein from it.

The bases that make up a binding site are best described by a probability distribution, they are not a fixed set requiring an exact match.

R_{frequency}

R_{frequency} is the simplest of the two information measures in ev. Basically, it is the number of bits required to find one binding site out of set of binding sites in a genome of a certain length. For a genome of length G with \gamma binding sites, this is -log_2(\gamma / G)

For example, consider a genome of 1000 base pairs containing 5 binding sites. The average distance between binding sites is 200 bases, so the information needed to find them is -log_{2}200 which is approximately 7.64 bits.

R_{sequence}

R_{sequence} is the amount of information in the binding site itself. There are two problems with computing R_{sequence}. The first is the definition of “information.” Schneider uses Shannon information, a clearly defined, well-respected metric with demonstrated utility in the study of biological systems.

The second problem is that binding sites for the same protein don’t consist of exactly the same sequence of bases. Aligned sequences are frequently used to identify the bases that are most common at each location in the binding site, but they don’t tell the whole story. An aligned sequence that shows an A in the first position may reflect a set of actual sites of which 70% have A in the first position, 25% C, and 5% G. R_{sequence} must take into account this distribution.

The Shannon uncertainty of a base in a binding site is:

(1)   \begin{equation*} H_g = \sum_{b}^{A,C,G,T}(p(b)log_{2}p(b)) \end{equation*}

where p(b) is the probability of a base b at that location in the genome. This will be approximately 0.25, equal probability for all bases, for the initial, randomly generated genome. The initial uncertainty at a binding site is therefore:

(2)   \begin{equation*} H_{before} = H_{g}L = 4(0.25)(log_{2}(0.25)L = -2L \end{equation*}

where L is the width of the site.

R_{sequence}, the increase in information, is then H_{after} - H_{before}, where:

(3)   \begin{equation*} H_{after} = \sum_{l = 1}^{L}(H_{g}(l)) \end{equation*}

computed from the observed probabilities.

There is one additional complexity with these formulas. Because of the small sample size, an adjustment must be computed for H_g:

(4)   \begin{equation*} H_g = \sum_{l = 1}^{L}(E(H_{nb}) - H_{g}(L)) \end{equation*}

or

(5)   \begin{equation*} H_{after} = \sum_{l = 1}^{L}\bigg((e(n(l)) - \sum_{b}^{A,C,G,T}f(b,l) log_{2}f(b,l)\bigg) \end{equation*}

measured in bits per site.

The math behind the small sample adjustment is explained in Appendix 1 of Schneider’s thesis. Approximate values for E(H_{nb}) for binding site widths from 1 to 50 are available pre-computed by a program available on Schneider’s site:

For a random sequence, R_{sequence} will be near 0. This will evolve to R_{frequency} over an ev run.

Schneider’s ev Implementation

Schneider’s implementation is a fairly standard genetic algorithm, with an interesting fitness function. The virtual genomes contain, by default, 256 potential binding sites. The genomes are composed of characters from an alphabet of four letters (A, C, G, and T). The default number of optimal binding sites, \gamma, is 16. The locations of these sites are randomly generated at the beginning of each run and remain the same throughout the run. Given this configuration, R_{frequency}, the amount of information required to identify one of these sites in a genome of length G = 256 is -log_2(\gamma / G) which equals 4. Per Schneider’s Ph.D thesis, R_{sequence}, the information in the binding site itself, should evolve to and remain at approximately this value during a run.

To determine the number of binding sites actually present, a portion of the genome codes for a recognizer as well as being part of the set of potential binding sites. This recognizer, which is subject to the same mutation and selection as the rest of the genome, is applied at each base to determine if that base is the start of a binding site. If a base is not correctly identified as the start of a binding site, the fitness of the genome is decreased by one. If a base is incorrectly identified as the start of a binding site, the fitness of the genome is also decreased by one. Schneider notes that changing this weighting may affect the rate at which R_{sequence} converges to R_{frequency} but not the final result.

After all genomes are evaluated, the half with the lowest fitness are eliminated and the remaining are duplicated with mutation. Schneider uses a relatively small population size of 64.

The recognizer is encoded as a weight matrix of 4xL two’s-complement integers, where L is the length of a binding site (6 by default). Schneider notes that:

At first it may seem that this is insufficient to simulate the complex processes of transcription, translation, protein folding and DNA sequence recognition found in cells. However the success of the simulation, as shown below, demonstrates that the form of the genetic apparatus does not affect the computed information measures. For information theorists and physicists this emergent mesoscopic property will come as no surprise because information theory is extremely general and does not depend on the physical mechanism. It applies equally well to telephone conversations, telegraph signals, music and molecular biology.

Since ev genomes consist only of A, C, G, and T, these need to be translated to integers for the weight matrix. Schneider uses the straightforward mapping of (A, C, G, T) to (00, 01, 10, 11). The default number of bases for each integer is Bp = 5. Given these settings, AAAAA encodes the value 0, AAAAC encodes 1, and TTTTT encodes -1 (by two’s-complement rules).

When evaluating a genome, the first 4 x L x Bp bases are read into the 4 x L weight matrix. The next Bp bases represent a threshold value that is used to determine whether or not the value returned by the recognizer is a binding site match. This is also a two’s-complement integer with the same mapping. The recognizer is then applied from the first base in the genome to the last that could possibly be the start of a binding site (given the binding site length).

It’s worth re-emphasizing that the recognizer and the threshold are part of the genome containing the binding sites. The length of the full genome is therefore G + L - 1 bases, with only the first G bases being potential binding sites.

The recognizer calculates a total value for the potential site starting at a given point by summing the values of the matching bases in the weight matrix. The weight matrix contains a value for each base at each position in the site, so for a binding site length of 7 and a potential binding site consisting of the bases GATTACA, the total value is:

w[0]['G'] + w[1]['A'] + w[2]['T'] + w[3]['T'] + w[4]['A'] + w[5]['C'] + w[6]['A']

If this value exceeds the threshold, the recognizer identifies the bases as a binding site.

This implementation of the recognizer is an interesting way of encapsulating the biological reality that binding sites don’t always consist of exactly the same sequence of bases. Schneider notes, though, that “the exact form of the recognition mechanism is immaterial because of the generality of information theory.”

Schneider’s Results

Using his default settings of:

  • Genome length: G = 256
  • Number of binding sites: \gamma = 16
  • Binding site length: L = 6
  • Bases per integer: Bp = 5

Schneider found that:

When the program starts, the genomes all contain random sequence, and the information content of the binding sites, R_{sequence}, is close to zero. Remarkably, the cyclic mutation and selection process leads to an organism that makes no mistakes in only 704 generations (Fig. 2a). Although the sites can contain a maximum of 2L = 12 bits, the information content of the binding sites rises during this time until it oscillates around the predicted information content, R_{frequency} = 4 bits . . . .

The Creationist Response

30 years after the original implantation and 16 years after it was published, Intelligent Design Creationists (IDCists) are still attempting to refute ev and are still getting it wrong.

Dembski In 2001

In 2001, William Dembski claimed that ev does not demonstrate an information increase and further claimed that Schneider “smuggled in” information via his rule for handling ties in fitness. Schneider reviewed and rebutted the first claim and tested Dembski’s second claim, conclusively demonstrating it to be false.

Schneider wryly addresses this in the ev FAQ:

Does the Special Rule smuggle information into the ev program?

This claim, by William Dembski, is answered in the on-line paper Effect of Ties on the evolution of Information by the ev program. Basically, changing the rule still gives an information gain, so Dembski’s prediction was wrong.

Has Dembski ever acknowledged this error?

Not to my knowledge.

Don’t scientists admit their errors?

Generally, yes, by publishing a retraction explaining what happened.

Montanez, Ewert, Dembski, and Marks In 2010

Montanez, Ewert, Dembski, and Marks published A Vivisection of the ev Computer Organism: Identifying Sources of Active Information in the IDCist’s pseudo-science journal BIO-Complexity in 2010. Despite its title, the paper doesn’t demonstrate any understanding of the ev algorithm or what it demonstrates:

  • The authors spend a significant portion of the paper discussing the efficiency of the ev algorithm. This is a red herring — nature is profligate and no biologist, including Schneider, claims that evolutionary mechanisms are the most efficient way of achieving the results observed.
  • Related to the efficiency misdirection, the authors suggest alternative algorithms that have no biological relevance instead of addressing the actual algorithm used by ev.
  • The authors do not use Shannon information, instead substituting their idiosyncratic “active information”, including dependencies on Dembski’s concept of “Conservation of Information” which has been debunked by Wesley Elsberry and Jeffrey Shallit in Information Theory, Evolutionary Computation, and Dembski’s “Complex Specified Information”, among others.
  • The authors note that “A common source of active information is a software oracle”. By recognizing that an oracle enables evolutionary mechanisms to work in software, they are admitting that those same mechanisms can explain what we observe in biological systems because the real world environment is just such an oracle. The environment provides information about what works and what doesn’t by ensuring that organisms less suited to it will tend to leave fewer descendants.
  • The authors repeatedly claim that the “perceptron” used as a recognizer makes the ev algorithm more efficient. Their attempted explanation of why this is the case completely ignores the actual implementation of ev. They seem so caught up in Schneider’s description of the recognizer as a perceptron that they miss the fact that it’s nothing more than a weight matrix that models the biological reality that a binding site is not a fixed set of bases.

Basically the paper is a rehash of concepts the authors have discussed in previous papers combined with the hope that some of it will be applicable to ev. None of it is.

Schneider soundly refuted the paper in Dissection of “A Vivisection of the ev Computer Organism: Identifying Sources of Active Information”. He succinctly summarized the utter failure of the authors to address the most important feature of ev:

They do not compute the information in the binding sites. So they didn’t evaluate the relevant information (R_{sequence}) at all.

In a response to that refutation, Marks concedes that “Regardless, while we may have different preferred techniques for measuring information, we agree that the ev genome does in fact gain information.”

After that damning admission, Marks still doubles down on his spurious claim that the “Hamming oracle” makes ev more efficient:

Schneider addresses the hamming oracle issue by assuming that nature provides a correct fitness function (a hamming function) that allows for positive selection in the direction of our target. He argues that this fitness is based on a

biologically sensible criteria: having functional DNA binding sites and not having extra ones.

But this describes a target; this is the desired goal of the simulation. The fitness function actually being used is a distance to this target. This distance makes efficient information extraction possible.

That’s not a target. It provides no details about what a solution would look like or how to reduce the distance measured, it simply indicates how far away a genome is from being a solution. In fact, it does less than that because it doesn’t provide any information about the difference between an existing recognizer and an ideal recognizer. It also says nothing at all about the relationship between R_{frequency} and R_{sequence}.

Even as he tries to salvage the tatters of his paper, Marks makes another concession:

Reaching that point requires a particular shape to the fitness landscape to guide evolution.

He admits again that evolution does work in certain environments. The real world is one of those.

Nothing in Marks’ response changes the accuracy of Schneider’s summary in his refutation:

Aside from their propensity to veer away from the actual biological situation, the main flaw in this paper is the apparent misunderstanding of what ev is doing, namely what information is being measured and that there are two different measures. The authors only worked with R_{frequency} and ignored R_{sequence}. They apparently didn’t compute information from the sequences. But it is the increase of R_{sequence} that is of primary importance to understand. Thanks to Chris Adami, we clearly understand that information gained in genomes reflects ‘information’ in the environment. I put environmental ‘information’ in quotes because it is not clear that information is meaningful when entirely outside the context of a living organism. An organism interprets its surroundings and that ‘information’ guides the evolution of its genome.

Ewert in 2014

Winston Ewert published Digital Irreducible Complexity: A Survey of Irreducible Complexity in Computer Simulations in 2014, again in the IDCists’ house journal BIO-Complexity. This paper constituted 25% of the output of that august publication in that year. Ewert reviewed Avida, ev, Dave Thomas’ Steiner Trees, a geometric algorithm by Suzanne Sadedin, and Adrian Thompson’s Digital Ears, attempting to demonstrate that none of them generated irreducible complexity.

Michael Behe defined “irreducible complexity” in his 1996 book Darwin’s Black Box:

By irreducibly complex I mean a single system composed of several well-matched, interacting parts that contribute to the basic function, wherein the removal of any one of the parts causes the system to effectively cease functioning. An irreducibly complex system cannot be produced directly (that is, by continuously improving the initial function, which continues to work by the same mechanism) by slight, successive modifications of a precursor system, because any precursor to an irreducibly complex system that is missing a part is by definition nonfunctional.

Dave Thomas has shredded Ewert’s discussion of Steiner Trees, demonstrating that Ewert addressed a much simpler problem (spanning trees) instead.

Richard B. Hoppe has similarly destroyed Ewert’s claims about Avida.

Schneider does explicitly claim that ev demonstrates the evolution of irreducible complexity:

The ev model can also be used to succinctly address two other creationist arguments. First, the recognizer gene and its binding sites co-evolve, so they become dependent on each other and destructive mutations in either immediately lead to elimination of the organism. This situation fits Behe’s definition of ‘irreducible complexity’ exactly . . . .

Ewert quotes this claim and attempts to refute it with:

It appears that Schneider has misunderstood the definition of irreducible complexity. Elimination of the organism would appear to refer to being killed by the model’s analogue to natural selection. Given destructive mutations, an organism will perform less well than its competitors and “die.” However, this is not what irreducible complexity is referring to by “effectively ceasing to function.” It is true that in death, an organism certainly ceases to function. However, Behe’s requirement is that:

If one removes a part of a clearly defined, irreducibly complex system, the system itself immediately and necessarily ceases to function.

The system must cease to function purely by virtue of the missing part, not by virtue of selection.

It appears that Ewert is the one with the misunderstanding here. If there is a destructive mutation in the genes that code for the recognizer, none of the binding sites will be recognized and, in the biological systems that ev models, the protein will not bind and the resulting capability will not be provided. It will “immediately and necessarily” cease to function. This makes the system irreducibly complex by Behe’s definition.

Binding sites are somewhat less brittle, simply because there are more of them. However, if there is a destructive mutation in one or more of the binding sites, the organism with that mutation will be less fit than others in the same population. In a real biological system, the function provided by the protein binding will be degraded at best and eliminated at worst. The organism will have effectively ceased to function. It is this lack of function that results in the genome being removed from the gene pool in the next generation.

Given that the recognizer and binding sites form a set of “well-matched, interacting parts that contribute to the basic function” and that “the removal of any one of the parts causes the system to effectively cease functioning”, ev meets Behe’s definition of an irreducibly complex system.

The IDCist Discovery Institute touted Ewert’s paper as evidence of “an Excellent Decade for Intelligent Design” in the ten years following the Dover trial. That case, of course, is the one that showed conclusively that ID is simply another variant of creationism and a transparent attempt to violate the separation of church and state in the United States. If Ewert’s paper is among the top achievements of the IDC movement in the past ten years then it’s clear that reality-based observers still have no reason to take any IDCist pretensions to scientific credibility seriously. The political threat posed by intelligent design and other variants of creationism is, unfortunately, still a significant problem.

An Alternative ev Implementation

I have implemented a variant of Dr. Schneider’s ev in order to reproduce his results and explore the impact of some alternative approaches. My version of ev uses the GA Engine I wrote to solve Dave Thomas’ Steiner Network design challenge. This engine operates on bit strings rather than the characters used by Dr. Schneider’s implementation.

As described in the GA engine documentation, applying the GA engine to a problem consists of following a few simple steps:

  1. Create a class to represent the characteristics of the problem

    The problem class ev-problem contains the parameters for genome length (G), number of binding sites (\gamma), binding site length (L), and bases per integer (Bp).

  2. Implement a method to create instances of the problem class

    The make-ev-problem function creates an instance of ev-problem.

  3. Implement the required generic functions for the problem:
    • genome-length

    The genome length is (G + L - 1) * 2, using two bits to encode each base pair.

    • fitness

    The fitness of a genome is the number of mistakes made by the recognizer, the total of missed and spurious binding sites.

    • fitness-comparator

    This problem uses the greater-comparator provided by the GA engine.

  4. Implement a terminator function

    This problem uses the generation-terminator provided by the GA engine, stopping after a specified number of generations.

  5. Run solve

Initial Results

In my implementation, Schneider’s default settings and selection mechanism are configured like this:

(defparameter *default-ev-problem*
  (make-ev-problem 256 16 6 5))

(let* ((problem *default-ev-problem*)
       (gene-pool (solve problem 64 (generation-terminator 3000)
                         :selection-method :truncation-selection
                         :mutation-count 1
                         :mutate-parents t
                         :interim-result-writer #'ev-interim-result-writer))
       (best-genome (most-fit-genome gene-pool (fitness-comparator problem))))
  (format t "~%Best = ~F~%Average = ~F~%~%"
          (fitness problem best-genome)
          (average-fitness problem gene-pool)))

This creates an instance of the ev-problem with 256 potential binding sites, 16 actual binding sites, a binding site width of 6 bases, and 5 bases per integer. It then evolves this population for 3000 generations using truncation selection (taking the top 50% of each gene pool to seed the next generation), changing one base in each genome, including the parent genomes, per generation.

The results are identical to those reported by Schneider. Over ten runs, each with a different random seed, the population evolves to have at least one member with no mistakes within 533 to 2324 generations (the mean was 1243.6 with a standard deviation of 570.91). R_{sequence} approaches R_{frequency} throughout this time. As maximally fit genomes take over the population, R_{sequence} oscillates around R_{frequency}.

While my implementation lacks the GUI provided by Schneider’s Java version, the R_{sequence} values output by ev-interim-result-writer show a similar distribution.

Variations

There are many configuration dimensions that can be explored with ev. I tested a few, including the effect of population size, selection method, mutation rate, and some problem-specific parameters.

Population Size

Increasing the population size from 64 to 256 but leaving the rest of the settings the same reduces the number of generations required to produce a maximally fit genome to between 251 and 2255 with a mean of 962.23 and a standard deviation of 792.11. A population size of 1000 results in a range of 293 to 2247 generations with a lower mean (779.4) and standard deviation (689.68), at a higher computation cost.

Selection Method

Schneider’s ev implementation uses truncation selection, using the top 50% of a population to seed the next generation. Using tournament selection with a population of 250, a tournament size of 50, and a mutation rate of 0.5% results in a maximally fit individual arising within 311 to 4561 generations (with a mean of 2529.9 and standard deviation of 1509.01). Increasing the population size to 500 gives a range of 262 to 4143 with a mean of 1441.2 and standard deviation of 1091.95.

Adding crossover to tournament selection with the other parameters remaining the same does not seem to significantly change the convergence rate.

Changing the tournament selection to mutate the parents as well as the children of the next generation does, however, have a significant impact. Using the same population size of 500 and mutation rate of 0.5% but mutating the parents results in a maximally fit individual within 114 to 1455 generations, with a mean of 534.1 and a standard deviation of 412.01.

Roulette wheel selection took much longer to converge, probably due to the fact that a large percentage of random genomes have identical fitness because no binding sites, real or spurious, are matched. This makes the areas of the wheel nearly equal for all genomes in a population.

Mutation Rate

In the original ev, exactly one base of 261 in each genome is modified per generation. This explores the fitness space immediately adjacent to the genome and is essentially simple hill climbing. This mutation rate is approximately 0.2% when applied to a string of bases represented by two bits each.

Changing the mutation count to a mutation rate of 1% results in ev taking an order of magnitude more generations to produce a maximally fit individual. Rates of 0.5% and 0.2% result in convergence periods closer to those seen with a single mutation per genome, both with truncation and tournament selection, particularly with larger population sizes. As Schneider notes, this is only about ten times the mutation rate of HIV-1 reverse transcriptase.

Binding Site Overlap

By default, binding sites are selected to be separated by at least the binding site width. When this restriction is removed, surprisingly the number of generations required to produce the first maximally fit genome ranges does not change significantly from the non-overlapping case.

Alternative Implementation Results

Population size seems to have the largest impact on the number of generations required to reach equilibrium. Mutation rate has a smaller effect, but can prevent convergence when set too high. Tournament selection takes a bit longer to converge than truncation selection, but the two are within the same order of magnitude. Roulette selection does not work well for this problem.

Unlike the Steiner network and some other problems, crossover doesn’t increase the convergence rate. Mutating the parent genomes before adding them to the next generation’s gene pool does have a measurable impact.

Regardless of selection method, mutation rate, or other parameters, R_{sequence} always evolves to and then oscillates around R_{frequency}.

Source Code

The code is available on GitHub. The required files are:

  • ga-package.lisp
  • ga.lisp
  • examples/ga-ev-package.lisp
  • examples/ga-ev.lisp
  • examples/load-ev.lisp

To run from the command line, make the examples directory your working directory and then call

ccl64 - -load load-ev.lisp`

if you’re using Clozure CL or

sbcl - -load load-ev.lisp`

if you’re using Steel Bank Common Lisp.

If you need a refresher on Common Lisp programming, Peter Seibel’s Practical Common Lisp is an excellent book.

Summary

In addition to being a good test case for evolutionary algorithms, ev is interesting because of its biological relevance. As Schneider points out in his Results section:

Although the sites can contain a maximum of 2L = 12 bits, the information content of the binding sites rises during this time until it oscillates around the predicted information content R_{frequency} = 4 bits, with R_{sequence} = 3.983 \pm 0.399 bits during the 1000 to 2000 generation interval.

With this, ev sticks a spoke in the tires of creationists who complain that GAs like Richard Dawkins’ weasel program only demonstrate “directed evolution”. There is nothing in the ev implementation that requires that R_{sequence} evolve to R_{frequency}, yet it does every time.

It’s well worth running the Java version of ev to see the recognizer, threshold, and binding sites all co-evolving. This is a clear answer to creationist objections about how “irreducibly complex” parts could evolve.

The common creationist argument from incredulity based on the complexity of cell biochemistry is also touched on by ev. Even with a genome where the recognizer and binding sites all overlap indiscriminately, a maximally fit recognizer evolves in a tiny population within a small number of generations.

Despite numerous attempts, Intelligent Design Creationists haven’t been able to refute any of Dr. Schneider’s claims or the evidence provided by ev. His history of responses to creationists is both amusing and devastating to his critics.

Unlike his IDCist critics, Schneider uses a clear, unambiguous, measurable definition of information and demonstrates that even the simplest known evolutionary mechanisms can increase it. Shannon information is produced randomly in the context of the environment but is preserved non-randomly by selection. Differential reproductive success does, therefore, generate information. As Schneider succinctly puts it:

Replication, mutation and selection are necessary and sufficient for information gain to occur.
This process is called evolution.
— Thomas D. Schneider

Please contact me by email if you have any questions, comments, or suggestions.

360 thoughts on “ev

  1. OMagain,

    WEASEL was created as an example of cumulative selection. If you like I can paste in the words of the author attesting to this.

    I agree that Dawkins created Weasel as an example of cumulative selection but in order to make it work he needed to provide the program the target sequence. So was he demonstrating that in order to work through (demonstrate cumulative selection) of a 28 letter sequence you needed the CSI up front? Is there any way to get this program to finish without the target? If you expand the sentence to 200 letters will the Weasel program finish with the original mutation rates and populations?

  2. Neil Rickert: Link needed (to this definition).

    Upthread I linked to Crick’s 1958 paper where he gives his intended meaning of “information” as it applies in his paper:

    This is Crick’s paper containing your quote. It’s entitled On Protein Synthesis. Crick is talking (in 1958) about the information translation from DNA to protein. Incidentally “complex” appears once in the paper, unassociated with “information” and “specified” not at all.

    Crick gives the definition of “information” in the context of DNA and protein synthesis as follows:

    By information I mean the specification of the amino acid sequence of the protein.

  3. Alan Fox: Upthread I linked to Crick’s 1958 paper where he gives his intended meaning of “information” as it applies in his paper:Crick gives the definition of “information” in the context of DNA and protein synthesis as follows:

    Yes, Alan. Did you have a point? I take that you have never read “No Free Lunch” nor “Signature in the Cell”. If you had you wouldn’t be so surprised by what I am saying. And that you haven’t read those books says that you shouldn’t be engaging in a discussion against ID.

    Nice own goal

  4. Patrick: The problem, of course, is that P(T|H) cannot be calculated.

    Indeed. This is especially relevant to the complexity threshold argument about “search” for functional proteins. We can make a stab at H only if we can know or estimate the density of unknown functional proteins among the theoretical total of all possible amino acid sequences and lengths.

  5. Neil Rickert: And, according to Frankie, Shannon information doesn’t have meaning.

    Should we not be referring to Shannon uncertainty? I am saying that calculating the number of bits in a message does not tell you anything about whether there is any meaningful content (using content in the everyday sense – synonymous with meaning 🙂 ) in the message. Counting nucleotide residues does not tell you anything about whether the code for a useful protein lies within the sequence.

    Sometimes you can be a bit laconic, so I’m not sure if we are disagreeing.

  6. Alan Fox: Indeed. This is especially relevant to the complexity threshold argument about “search” for functional proteins. We can make a stab at only if we can know or estimate the density of unknown functional proteins among the theoretical total of all possible amino acid sequences and lengths.

    You don’t seem to understand the implications of what you post, Alan. You are admitting that there isn’t any way to test the claims of your position.

  7. Frankie:
    keiths,
    It depends on how Alan was using the word “content”.

    Yes, indeed. I was using “content” in the everyday sense. If there is a technical usage in information theory, then I was unaware of that. Seems to me if “content” refers to “number of bits” in information theory, someone could have chosen a better word for it. “Number of bits” perhaps? Bit-total?

  8. Frankie: You are admitting that there isn’t any way to test the claims of your position.

    Then the time is ripe for an alternative to sweep in! I wonder what what will be. Do you have any ideas Frankie? Perhaps “It was all designed, kthanxbi” would do it, what do you say?

  9. Alan Fox: Should we not be referring to Shannon uncertainty? I am saying that calculating the number of bits in a message does not tell you anything about whether there is any meaningful content (using content in the everyday sense – synonymous with meaning ) in the message.

    There is never meaning in the message. The meaning comes from shared assumptions between the sender and the receiver. If you are looking for meaning in the bit string, you are looking in the wrong place.

    As noted before, you are reading this via Shannon information (bits transmitted between systems). The meaning was never transmitted. The meaning was in what we share independent of the transmitted bits.

  10. Frankie: You don’t seem to understand the implications of what you post, Alan. You are admitting that there isn’t any way to test the claims of your position.

    I’m merely pointing out that Demsbki’s formula won’t work for proteins.

  11. colewd: I agree that Dawkins created Weasel as an example of cumulative selection but in order to make it work he needed to provide the program the target sequence. So was he demonstrating that in order to work through (demonstrate cumulative selection) of a 28 letter sequence you needed the CSI up front? Is there any way to get this program to finish without the target? If you expand the sentence to 200 letters will the Weasel program finish with the original mutation rates and populations?

    I’m not sure of what the point of your questions are. There are also many other changes you could make and similar questions you could ask after making those changes. But what’s your point?

    Dawkins never mentioned CSI in relation to WEASEL. Therefore I’m not sure what your point is nor what the answers to your questions would mean.

    In order to make his toy example work certain aspects of reality were, well, simplified somewhat.

    And in the current context it was brought up as a response to this comment of Mungs

    Mung: We should have a contest.

    A test for CSI vs. a test for the power of cumulative selection. I would say the test for CSI at least has a head start, as there is a mathematical definition of CSI.

    I simply noted there was such a test for cumulative selection, WEASEL. So whatever it is you think I’m claiming such that I have to talk about 200 letter sequences, I’m not.

    If you can program then you can find the answers to your questions yourself. If you cannot, learn, it’s rewarding!

  12. Alan Fox: I’m merely pointing out that Demsbki’s formula won’t work for proteins.

    And I am pointing out that it won’t work because you guys don’t make testable claims

  13. Frankie: Cumulative selection implies a target and a goal-oriented search

    What’s the target and who is setting it? Can you give an example in nature where you think it’s clear Intelligent Design is involved in a particular biological event or entity?

  14. OMagain: I simply noted there was such a test for cumulative selection, WEASEL.

    The weasel program is not a test, it is a program that is in need of tests.

    How does one measure the power of cumulative selection? What are it’s units and how much of it is generated by the Weasel program?

  15. Frankie:
    Neil Rickert,
    Yes it is. It is transmitted along with the sequence of bits.

    Wrong again FrankenJoe. Any meaning about the pattern of the transmitted bits must be agreed upon by the sender and receiver before the bits are transmitted. A classic example is the story from the American Revolution of Paul Revere and the British soldiers where signal lanterns were used to pass on the route of the attacking troops – “one if by land, two if by sea”. The only transmitted bits were two lantern signals with no message within.

  16. Frankie: Yes, really: Shannon’s information measures.

    Did you read your source?

    Information measures refer to entropy, conditional entropy, mutual information, and conditional mutual information.

    IOW, Shannon’s measure is related to things he defines. He comes up with his own definitions. It’s a real stretch then to say that he has given us a way to measure information.

    Entropy is the first measure of information (average amount of uncertainty about the outcome of a random variable).

    That’s not what most people think of when they talk about information.

  17. OMagain,

    I simply noted there was such a test for cumulative selection, WEASEL. So whatever it is you think I’m claiming such that I have to talk about 200 letter sequences, I’m not.

    So you agree with Frankie that cumulative selection includes a target? If so what relevance does cumulative selection have to modern evolutionary theory?

  18. We can quibble over what constitutes a target but it is clearly not always explicit: it can be a objective / evaluatory function.

  19. Mung: The weasel program is not a test, it is a program that is in need of tests.

    Then write some tests. But the test in the relevant context is noted by Dawkins in his description of it.

    Mung: How does one measure the power of cumulative selection? What are it’s units and how much of it is generated by the Weasel program?

    Read what Dawkins wrote about WEASEL. Then come back to me and talk about units of cumulative selection.

  20. colewd: So you agree with Frankie that cumulative selection includes a target?

    WEASEL includes a target, explicitly set.

    colewd: If so what relevance does cumulative selection have to modern evolutionary theory?

    You tell me. WEASEL is what it is. Attempts to draw conclusions about modern evolutionary theory from it are doomed to failure.

  21. Mung: The weasel program is not a test, it is a program that is in need of tests.

    The test is if the target is reached before the universe ends. This horse you are beating, it’s decomposed already and been turned into flowers.

  22. colewd:

    I agree that Dawkins created Weasel as an example of cumulative selection but in order to make it work he needed to provide the program the target sequence. So was he demonstrating that in order to work through (demonstrate cumulative selection) of a 28 letter sequence you needed the CSI up front? Is there any way to get this program to finish without the target?

    The power of cumulative selection can be demonstrated with or without a fixed target sequence. See these threads:

    Math Genome Fun

    Math Genome Fun 2, UPB and beyond?

  23. Mung:

    How does one measure the power of cumulative selection? What are it’s units and how much of it is generated by the Weasel program?

    Poor Elmer is still chasing that wascally Weasel.

    With selection on, Weasel can converge in seconds. Turn off selection, changing nothing else, and Weasel will not converge in your lifetime (or trillions of them, for that matter.)

    That’s the power of cumulative selection. Suck it up, Elmer.

  24. Mung,

    Shannon told us that with a 26 letter alphabet plus 6 characters for spaces and punctuation, there would be 5 bits of information for each symbol. That is an information measurement

  25. Alan,

    I was using “content” in the everyday sense. If there is a technical usage in information theory, then I was unaware of that. Seems to me if “content” refers to “number of bits” in information theory, someone could have chosen a better word for it. “Number of bits” perhaps? Bit-total?

    This is pitiful, Alan.

    The phrase you used was “information content”. Something that has “information content” contains information, just as something that has “water content” contains water. This is everyday usage, not some arcane bit of technical jargon.

    Your statement is simply incorrect:

    My point was that Shannon information does not refer to information content.

    It was just another mistake. Given your track record, no one is surprised that you made it. Why not simply acknowledge it and move on?

    Whence this bizarre insistence on denying the obvious?

  26. keiths,

    keiths, You are wrong. “Content” has several definitions and one of them is “meaning”. You don’t get to say what others mean by their use of terms and phrases. That is pitiful

  27. Frankie,

    If something has “information content”, does it contain information (to a normal English speaker, that is)?

  28. keiths,

    If the word “content” = “meaning”, then yes. I have already been over this so obviously there is some other issue

  29. Next question for Frankie:

    If something has “water content”, does it contain water?

  30. keiths:
    Next question for Frankie:

    If something has “water content”, does it contain water?

    keiths, I understand your point. Usually “information content” means “how much is there”. You are not understanding mine.

    To me “information content” if “content” = “meaning” is redundant as to me there isn’t any information without meaning. However, when discussing Shannon, meaning is irrelevant so it helps to clarify what “information” they are talking about.

    Yes, Alan used a poor choice in words. But sometimes it is difficult when you are having a discussion with more than one person. You lose track of what was already agreed upon.

  31. And no one says to measure meaning. You can measure the amount of information required to convey that meaning in any given message. Both meaning and function are observations and experiences.

  32. Frankie,

    Messages carry information and that information can be measured using Shannon’s metric.

    Messages carry Shannon information and Shannon information can be measured using Shannon’s metric.

  33. Frankie: Yes and that is the power of directed evolution.

    All you have to do now now is show that evolution is directed by your intelligent designer and you can claim your Nobel!

  34. OMagain- why hasn’t any evolutionist ever won a Noble prize for discoveries pertaining to evolutionism? And why don’t you man-up and take on Perry Marshall’s challenge that could net you millions of dollars?

    It is sad that you feel the need to attack me and ID all the while holding all of the power to refute our claims. I take it that it upsets you that you have this power but are unable to use it because your position is a total failure.

    And what’s up with the tiktaalik reference? It has nothing to do with natural selection, drift or neutral construction. Not only that evolutionism doesn’t predict the existence of intermediate forms millions of years after the alleged transition occurred.

    That is why you are best ignored. You cannot form coherent arguments and you cannot support the claims of you position.

  35. Frankie: why hasn’t any evolutionist ever won a Noble prize for discoveries pertaining to evolutionism

    Because only you, Joe Gallien, Virgil, Jim, ID Guy, Frisbie Kid, Sombodydad and John-Paul talk about “evolutionism”?

  36. Why Richie is best ignored:

    I have explained what evolutionism refers to many, many times. It is not my fault that people like Richie are too dim to grasp that explanation.

    I don’t understand the rampant willful ignorance of TSZ regulars.

Leave a Reply