email - August 2006 |
Measuring Complexity
We got a response from a famous expert in the field of complexity.
In March we wrote an essay on Emerging Complexity. In that essay we discussed Dr. Robert Hazen’s speculation about how complex systems might emerge from simple components through purely natural, unguided processes. He says,
A fundamental law of nature, the law describing the emergence of complex ordered systems (including every living cell), is missing from our textbooks. 1 |
The law is missing, of course, because it doesn’t exist. He then goes on to say,
All emergent systems display the rather subjective characteristic of “complexity”—a property that thus far lacks a precise quantitative definition. 2 |
He then goes on to try to invent some measure of complexity involving “the concentration of interacting particles (n), the degree of those particles’ interconnectivity (i), the time-varying energy flow through the system [VE(t)], and perhaps other variables as well.” 3
He admitted that he doesn’t really know how to measure complexity, but it would certainly be helpful if we had a precise quantitative definition.
Our response was that software engineers have known how to measure complexity of software programs for decades, and suggested that the same general technique could be applied to biological systems. The best known, most widely used complexity measure is McCabe software complexity metric. In our feature article, we gave the link to the Software Engineering Institute website that describes it. 4
We were delighted to receive this email from Thomas McCabe himself.
Dear Dave, Like you, my previous life had been [involved with] computer software. I had built a company on the application of math to computer algorithms. With your background in both computers and science I thought you might enjoy these first thoughts on DNA algorithm analysis. This is a letter that I am sending to several people and it may eventually evolve into something of substance. I have been reading about DNA and was pleasantly surprised to find some scientists using my theory in molecular genetics arguing about evolution and the beginnings of emergent intelligence. I have been thinking about DNA and complexity as you'll [see] in the attachment. This I find, like the beginning of my algorithm complexity research, to be captivating. The power of my original research was the leverage of mathematical rigor to software. The power of this idea is the leverage of hundreds of technology man-years to the new promising field of DNA. If we could find a connection we could take all the years of McCabe complexity experience and directly apply it to DNA. The mathematical theory, the various metrics, the visualization, the testing methodology, the empirical studies, the 30 years of industrial experience, ... All could be applied to DNA. That, would be a blast. [ellipsis his] Tell me what you think, Hope this finds you well, Tom |
He enclosed a draft of a paper he is writing on the subject. We won’t share that paper with you for several reasons. First, our audience is the general public, and technical detail of his paper assumes familiarity with biological concepts not generally known by the general public. Second, and more importantly, we don’t want to steal his thunder by publishing his work before it is finished. When finished, his paper will be worthy of being published in Science or Nature, but since it argues so powerfully against evolution, there is no chance that either journal will publish it.
We will tell you that he is taking a different approach than the one we suggested. We proposed looking at all the metabolic processes in a living cell, and attempting to compute the complexity of the cell.
He is taking a much more achievable approach. At the risk of oversimplifying his idea, we will say that instead of looking at all the metabolic processes in the cell, he is looking at just one. Specifically, there is a process in living cells that decodes the genetic information in the DNA molecule and builds biological structures accordingly. Conceptually, this process is not much different from the software program in a CD player that reads a compact disk and converts the information into music. Since we can compute the complexity of a program that reads a CD, one should also be able to compute the complexity of the biological process that reads and processes genetic information.
We are looking forward to learning his results.
No comments:
Post a Comment