|
Author
|
Topic: Joshua A. Smart: On the Application of Irreducible Complexity
|
John Bracht
Member
Member # 5
|
posted 07. June 2003 03:26
Rex,
Since when did single amino acids get the ability to carry out complex functions like these:
(a) nop-A No-operation instruction ; modifies other instructions (b) nop-B No-operation instruction ; modifies other instructions (c) nop-C No-operation instruction ; modifies other instructions (d) if-n-equ Test if two registers contain equal values (e) if-less Test if one register contains a lesser value than another (f) pop Remove a number from a stack and place it in a register (g) push Copy the value of a register onto the top of a stack (h) swap-stk Toggle the active stack (i) swap Swap the contents of two specified registers (j) shift-r Shift all the bits on a register one to the right (k) shift-l Shift all the bits on a register one to the left (l) inc Increment a register (m) dec Decrement a register (n) add Calculate the sum of the values in two registers (o) sub Calculate the difference between the values in two registers (p) nand Perform a bitwise NAND on the values in two registers (q) IO Output the value in a register and replace with a new input (r) h-alloc Allocate memory for an offspring (s) h-divide Divide off an offspring contained in memory (specified by heads) (t) h-copy Make a copy of a single instruction in memory (specified by heads) (u) h-search Find a pattern of nop-instruction in the genome (v) mov-head Move a head to point to the same position as the flow-head (w) jmp-head Move a head by a fixed amount stored in a register (x) get-head Write the position of a specified head into a register (y) if-label Test if a specified pattern of nops has recently been copied (z) set-flow Move the flow-head to a specified position in memory
These are the functions performed by the individual instructions in the Avida language. Correct me if I'm wrong, but the idea that a mere amino acid will carry out these sorts of highly complex functions is biologically rediculous. These functions are more akin to what one might expect from an entire protein or even an ensemble of proteins ("move the flow-head to a specified position in memory"? "Move the protons through the pore and generate ATP in the process"? "move the AMPA receptors to the surface of the neuron in response to cellular depolarization"? Complex biological functions like this occur through many proteins acting together in coordinated fashion. It's plainly incorrect to attribute these types of functions to single amino acids.
You're a biologist. Don't you agree?
John [ 07. June 2003, 03:39: Message edited by: John Bracht ]
IP: Logged
|
|
John Bracht
Member
Member # 5
|
posted 07. June 2003 03:38
Argon commented
quote:
There is no analogy anywhere for the "miracle appearance" of anything.
However, there are analogies within biology of exapted, rearranged, functional blocks and substructures.
See the above response to Rex Kerr. The programs are provided with a "pool" of instructions, which perform remarkably high-level functions, entirely pre-adapted to the logic functions they are to eventually perform. Furthermore, these instructions are entirely immune to damaging mutations, they cannot become "nonfunctional" at the instruction level or below. If these are proteins, then clearly this is like giving every organism a pre-adapted pool of, say, all the proteins needed for a flagellum, that could be randomly swapped into or out of the genome, regardless of the evolutionary history of the organism. The building blocks would be pre-provided, pre-formed, and completely available to every organism regardless of its evolutionary history.
Part of the problem with your quote above is that you're confusing a couple of concepts. My criticism is that the instructions are pre-encoded, pre-specified by the programming environment. Your comment about shuffling and mixing of functional blocks is entirely a different matter--once those functional blocks evolve, they can be shuffled or moved about. But evolution had to first produce those blocks before they could be shuffled. Notice that evolution first has to do the hard work of generating the different functional blocks to shuffle around. In the Lenski program, the functional blocks simply drop from the sky, miracle-fashion. The Lenski evolution has gotten past all the hard work of generating the functional blocks, and simply has to play with the arrangement of the blocks till the right structure emerges. So you're right--there is no analogy for functional blocks emerging, miracle-style, in real biology. But that's how the Lenski program operates, so it has no analogy in the real world.
I hope this clarifies--do you see the difference between what you're saying (evolution shuffles things around) and what I'm claiming (evolution has to first produce what may then be shuffled) about the Lenski program?
John
IP: Logged
|
|
yersinia
Member
Member # 324
|
posted 07. June 2003 05:03
Mike,
It is interesting how you can highlight ambiguities in defining "part", "function", etc. for the Avida program, without realizing how the same ambiguities apply to biological examples. How many times is filament protein used in a flagellum? 99% of the flagellum is filament protein (and see Dembski's Gettysburg Address--flagellum analogy in NFL for a case where this becomes somewhat misleading: the flagellum is more like ANSDOISUFSKWHSLKSJDLSKSDFFFFFFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF... than like a speech).
Or, going with the gene-products-version of parts: How many different gene products of various IC systems are (a) blatantly or (b) plausibly copies of other gene products in those systems? Flagellum, cilium, immune system, blood clotting, F1F0 ATPase -- this applies to some parts of all of these top five IC systems.
And speaking of functional and nonfunctional genes, for most/all of the above examples, we have cases where some of the functional genes have pseudogene duplicates.
RBH addressed your other points, i.e., the function of the EQU function is quite clear, and having different sets of required parts for the EQU function is no more of a problem that having different sets of required parts for the bacterial and archaeal flagella. There is more than one possible way to do virtually anything in biology. The required parts for both flagella and the EQU functions are identified in the same fashion, via knockout experiments, so I still can't see how you can say that the required parts are unidentified for the EQU functions.
yersinia [ 07. June 2003, 05:04: Message edited by: yersinia ]
IP: Logged
|
|
yersinia
Member
Member # 324
|
posted 07. June 2003 05:41
Rex and John,
I would vote for instruction<->gene being a better analogy. True, it is then desirable to allow the sequence of each "gene" to evolve (I have very little knowledge of exactly how the most basic bits of computing, i.e. if these sequences would be 1/0 strings or what), although you would have to then find a way of accomodating the apparent degeneracy of DNA/protein sequence when it comes to specific functions i.e., proteins with 15% or less protein sequence in common can be functionally and structurally virtually identical, plus the consideration that entirely unrelated and structurally dissimilar proteins can perform the same function. But I digress.
However, the point that John is making, about the origin of the parts, is really an entirely different question than the question raised by the "IC challenge". Behe conceded the origin of the parts -- e.g., Behe pointed out that the cilium's components of dynein, nexin, and tubulin were all present in the cytoskeletons of eukaryote cells. The question was how to assemble the parts into a functional multipart system in a step-by-step fashion, when theoretically the system would only be functional when complete. This is the challenge addressed by the Avida simulation.
But as for the origin of parts, the origin of genes is a reasonably well-understood and common process. It happens all the time. The cooption of genes is basically a process of one mutation which alters basic function (often in a redundant copy), followed by specialization on the new function. This is not what Behe, at least, considered the difficult part of the evolution of IC systems. And, in fact, when considering the origin of these IC systems we are always starting with an organism with hundreds/thousands of genes, not with nothing. Finally, searches of these genomes for just such cooptable parts (e.g., digestive enzymes related to blood-clotting enzymes; non-rearranging receptor analogs of immune receptors, which show that non-rearranging immune receptors in fact can function; the cilium components mentioned earlier, etc.) have generally been productive and supported the reasonableness of the parts being available.
As for "these instructions are entirely immune to damaging mutations, they cannot become 'nonfunctional' at the instruction level or below", this is irrelevant as selection continually removes detrimental mutations from the gene pool and thus they never spread to fixation in the population. Always think about the population. The individual is irrelevant, as the Borg might say.
IP: Logged
|
|
Micah Sparacio
Member
Member # 6
|
posted 07. June 2003 08:49
Yersina, I agree with your overall, general analysis: that even if the primitive instructions are themselves IC, it shouldn't matter when considering a higher-order IC system. As in computer science, we can envision the lower level units as black box functions and work our way up the abstraction latter.
I think there are bigger problems with this system. The biggest being the nature by which you arrive at an EQU function in an organism. It is a lego tower building exercise of amassing primitive nands on the data in the registers.
I've mentioned several other poblems: the primitives are exactly the primitives you need to get EQU. Remove the p instruction and the sytem will never rise in fitness.
************************************************
RBH, The reason I raise the multiplication challenge for the Lenski system, is that though the Avida system is capable of doing a multiplication operation, the difficulty level of evolving such a seemingly simple function is enormous. You can't just amass nands on data. Think about it a little bit, and let me know what you think. [ 07. June 2003, 08:59: Message edited by: Micah Sparacio ]
IP: Logged
|
|
GP
Member
Member # 570
|
posted 07. June 2003 09:51
quote: The reason I raise the multiplication challenge for the Lenski system, is that though the Avida system is capable of doing a multiplication operation, the difficulty level of evolving such a seemingly simple function is enormous.
Micah,
I disagree. Avida's instruction set has the necessary primitives to do multiplication, albeit slowly. In my opinion, it only has to set up a loop. In more or less Avida parlance:
code:
clear-registers
IO "X" push Y
label-A: pop Y push X
IO "Y"
add "Y" -> Y
push Y pop X
dec X
if X ~= 0 jmp label-A:
IO "Z"
I forget if Avida puts a restriction on the operation time, though I am sure there are much more efficient schemes (left for Avida to figure out!). Here might be a case where the organism may actually implement multiplication imperfectly, allowing for a gradation of fitness on the organism depending on the size of multiplications that it can perform. In other words, even though the concept of multiplication may be highly specified in mathematics, one needs not set up the system as such in silice. After all, in a 32-bit system, the largest accurate product is 32-bits! So we have to cut these critters some slack.
The possibilities are rather exciting, in my opinion, and definitely worth another experiment. [ 07. June 2003, 09:53: Message edited by: GP ]
IP: Logged
|
|
RBH
Member
Member # 380
|
posted 07. June 2003 15:43
Micah wrote quote: I've mentioned several other poblems: the primitives are exactly the primitives you need to get EQU. Remove the p instruction and the sytem will never rise in fitness.
Actually, that's not the case: a number of the intermediates can be performed with the instructions available less "nand." My bet is that they'd evolve if they're selectively advantageous. In actual fact, in the Case study lineage, several of the "intermediates" first arose when some other instruction appeared or disappeared. For example, NOT first arose when a point mutation changed an e to an o; when if-less mutated to sub. The nearest p to the mutated instruction is 13 instructions away. That doesn't guarantee that it wasn't part of the sequence that performed NOT, but it makes it unlikely. And NOT is selectively advantageous ("rewarded" by the fitness function), and the fitness of the population did in fact rise when it emerged. The only way to really tell, of course, is to run it without q. I don't have the necesssary version (1.6) on my machines here - they're Windows PCs, not Linux machines. I hope to have that access later this summer. If I can, I'll do a series of runs in which the nand instruction is not available.
Regarding the multiplication question, that's actually pretty much uninteresting to me. Knowing that the system is Turing-complete, the only real question is how long it would take, not whether it would eventually emerge. And it's not a useful question from the point of view of anything I'm interested in, so I doubt that I'll bother with it. One doesn't spend the time and effort necessary to do experiments merely to collect odd factoids; one does them in service of interesting questions that justify the effort necessary.
GP: The time (really, cycles) limit of an evolutionary run in Avida is user-defined by editing a control file. The only limitation (aside from one's lifetime!) would be storage (disk) space to stash the output files that are generated. One can edit the control file to limit what is stored, but the price of that is periodically sampled data (say, every 5 or 10 cycles) rather than exhaustive data.
RBH
Added in very late edit: I want to add a note to Micah. He asked a good question about what the weaknesses of the Lenski, et al., study might be. I'm giving that some careful thought, since with the prospect of getting access to a good Beowulf machine later in the summer, with a couple of colleagues, both evolutionary biologists, I hope to be doing some work to address those weaknesses. So I'm not going to treat it offhandedly.
RBH [ 07. June 2003, 19:09: Message edited by: RBH ]
IP: Logged
|
|
Rex Kerr
Member
Member # 632
|
posted 07. June 2003 22:59
John (and others),
Each amino acid has hydrophobicity, several pKa's, interaction affinity with a zillion other compounds, steric constraints, flexibility, and so on.
The properties of an amino acid are much more complex than a simple function like "swap". Swap is a very elementary computation. Given a stack A,B,C,... Before: stack = ABC... After: stack = BAC... This is all there is to know about swap. Is there any amino acid that can be understood so simply?
For ease of human understanding, the Avida instructions are much more comprehensible than "pKa 10.2 in water, three hydrogen bond donors, ...", and it's much easier to see how we might use Avida instructions to perform some other computational task we're interested in.
I don't attribute "swap" to any amino acid, nor do a attribute the catalytic properties of histidine to any Avita instruction. The Avida instructions are among the most primitive available to a program; the biochemical properties of amino acids are among the most primitive available to an organism.
However, an Avida instruction isn't a great analogy for either an amino acid or a gene. Avida programs are multi-part self-replicating entities with diverse primitive components; so are living organisms. Exceedingly few examples of IC depend critically upon the detailed biochemical properties of amino acids. Rather, IC is presented as an in principle argument that whenever you see any complex assembly of simpler components each of which is essential, then the complex assembly has not gradually evolved. It is that aspect of IC which Avida so strongly challenges.
As I noted before, it is not enough to simply note that Avida is not biology. Rather, one should point out specific features in Avida which are essential for its performance yet are different in biology, and demonstrate that changing to a biologicaly reasonable version destroys Avida's ability to create complex structures.
IP: Logged
|
|
Mike Gene
Member
Member # 149
|
posted 08. June 2003 13:19
RBH,
I’m still trying to get a few things clear before proceeding.
As for function, it sounds like you are say the same function (EQU) was evolved independently 23times, right? I assume also that there are many possible logic functions and “EQU” is a particular type of logic function. You also noted there are simpler functions involved. How many?
IP: Logged
|
|
Mike Gene
Member
Member # 149
|
posted 08. June 2003 13:23
Rex: quote: As I noted before, it is not enough to simply note that Avida is not biology. Rather, one should point out specific features in Avida which are essential for its performance yet are different in biology, and demonstrate that changing to a biologicaly reasonable version destroys Avida's ability to create complex structures.
I think you have it backwards. If one develops a model that is supposed to map to biology, they need to map it to biology. The default position is not to assume it maps well enough unless proven otherwise.
IP: Logged
|
|
Pim van Meurs
Member
Member # 541
|
posted 08. June 2003 13:34
Mike: I think you have it backwards. If one develops a model that is supposed to map to biology, they need to map it to biology. The default position is not to assume it maps well enough unless proven otherwise.
The mapping of Avida onto biology is of secondary interest to the research into generation of information and complexity via methods of mutation and selection. Remember that the design inference is not limited to biological systems and neither is NFL/CSI.
If it can be shown that CSI/IC systems can be generated through such processes as mutation and selection that CSI/IC is not a reliable indicator of detecting design in general. Thus finding IC/CSI systems in biology are not sufficient evidence against evolutionary pathways.
Once we all agree on this then we can move on and look at particular systems and determine if we can figure out their historical pathways and see if they lead to a designer which is "intelligent" or not. [ 08. June 2003, 13:37: Message edited by: Pim van Meurs ]
IP: Logged
|
|
Argon
Member
Member # 276
|
posted 08. June 2003 14:24
John Bracht wrote: quote: I hope this clarifies--do you see the difference between what you're saying (evolution shuffles things around) and what I'm claiming (evolution has to first produce what may then be shuffled) about the Lenski program?
Yes, John is discussing the experiment at a different hierarchical level (approximately). I think very, very few people here would claim that the Avida simulations in any way impacts questions about the creation of life from "inorganic" substrates or the emergence of pathways leading to self-replication.
But another, big question, which is probably easier to address is what level of hierarchy best characterizes most of the last 1-2 billion years of biological evolution? Take the mammalian blood clotting system as an example. Evidence points to shuffling, duplication and fusion rather than de novo emergence of many of its components. The diversity of polyketide synthases is definitely a case of subunit shuffling. The Avida system is probably more obviously applicable to such systems than it is to abiogenesis.
However, those questions about hierarchy have nothing to do with ICness, which is the focus of this thread. For starters, a system either is or isn't IC with respect to a particular function within a particular context. Knock-out "experiments" demonstrate this. Further, Behe's original IC definition was history-independent. That is, in fact, what made it such a potentially useful tool. One could assess ICness in a relatively straightforward, reasonably unambiguous way, independent of whether one knew anything about the system's history (Pet peeve: Something I continue to believe despite what I've read in discussions on this board -- It's helps to ignore the "fixes" used to redefine IC that only made things worse for useful analysis).
What John is suggesting, and I agree with this, is that there might be systems which couldn't evolve naturally. It is certainly not known whether the Avida simulation results apply generally to all of life's biochemistry (and it likely doesn't). I think most people recognize this. But this does leave us now with the necessity of creating two sub-classifications of IC systems: 1) Evolvable, and 2) Unevolvable (Actually, three: "Unknown"). [ 08. June 2003, 14:28: Message edited by: Argon ]
IP: Logged
|
|
Erik
Member
Member # 160
|
posted 08. June 2003 14:49
Mike Gene, you wrote: "If one develops a model that is supposed to map to biology, they need to map it to biology. The default position is not to assume it maps well enough unless proven otherwise."
Exactly what do you mean by "map to biology"?
The purpose of studies of the Avida system is to learn about those aspects of Darwinian evolution that are general features of populations undergoing differential reproductive success. The purpose is not to answer any questions about the specifics of the biological world. Although the theory of evolution has been formulated to describe and predict biological phenomena, much of it is sufficiently general to not depend on the biological details. For instance, population dynamics applies to RNA viruses as well as to DNA based life-forms, despite that it was originally formulated only with DNA based life-forms in mind. This is partly an effect of the generality of the process of Darwinian evolution and partly an effect of our ignorance. Since much of the biological details (e.g. protein folding) are not well-understood or to cumbersome to incorporate into useful models, it follows that successful models must be quite general with respect to such details.
This is all summarized in the abstract and "box 2" of the following article: quote: Wilke C. & Adami C. (2002) "The biology of digital organisms", Trends in Ecology & Evolution, 17(11):528-532 Abstract: Digital organisms are self-replicating computer programs that mutate and evolve. They can be thought of as a domesticated form of computer virus that lives in, and adapts to, a controlled environment. Digital organisms provide a unique opportunity with which to study evolutionary biology in a form of life that shares no ancestry with carbon-based life forms, and hence to distinguish general principles of evolution from historical accidents that are particular to biochemical life. In terms of the complexity of their evolutionary dynamics, digital organisms can be compared with biochemical viruses and bacteria. Recent studies of digital organisms have addressed long-term evolutionary adaptation and the growth of complexity in evolving systems, patterns of epistatic interactions in various genetic backgrounds, and quasi-species dynamics.
Box 2 in the article: "The short generation time of digital organisms and the ease and accuracy with which measurements can be taken make digital life research appealing. However, it also has its drawbacks, both in comparison to biochemical experiments and to traditional theoretical studies based on analytic calculations or simple Monte-Carlo simulations. In contrast to purely experimental studies with bacteria or viruses, research with digital organisms is restricted to abstract questions about general principles. We cannot learn anything about the biology of a particular biochemical organism using digital life. For example, because both transcription and translation are absent in digital organisms, the evolutionary dynamics specific to these forms of expression cannot be addressed. Moreover, the design choices that enter the construction of the digital world potentially influence the outcome of experiments, so care must be taken to study only those questions for which this influence is expected to be small. Traditional theoretical or computational studies have the advantage that the particular effect under investigation can often be described more cleanly: Irrelevant details can be neglected in analytical calculations and in custom-made computer simulations, whereas the dynamics of digital organisms often become as messy as those of their biochemical counterparts. Therefore, the digital organism approach is also not the method of choice when it is relatively easy to identify which aspects of the system under study are relevant, and which can be disregarded."
Judging from studies of biological and Avida populations, it does seem like there is a reasonable analogy between the dynamics of both worlds. Avida has been found to exhibit a reasonable population genetics, and the authors of the article cited above also report: quote: "The study of Lenski et al. was modeled after an earlier one that used E. coli [25]. The E. coli study focused on a single strain, and included only 225 mutants of that strain. There was no overall trend towards synergism or antagonism between mutations, and there were roughly equal amounts of synergistic and antagonistic interactions in the analysis of single pairs. The similarity in the results between the E. coli and digital organisms studies is striking, and supports the hypothesis that many aspects of evolving systems are governed by general principles."
(Note: The Lenski et al. study referred to here is of course a different article than the recent one in Nature, since the latter was not published until 2003.)
Erik
IP: Logged
|
|
RBH
Member
Member # 380
|
posted 08. June 2003 17:40
Mike Gene wrote quote: I'm still trying to get a few things clear before proceeding.
As for function, it sounds like you are say the same function (EQU) was evolved independently 23times, right? I assume also that there are many possible logic functions and "EQU" is a particular type of logic function. You also noted there are simpler functions involved. How many?
23 different programs that perform EQU evolved independently, in the sense that from identical initial conditions (a population of identical assembly language programs that could do nothing but replicate) except for randomization seed, in 50 evolutionary runs of 100,000 cycles a program that performed EQU evolved. All 23 such programs were different. Please don't conflate "EQU" (logical function) and "programs that perform EQU" (what evolved).
In addition to replication, the 1- and 2-input logic operations that (if performed by a critter) conferred selective advantage were NOT, NAND, AND, OR-N, OR, AND-N, NOR, and XOR. (And, of course, EQU.) In the main experimental group of 50 evolutionary runs, all conferred selective advantage in some degree. In a series of control runs, all 8 single operations and all pairs of operations were eliminated from the fitness function. All 36 of those control conditions also evolved at least one program (in 10 runs) that performed EQU. In those control conditions an additional 124 programs that performed EQU evolved. I don't know how many of them were unique - that's not reported in the paper.
RBH
IP: Logged
|
|
Mike Gene
Member
Member # 149
|
posted 08. June 2003 18:31
Still processing........
So the same function ("EQU") evolved 23 different times (or did 124 programs evolve with the same function?). And these are just 23 (or 124) different ways to arrange the "parts" to get the same function, right?
Why didn't any other functions evolve with EQU-like complexity?
As for the simpler functions, how many parts were they composed of? [ 08. June 2003, 18:33: Message edited by: Mike Gene ]
IP: Logged
|
|
|