[Technistuff] read a paper about simulating a “minimal” cell — apparently a cell with only 493 genes. This led to a goal: reproduce the simulation in TypeScript so it can run in a web browser. Why? We don’t know, but it is an interesting look at both in-depth biology and how to handle complex simulations. The code is available on GitHub.
For a point of reference, E. Coli has over 4,500 genes. The cell in question — JCVI-syn3A — actually has seven more genes than truly necessary. The data for this bacteria is available from a research lab, again, using GitHub.
The chemical master equation models DNA transcription to mRNA, mRNA translation to proteins, mRNA degradation, DNA replication, and tRNA charging. Metabolic reactions require a differential equation that covers things like lipid metabolism, amino acid metabolism, nucleotide metabolism, and more.
The two simulation equations cooperate, so any simulation has to work with both equations and feed data from one to the other. Currently, the simulation only uses a single thread, so there is room for performance improvements. In addition, the original simulation doesn’t model cell cycle mechanics and instead relies on rules. This suggests an area of improvement, too.
If you are interested in biology, this is fascinating work. If you aren’t, it is still a sophisticated simulation to handle in TypeScript and the browser. Of course, modeling real cells and their metabolism is a long way from here. While most of our simulations are electronic, modeling any kind of real-world system is bound to have similarities.