Slashdot Mirror


Software Emulates Organism's Entire Lifespan

An anonymous reader "Scientists have developed a software simulation, running on 128 computers, of an entire organism, a step toward carrying out full experiments without traditional instruments (abstract). 'For their computer simulation, the researchers had the advantage of extensive scientific literature on the bacterium. They were able to use data taken from more than 900 scientific papers to validate the accuracy of their software model. Still, they said that the model of the simplest biological system was pushing the limits of their computers. "Right now, running a simulation for a single cell to divide only one time takes around 10 hours and generates half a gigabyte of data," Dr. Covert wrote. "I find this fact completely fascinating, because I don’t know that anyone has ever asked how much data a living thing truly holds. We often think of the DNA as the storage medium, but clearly there is more to it than that." In designing their model, the scientists chose an approach that parallels the design of modern software systems, known as object-oriented programming. Software designers organize their programs in modules, which communicate with one another by passing data and instructions back and forth. Similarly, the simulated bacterium is a series of modules that mimic the different functions of the cell.'"

4 of 86 comments (clear)

  1. OO vs real life by robi5 · · Score: 4, Interesting

    I wonder how naturally an object oriented design worked out, given that molecular pathways are extremely complex and there are causal links between almost any pairs of phenomena. While OO is OK for CAD and man-made things, nature was much less restrained about high cohesion, low coupling, encapsulation and other heuristics. So the details would be interesting about inheritance, state representation, graph complexity, time-varying behavior etc.

    1. Re:OO vs real life by macklin01 · · Score: 5, Informative

      Simplified answer:

      These models tend to be object-oriented in the sense that a genetics "module" interacts with a protein signaling module, etc. In each module, you'd have the member data (say, a list of all proteins) and member functions (say, a model of the reaction network that discretizes the massive system of ODEs).

      The objects then interact. You have well-defined interfaces between these modules to codify currently known (or hypothesized!) biology. For example, members of the proteins module activate certain genes in the genetics module to (eventually) drive synthesis of more proteins.

      You write the rules based upon our current state-of-the-art in understanding cell biology, simulate, and see what happens. To the extent that it quantitatively matches experiments, we can assess the underlying hypotheses, refine them, or toss them out.

      In this work, it looks like they pulled information from 900 papers on this species of bacterium to simulate 525 genes, God knows how many proteins (genes can encode multiple proteins), and 28 processes.

      Notably, there is no spatial component (e.g., transport of proteins, RNAs, cell volume changes, cell mechanics, etc.), but it's an incredible set of work. And to be able to predict phenotype solely based upon the emergent behavior of this network is pretty incredible.

      --
      OpenSource.MathCancer.org: open source comp bio
  2. It causes an STD -- lives in the genital tract. by bdwoolman · · Score: 4, Funny

    Mycoplasma genitalium. No jokes, please. This is Science.

    --
    "No fear. No envy. No meanness." Liam Clancy
  3. Re:OOP by Celarent+Darii · · Score: 5, Funny

    No, no, no. Everyone knows God wrote the universe in LISP. He only had six days after all !

    For those too young to remember the song by Julia Eklar

    http://www.songworm.com/lyrics/songworm-parody/EternalFlame.html

    I was taught assembler in my second year of school.
    It's kinda like construction work -- with a toothpick for a tool.
    So when I made my senior year, I threw my code away,
    And learned the way to program that I still prefer today.

    Now, some folks on the Internet put their faith in C++.
    They swear that it's so powerful, it's what God used for us.
    And maybe it lets mortals dredge their objects from the C.
    But I think that explains why only God can make a tree.

    For God wrote in Lisp code
    When he filled the leaves with green.
    The fractal flowers and recursive roots:
    The most lovely hack I've seen.
    And when I ponder snowflakes, never finding two the same,
    I know God likes a language with its own four-letter name.

    Now, I've used a SUN under Unix, so I've seen what C can hold.
    I've surfed for Perls, found what Fortran's for,
    Got that Java stuff down cold.
    Though the chance that I'd write COBOL code
    is a SNOBOL's chance in Hell.
    And I basically hate hieroglyphs, so I won't use APL.

    Now, God must know all these languages, and a few I haven't named.
    But the Lord made sure, when each sparrow falls,
    that its flesh will be reclaimed.
    And the Lord could not count grains of sand with a 32-bit word.
    Who knows where we would go to if Lisp weren't what he preferred?

    And God wrote in Lisp code
    Every creature great and small.
    Don't search the disk drive for man.c,
    When the listing's on the wall.
    And when I watch the lightning
    Burn unbelievers to a crisp,
    I know God had six days to work,
    So he wrote it all in Lisp.

    Yes, God had a deadline.
    So he wrote it all in Lisp.