An Understandable, Extensible, and Reusable Implementation of the Hodgkin-Huxley Equations Using Modelica

The Hodgkin-Huxley model of the squid giant axon has been used for decades as the basis of many action potential models. These models are usually communicated using just a list of equations or a circuit diagram, which makes them unnecessarily complicated both for novices and for experts. We present a modular version of the Hodgkin-Huxley model that is more understandable than the usual monolithic implementations and that can be easily reused and extended. Our model is written in Modelica using software engineering concepts, such as object orientation and inheritance. It retains the electrical analogy, but names and explains individual components in biological terms. We use cognitive load theory to measure understandability as the amount of items that have to be kept in working memory simultaneously. The model is broken down into small self-contained components in human-readable code with extensive documentation. Additionally, it features a hybrid diagram that uses biological symbols in an electrical circuit and that is directly tied to the model code. The new model design avoids many redundancies and reduces the cognitive load associated with understanding the model by a factor of 6. Extensions can be easily applied due to an unifying interface and inheritance from shared base classes. The model can be used in an educational context as a more approachable introduction to mathematical modeling in electrophysiology. Additionally the modeling approach and the base components can be used to make complex Hodgkin-Huxley-type models more understandable and reusable.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Adrian Pop,et al.  The OpenModelica Modeling, Simulation, and Development Environment , 2005 .

[3]  Peter J. Hunter,et al.  An Overview of CellML 1.1, a Biological Model Description Language , 2003, Simul..

[4]  D DiFrancesco,et al.  A model of cardiac electrical activity incorporating ionic pumps and concentration changes. , 1985, Philosophical transactions of the Royal Society of London. Series B, Biological sciences.

[5]  Jamie Schwendinger-Schreck,et al.  A First Course in Systems Biology , 2012, The Yale Journal of Biology and Medicine.

[6]  Denis Noble,et al.  How the Hodgkin–Huxley equations inspired the Cardiac Physiome Project , 2012, The Journal of physiology.

[7]  Denis Noble,et al.  Markov models for ion channels: versatility versus identifiability and speed , 2009, Philosophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences.

[8]  Nicholas T. Carnevale,et al.  The NEURON Simulation Environment , 1997, Neural Computation.

[9]  J. Payandeh,et al.  Progress in understanding slow inactivation speeds up , 2018, The Journal of general physiology.

[10]  M. Courtemanche,et al.  Ionic mechanisms underlying human atrial action potential properties: insights from a mathematical model. , 1998, The American journal of physiology.

[11]  John Sweller,et al.  Cognitive Load Theory , 2020, Encyclopedia of Education and Information Technologies.

[12]  M R Boyett,et al.  One-dimensional mathematical model of the atrioventricular node including atrio-nodal, nodal, and nodal-his cells. , 2009, Biophysical journal.

[13]  Mudita Singhal,et al.  COPASI - a COmplex PAthway SImulator , 2006, Bioinform..

[14]  S. Severi,et al.  Computational analysis of the human sinus node action potential: model development and effects of mutations , 2017, The Journal of physiology.

[15]  D. McCormick,et al.  Simulation of the currents involved in rhythmic oscillations in thalamic relay neurons. , 1992, Journal of neurophysiology.

[16]  Alain Destexhe,et al.  Nonlinear Thermodynamic Models of Voltage-Dependent Currents , 2000, Journal of Computational Neuroscience.

[17]  A. Hodgkin,et al.  A quantitative description of membrane current and its application to conduction and excitation in nerve , 1952, The Journal of physiology.

[18]  S. Matsuoka,et al.  Steady-state and dynamic properties of cardiac sodium-calcium exchange. Ion and voltage dependencies of the transport cycle , 1992, The Journal of general physiology.

[19]  E. Marder,et al.  Global Structure, Robustness, and Modulation of Neuronal Models , 2001, The Journal of Neuroscience.

[20]  Joseph L. Hellerstein,et al.  Recent advances in biomedical simulations: a manifesto for model engineering , 2019, F1000Research.

[21]  Peter J. Hunter,et al.  OpenCOR: a modular and interoperable approach to computational biology , 2015, Front. Physiol..

[22]  Andreas Junghanns,et al.  Functional Mockup Interface 2.0: The Standard for Tool independent Exchange of Simulation Models , 2012 .

[23]  Sarala M. Wimalaratne,et al.  Facilitating modularity and reuse: guidelines for structuring CellML 1.1 models by isolating common biophysical concepts , 2009, Experimental physiology.

[24]  Jan-Hendrik S. Hofmeyr,et al.  Modelling cellular systems with PySCeS , 2005, Bioinform..

[25]  Carlos F. Lopez,et al.  Programming biological models in Python using PySB , 2013, Molecular systems biology.

[26]  Johannes F. Broenink,et al.  Modelica: An International Effort to Design the Next Generation Modelling Language , 1997 .

[27]  R. Winslow,et al.  Mechanisms of altered excitation-contraction coupling in canine tachycardia-induced heart failure, II: model studies. , 1999, Circulation research.

[28]  Jichao Zhao,et al.  Ionic and cellular mechanisms underlying TBX5/PITX2 insufficiency-induced atrial fibrillation: Insights from mathematical models of human atrial cells , 2018, Scientific Reports.

[29]  Kenneth S. Cole,et al.  Resting and Action Potentials of the Squid Giant Axon in Vivo , 1960, The Journal of general physiology.

[30]  Hiroaki Kitano,et al.  The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models , 2003, Bioinform..

[31]  Andreas Dominik,et al.  Mo|E A Communication Service Between Modelica Compilers and Text Editors , 2017, Modelica.

[32]  Hilding Elmqvist,et al.  Systems Modeling and Programming in a Unified Environment Based on Julia , 2016, ISoLA.

[33]  Gernot Ernst,et al.  Characteristics of mathematical modeling languages that facilitate model reuse in systems biology: a software engineering perspective , 2019, bioRxiv.