- Poster presentation
- Open Access
Interoperability in the GENESIS 3.0 Software Federation: the NEURON Simulator as an Example
© Cornelis et al; licensee BioMed Central Ltd. 2013
- Published: 8 July 2013
- Software Architecture
- Script Language
- Incremental Model
- Indirect Coupling
- Neuron Simulator
The idea of "interoperability" of neuroscience modeling software was instigated by the problems associated with incomplete model specifications in published papers and incremental model extensions through research projects across laboratories. Cannon et al.  defined interoperability as "all mechanisms that allow two or more simulators to use the same model description or to collaborate by evaluating different parts of a large neural model". As an example, the adoption of common declarative model definition languages such as SBML, NeuroML, and NineML, allows to simulate the same model on different simulator environments. Run-time interoperability allows different simulators to compute different aspects of the same model at run-time either by direct coupling via simulator script languages, indirect coupling via interpreted languages, or coupling via object oriented frameworks (see  for details).
The Computational Biology Initiative (CBI) federated software architecture is a software architecture that transparently supports both interoperability and "extensibility" for model building, simulation, and result analysis. It is a modular meta-framework for software development that integrates all the functions necessary for a fully functioning simulator. The modular nature of the CBI Architecture provides several advantages for multiple independent contributions to software development including: (1) Reduction in complexity of individual simulator components when compared to the complexity of a complete simulator, (2) Easy removal or replacement of unnecessary or obsoleted components, and (3) Clear delineation of the development scope of new components.
The CBI Architecture is designed to support alternative paradigms of interoperability and extensibility through the provision of logical relationships between its modules. The definition of a common information exchange reference model allows software modules to automatically interpret the information exchanged meaningfully and accurately in order to produce useful results as defined by end users such that any appropriately configured software component or application can be incorporated into the simulator.
GENESIS 3.0 (G-3) is a major reconfiguration and update of the GENESIS simulation system. G-3 is the first neural simulator to comply with the modular design of the CBI Architecture. It embodies many software components, each of which has been developed in full isolation. These include the Model Container that efficiently stores a representation of a model in computer memory and has simple bindings to the NeuroML and NineML declarative modeling languages, and Heccer: A fast compartmental solver based on the GENESIS hsolve object that can be instantiated from C, Python, Perl or other scripting languages. The NS-SLI is the G-3 component that provides backward compatibility for the GENESIS-2 SLI.
In this presentation we report on our recent efforts to reconfigure the NEURON simulator as an independent CBI compliant software component and to integrate its scripting interfaces with other CBI compliant software components of the GENESIS 3.0 neural simulation framework. The integration of selected aspects of the NEURON simulator into G-3 will allow to seamlessly integrate HOC model components with G-2 or G-3 model components. Employed in this way, the modular paradigm of the CBI Architecture supports interoperability by facilitating the functional integration of otherwise independent applications.
Hugo Cornelis is partially supported by NIH grant 3 R01 NS049288-06 to James M. Bower.
- Cannon R, Gewaltig M, Gleeson P, Bhalla U, Cornelis H, Hines Ml, Howell Fw, Muller E, Stiles JR, Wils S, De Schutter E: Interoperability of neuroscience modeling software: current status and future directions. Neuroinformatics. 2007, 5: 127-138. 10.1007/s12021-007-0004-5.PubMed CentralView ArticlePubMedGoogle Scholar
- Cornelis H, Rodriguez A, Coop AD, Bower JM: Python as a federation tool for GENESIS 3.0. PLoS ONE. 2012, 7 (1): e29018-10.1371/journal.pone.0029018. doi:10.1371/journal.pone.0029018PubMed CentralView ArticlePubMedGoogle Scholar
- Cornelis H, Coop AD, Bower JM: A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture. PLoS ONE. 2012, 7 (1): e28956-10.1371/journal.pone.0028956. doi:10.1371/journal.pone.0028956PubMed CentralView ArticlePubMedGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.