Cellular automata with object-oriented features for parallel molecular network modeling.
Cellular automata are an important modeling paradigm for studying the dynamics of large, parallel systems composed of multiple, interacting components. However, to model biological systems, cellular automata need to be extended beyond the large-scale parallelism and intensive communication in order to capture two fundamental properties characteristic of complex biological systems: hierarchy and heterogeneity. This paper proposes extensions to a cellular automata language, Cellang, to meet this purpose. The extended language, with object-oriented features, can be used to describe the structure and activity of parallel molecular networks within cells. Capabilities of this new programming language include object structure to define molecular programs within a cell, floating-point data type and mathematical functions to perform quantitative computation, message passing capability to describe molecular interactions, as well as new operators, statements, and built-in functions. We discuss relevant programming issues of these features, including the object-oriented description of molecular interactions with molecule encapsulation, message passing, and the description of heterogeneity and anisotropy at the cell and molecule levels. By enabling the integration of modeling at the molecular level with system behavior at cell, tissue, organ, or even organism levels, the program will help improve our understanding of how complex and dynamic biological activities are generated and controlled by parallel functioning of molecular networks. Index Terms-Cellular automata, modeling, molecular network, object-oriented.
Zhu
Hao
H
Systems Biology Group, Bioinformatics Institute, Singapore. pk@bii.a-star.edu.sg
Wu
Yinghui
Y
Huang
Sui
S
Sun
Yan
Y
Dhar
Pawan
P
D000465:Algorithms; D002468:Cell Physiological Phenomena; D003198:Computer Simulation; D003205:Computing Methodologies; D016208:Databases, Factual; D008954:Models, Biological; D008967:Molecular Biology / Q000379:methods*; D011381:Programming Languages; D015398:Signal Transduction / Q000502:physiology*