Evolution and Antibiotic Resistance

The current “intelligent design” controversy is disappointing. This morning I heard that 41% think parents should decide how evolution is taught, and only 28% think scientists and teachers should decide. I attended a conference where they took a vote on which was the most favored interpretation of quantum mechanics. Asher Peres reminded everyone that science is not a democracy. The scientific method does not involve voting.

In any case, creationists are often so eager to dismiss any evidence of evolution that they even question whether antibiotic resistance is an example of evolution. The site I just linked to has a series of articles which abuse Information Theory to argue that evolution is impossible (or that experiments contradict information theoretic predictions). In this case, the above site is incorrect. It argues that anti-biotic resistance does not result in an increase of information. Lets formulate this as an information theory problem:

We have two random variables X and Y. X is a random variable which represents the genome of the bacteria before exposed to the antibotic, and Y is the variable for the genome after exposure. We assume that we start with a random sample over the set of all of a particular type of bacteria, then after the bacteria have been exposed and those that survive continue to reproduce, we can sample over the outcome to get Y. In fact, viewed in this way, the antibotic exposure is a channel. Now, Z is the random variable which describes the antibiotic. It may have many properties, and we select one of these antibiotics at random to give to the bacteria. Lets look at the following quantities:

  • I(X;Z) : Information that the original genome has about the antibiotic. This should be very small since we could in principle apply any antibiotic.
  • I(Y;Z) : Information that the survivers have about the anti-biotic. This should be significant. Looking at the genes present in the survivors, in principle we could rule out many of the antibiotics which would have killed present individuals.

Clearly, by the above metric we should expect that I(Y;Z) > I(X;Z), or that the information that the genome has about the antibiotic has increased. This can be tested by doing an experiment with many different types of antibiotics. If the above claim is not true, I would think that it is a major problem for evolution: the population is not adapting and learning information about the environment. However, I think when properly stated, Information Theory not only supports Evolution, but provides a mathematical basis for the theory.

Evolution, in the end, is a theory about a complex system. We have many examples of counter-intuitive behavior arising from such systems, however, the complexity of the behavior alone is not evidence that there are not simple rules governing it. For some simple examples see Mathworld’s definition of a Cellular Automaton or a New Kind of Science.

Google Talk == Jabber

Google has a new IM system called Google Talk which uses the Jabber (XMPP Standard) Protocol.

I have been a long time fan of the XML-over-TCP based Jabber Instant Message Protocol. Unlike Email, IM is totally non-standard and every IM provider seems to use their own protocol (AIM, MSN, Yahoo, etc…). Jabber, on the other hand, is standardized by the IETF as XMPP.

I had some difficulty logging on with Gaim, the IM client I use on my GNU/Linux laptop, but someone on Slashdot figured it out. The trick is the use “gmail.com” as the server name, but in the connection options use “talk.google.com” as the connect server. I guess this is a libjabber bug.

Kudos to Google for using a standard protocol. My gmail ID is oscar.boykin (or if you are using another jabber system, you can message me at johnynek@jabber.org). You can use it to chat with me, but I don’t check my gmail, so please don’t send email to that gmail account (if you want me to read it that is).

I am a little disappointed that the Ajax wizards at Google have not released a browser based Google Talk client. I guess the difficult part is sending events from the server to the client. Also, Google Talk is not part of the Jabber network; users with Google Talk accounts cannot directly message users with other Jabber accounts. Google says it will change that some by federating with other systems. It would be better if they were connected to the standard Jabber network.

Netmodeler is Free Software

I am one of the lead developers of the Netmodeler C++ library. This is the library that I and many of my former group-mates at UCLA’s Complex Network Group have developed to make calculations and simulations for various works, including: spam fighting, more spam fighting, load balancing, search in unstructured p2p networks, disaster management in complex networks, and finding modules in protein networks.

The Netmodeler library is GPL licensed Free Software. Detailed instructions for obtaining Netmodeler are given on the Netmodeler wiki page.

We welcome others to use the code (as long as they obey the GPL), and we welcome source code contributions (particularly any autoconf/automake gurus that could help us get the build system improved).

Basic Web Page for Fault Tolerant Computer Architecture

There is a basic web page for Fault Tolerant Computer Architecture posted. I am experimenting with using a Wiki. I will encourage students to help me to improve the page.