Okinawa Institute of Science and Technology, Onna-son, Okinawa, Japan.
PLoS Comput Biol. 2012;8(5):e1002521. doi: 10.1371/journal.pcbi.1002521. Epub 2012 May 17.
We present a new approach to modeling languages for computational biology, which we call the layer-oriented approach. The approach stems from the observation that many diverse biological phenomena are described using a small set of mathematical formalisms (e.g. differential equations), while at the same time different domains and subdomains of computational biology require that models are structured according to the accepted terminology and classification of that domain. Our approach uses distinct semantic layers to represent the domain-specific biological concepts and the underlying mathematical formalisms. Additional functionality can be transparently added to the language by adding more layers. This approach is specifically concerned with declarative languages, and throughout the paper we note some of the limitations inherent to declarative approaches. The layer-oriented approach is a way to specify explicitly how high-level biological modeling concepts are mapped to a computational representation, while abstracting away details of particular programming languages and simulation environments. To illustrate this process, we define an example language for describing models of ionic currents, and use a general mathematical notation for semantic transformations to show how to generate model simulation code for various simulation environments. We use the example language to describe a Purkinje neuron model and demonstrate how the layer-oriented approach can be used for solving several practical issues of computational neuroscience model development. We discuss the advantages and limitations of the approach in comparison with other modeling language efforts in the domain of computational biology and outline some principles for extensible, flexible modeling language design. We conclude by describing in detail the semantic transformations defined for our language.
我们提出了一种新的计算生物学语言建模方法,称为面向层的方法。这种方法源于这样一种观察,即许多不同的生物现象都是使用一小部分数学形式主义(例如微分方程)来描述的,而与此同时,计算生物学的不同领域和子领域要求模型根据该领域的公认术语和分类进行结构化。我们的方法使用不同的语义层来表示特定于域的生物学概念和底层数学形式主义。通过添加更多层,可以透明地向语言添加额外的功能。这种方法特别关注声明式语言,并且在整篇论文中,我们注意到声明式方法固有的一些局限性。面向层的方法是一种显式指定如何将高级生物学建模概念映射到计算表示的方法,同时抽象出特定编程语言和模拟环境的细节。为了说明这个过程,我们定义了一种用于描述离子电流模型的示例语言,并使用通用的数学符号表示语义转换,以展示如何为各种模拟环境生成模型模拟代码。我们使用示例语言来描述浦肯野神经元模型,并演示面向层的方法如何用于解决计算神经科学模型开发中的几个实际问题。我们讨论了与计算生物学领域的其他建模语言工作相比,该方法的优缺点,并概述了可扩展、灵活的建模语言设计原则。最后,我们详细描述了为我们的语言定义的语义转换。