6 ms·
On the one hand, a human cell is many times more complex than the cell simulated here (you could say that each of the hundreds of organelles in a human cell are
by praxulus 14y ago
On the one hand, a human cell is many times more complex than the cell simulated here (you could say that each of the hundreds of organelles in a human cell are closer in size and complexity to a bacterium than the whole cell). On the other hand, you could throw a datacenter at the problem, and get quite a leap over the 128-machine cluster used by the researchers.
You're probably right about the hierarchical simulation though. I have trouble believing that it's actually useful to model an entire body at a macro-molecular level. It would be like modeling electrons in circuit design software, rather than using the abstractions of voltage and current.
- technotony 14y agoHuman's have 23,000 genes, vs 525 in this organism. On the assumption that complexity increases with the square of the number of genes you would need 245,000 computers today to simulate one human cell. And it could be more than that because of RNA etc.
- radicalcut 14y agoHuman cells may have tens of times more forms of proteins expressed from these 23,000 genes if you take into account alternative splicing of pre-mRNA and many other post-translational modifications. These are all processes which prokaryotic organisms like M. genitalium generally lack. Even when we look aside from the level of DNA/RNA there are huge differences in morphological organisation of eukaryotic cells when compared to most prokaryotes: dynamic compartmentalisation of cytoplasm, different types of cytoskeleton, vesicle trafficking, complex signal transduction networks instead of usually simple two-component regulatory systems... So the simulation of whichever human cell type could be much more complicated than one could initially thought. I don't want to sound too much pessimistic, as someone with background in both CS and molecular biology I'm truly excited about this, but I still had to cool myself down a little bit after reading the article. I can't wait to read the original paper.
- joe_the_user 14y agoIt will be interesting to see what's possible when or if we have supercomputers an order of magnitude or two more powerful than the present ones. The problem of producing software of similarly larger size is naturally daunting. I think voltage etc is airtight abstraction mostly because each electron is guaranteed to be both simple and the same. Cells are both complex and distinct from each other (based on both genetics and internal physiology and so-forth). So macro-configuration of cells would seem to be a more leaky abstraction. Roger J. William's classic text Biochemical Individuality describes how much the parameters of even very basic physiological functions varies from person to person. So unlike a chip which starts with simpler building blocks and is designed to depend on discreet inputs as much as possible, the simulation of an organism may not have a better solution than a bottom up design with perhaps a variety of clever shortcuts.
- kens 14y agoI've been looking a lot at the 6502 processor simulation (http://visual6502.org http://visual6502.org) and it's interesting to consider the different levels of abstraction possible for chip simulation. The current simulator simulates abstract on/off transistors, which is sufficient for almost everything, but it doesn't exactly handle some unsupported opcodes that put conflicting signals on the bus. For that, you'd need to simulate actual voltage levels. If the transistors were very small, the voltage abstraction would break down because each electron starts to count. The simulator also ignores propagation delays. Moving up the hierarchy, people have gate-level 6502 simulations, which are tricky to implement exactly since the 6502 uses a lot of pass transistors and stored charge, rather than strictly Boolean logic. And then the typical CPU simulator runs at the register level, which is a lot simpler, but often gets the corner cases wrong (e.g. decimal arithmetic with invalid inputs). The point is that circuits can be simulated at many different levels of detail, with low-level simulations more likely to get things exactly right, but with high-level simulations much faster, easier to write, and easier to understand. Likewise, it will be interesting to see with cell simulations how much complexity can be abstracted away and still have a useful simulation. To get all the protein interactions right for example, you'd need to simulate individual atoms, which is insanely slow. So to simulate a cell, you're probably running at the level of protein and chemical concentrations and known interactions, which is faster but introduces error. For instance, how much do local concentrations matter? And to simulate a multicellular organism, you're probably going to make the cells fairly abstract. Personally, I think the key area for biology is going to be dealing with cell state. Cells hold state in a lot of different ways over many time frames (eg epigenetics), and I think computer scientists have a lot to offer biologists in understanding state. Someone else mentioned the few hundred cell types in the human body, but the internal state makes a huge difference. (Not to mention distributed state, such as how the brain stores information.)
- jff 14y agoI don't think you can just "throw a datacenter at the problem", this is why Blue Gene exists rather than just renting Google's datacenters. Modeling cells in the body would have some advantages in parallelism due to the very real locality of the problem, but with modern parallel programming techniques things do not scale that simply. A 512-node cluster would not necessarily be able to model something 4 times as complex; as the complexity increases, the computation/communication ratio will decrease, meaning your network (especially a datacenter network) will become a bottleneck.
- schiffern 14y agoIt gets tricky because the human body is an evolved system. Human-designed systems need to be human comprehensible, so they're laid out in neat hierarchical layers, each abstracting away the complexity of the underlying process. Evolved systems aren't restricted by comprehensibility. http://www.damninteresting.com/on-the-origin-of-circuits/ http://www.damninteresting.com/on-the-origin-of-circuits/ >Finally, after just over 4,000 generations, the test system settled upon the best program. When Dr. Thompson played the 1kHz tone, the microchip unfailingly reacted by decreasing its power output to zero volts. When he played the 10kHz tone, the output jumped up to five volts. … And no one had the foggiest notion how it worked. >Dr. Thompson peered inside his perfect offspring to gain insight into its methods, but what he found inside was baffling. The plucky chip was utilizing only thirty-seven of its one hundred logic gates, and most of them were arranged in a curious collection of feedback loops. Five individual logic cells were functionally disconnected from the rest– with no pathways that would allow them to influence the output– yet when the researcher disabled any one of them the chip lost its ability to discriminate the tones. Furthermore, the final program did not work reliably when it was loaded onto other FPGAs of the same type.