全部 标题 作者
关键词 摘要

OALib Journal期刊
ISSN: 2333-9721
费用:99美元

查看量下载量

相关文章

更多...
PLOS ONE  2012 

A Federated Design for a Neurobiological Simulation Engine: The CBI Federated Software Architecture

DOI: 10.1371/journal.pone.0028956

Full-Text   Cite this paper   Add to My Lib

Abstract:

Simulator interoperability and extensibility has become a growing requirement in computational biology. To address this, we have developed a federated software architecture. It is federated by its union of independent disparate systems under a single cohesive view, provides interoperability through its capability to communicate, execute programs, or transfer data among different independent applications, and supports extensibility by enabling simulator expansion or enhancement without the need for major changes to system infrastructure. Historically, simulator interoperability has relied on development of declarative markup languages such as the neuron modeling language NeuroML, while simulator extension typically occurred through modification of existing functionality. The software architecture we describe here allows for both these approaches. However, it is designed to support alternative paradigms of interoperability and extensibility through the provision of logical relationships and defined application programming interfaces. They allow any appropriately configured component or software application to be incorporated into a simulator. The architecture defines independent functional modules that run stand-alone. They are arranged in logical layers that naturally correspond to the occurrence of high-level data (biological concepts) versus low-level data (numerical values) and distinguish data from control functions. The modular nature of the architecture and its independence from a given technology facilitates communication about similar concepts and functions for both users and developers. It provides several advantages for multiple independent contributions to software development. Importantly, these include: (1) Reduction in complexity of individual simulator components when compared to the complexity of a complete simulator, (2) Documentation of individual components in terms of their inputs and outputs, (3) Easy removal or replacement of unnecessary or obsoleted components, (4) Stand-alone testing of components, and (5) Clear delineation of the development scope of new components.

References

[1]  Lapicque L (1907) Recherches quantitative sur l'excitabilitie électrique des nerfs traitée comme une polarisation. General Pathology and Pathological Physiology 9: 620–625.
[2]  Hodgkin A, Huxley A (1952) A quantitative description of membrane current and its application to conduction and excitation in nerve. Journal of Physiology (Lond) 117: 500–544.
[3]  Rall W (1957) Membrane time constants of motoneurons. Science 126: 454.
[4]  Marr DA (1982) Vision: A Computational Investigation into the Human Representation and Processing of Visual Information. Cambridge, MA: MIT Press.
[5]  Rall W (1959) Branching dendritic trees and motoneurons membrane resistivity. Experimental Neurology 1: 491–527.
[6]  Schwartz E (1990) Computational Neuroscience. Cambridge, MA: MIT Press.
[7]  Moore JW (2010) A personal view of the early development of computational neuroscience in the usa. Frontiers in Computational Neuroscience 4: 20.
[8]  Hines M (1993) NEURON–A program for simulation of nerve equations. In: Eeckman F, editor. Neural Systems: Analysis and Modeling. Norwell, MA: Kluwer. pp. 127–136.
[9]  Hines M (1984) Efficient computation of branched nerve equations. International Journal of Bio- Medical Computing 15: 69–76.
[10]  Hines M (1989) A program for simulation of nerve equations with branching geometries. International Journal of Bio-Medical Computing 24: 55–68.
[11]  Wilson M, Bhalla U, Uhley J, Bower J (1989) GENESIS: A system for simulating neural networks. In: Anderson D, editor. Advances in Neural Information Processing Systems, American Institute of Physics: New York. pp. 485–492.
[12]  Wilson M, Bower J (1988) A computer simulation of olfactory cortex with functional implications for storage and retrieval of olfactory information. In: Anderson D, editor. Advances in Neural Information Processing Systems, American Institute of Physics: New York. pp. 114–126.
[13]  Wilson M, Bower J (1989) Computer simulation of oscillatory behavior in cerebral cortical networks. In: Anderson D, editor. Advances in Neural Information Processing Systems, American Institute of Physics: New York. pp. 84–91.
[14]  Migliore M, Cannia C, Lytton W, Markram H, Hines M (2006) Parallel network simulations with neuron. Journal of Computational Neuroscience 21: 119–129.
[15]  Hereld M, Stevens R, van Drongelen W, Lee H (2004) Developing a petascale neural simulation. pp. 3999–4002.
[16]  Diesmann M, Gewaltig M (2002) NEST: An environment for neural systems simulations. In: Plesser T, Volker M, editors. Forschung und wisschenschaftliches Rechnen, Beitr¨age zum Heinz- Billing-Preis 2001, G?ttingen: Gesellschaft f¨ur wissenschaftliche Datenverarbeitung, volume 58 of GWDG-Bericht. pp. 43–70.
[17]  Touretzky D, Ladsariya A, Albert M, Johnson J, Daw N (2003) HHsim: An open source, real-time, graphical Hodgkin-Huxley simulator. Society for Neuroscience Abstracts 29: 24.13.
[18]  Hoops S, Sahle S, Gauges R, Lee C, Pahle J, et al. (2006) COPASI–A COmplex PAthway SImulator. Bioinformatics 22: 3067–3074.
[19]  Hucka M, Finney A, Bornstein B, Keating S, Shapiro B, et al. (2004) Evolving a lingua franca and associated software infrastructure for computational systems biology: The Systems Biology Markup Language (SBML) project. Systems Biology 1: 41–53.
[20]  Stiles J, Bartol T (2001) Monte Carlo methods for simulating realistic synaptic microphysiology using MCell. In: De Schutter E, editor. Computational Neuroscience: Realistic Modeling for Experimentalists, CRC Press: Boca Raton. pp. 87–127.
[21]  Cannon R, Gewaltig M, Gleeson P, Bhalla U, Cornelis H, et al. (2007) Interoperability of neuroscience modeling software: current status and future directions. Neuroinformatics 5: 127–138.
[22]  Stodden V (2009) The legal framework for reproducible scientific research: Licensing and copyright. Computing in Science and Engineering 11: 35–40.
[23]  Gleeson P, Crook S, Cannon R, Hines M, Billings G, et al. (2010) NeuroML: A language for describing data driven models of neurons and networks with a high degree of biological detail. PLoS Computational Biology 6: e1000815.
[24]  Subhasis R, Bhalla U (2008) PyMOOSE: Interoperable scripting in Python for MOOSE. Frontiers in Neuroinformatics 2: 6.
[25]  Djurfeldt M, Hjorth J, Eppler J, Dudani N, Hellas M, et al. (2010) Run-time interoperability between neuronal network simulators based on the MUSIC framework. Neuroinformatics 8: 43–60.
[26]  Davison A, Brüderle D, Eppler J, Kremkow J, Muller E, et al. (2008) PyNN: A common interface for neuronal network simulators. Frontiers in Neuroinformatics 2: 11.
[27]  Cannon RC, Hasselmo ME, Koene RA (2003) From biophysics to behavior: Catacomb2 and the design of biologically plausible models for spatial navigation. Neuroinformatics 1: 3–42.
[28]  Cornelis H, Rodriguez A, Coop A, Bower J (2012) Python as a federation tool for GENESIS 3.0. PLoS ONE 7(1): 29018.
[29]  Apostel L (1961) Towards the formal study of models in the non-formalsciences. In: Freudenthal H, editor. The Concepts and the Role of the Model in Mathematics and Natural and Social Sciences. Dordrecht: The Netherlands: D. Reidel Publishing Company. pp. 1–37.
[30]  Belhajjame K, Collet C, Vargas-Solar G (2001) A flexible workflow model for process-oriented applications. 2nd International Conference on Web Information Systems Engineering. IEEE, volume 1. pp. 72–80.
[31]  Cornelis H, De Schutter E (2002) Tutorial: Simulations with Genesis using Hsolve. Course material. Available from http://genesis-sim.org/filemanager/activ?e?fid=95, accessed 2011 Dec 11.
[32]  Dijkstra E (1982) On the role of scientific thought. In: Dijkstra E, editor. Selected Writings on Computing: A Personal Perspective. New York, NY: Springer-Verlag. pp. 60–66.
[33]  De Schutter E, Bower J (1994) Simulated responses of cerebellar Purkinje cells are independent of the dentritic location of granule cell synaptic inputs. Proceedings of the National Academy of Sciences USA 91: 4736–4740.
[34]  Robbins KA, Robinson M, Senseman D (2004) Visualizing cortical waves and timing from data. IEEE Visualization 401–408.
[35]  Gleeson P, Steuber V, Silver R (2007) neuroConstruct: A tool for modeling networks of neurons in 3D space. Neuron 54: 219–235.
[36]  Nordlie E, Plesser HE (2009) Visualizing neuronal network connectivity with connectivity pattern tables. Frontiers in Neuroinformatics 3: 39.
[37]  De Schutter E, Bower J (1994) An active membrane model of the cerebellar purkinje cell I. Simulation of current clamp in slice. Journal of Nerurophysiology 71: 375–400.
[38]  De Schutter E, Bower JM (1994) An active membrane model of the cerebellar purkinje cell II. simulation of synaptic responses. Journal of Nerurophysiology 71: 401–419.
[39]  Bower JM, Beeman D, editors. (1998) The Book of GENESIS: Exploring Realistic Neural Models with the GEneral NEural SImulation System. Springer-Verlag, New York, second edition.
[40]  Abramowitz M, Stegun I (1965) Handbook of Mathematical Functions. Dover Publications, New York.
[41]  Crank J, Nicholson P (1947) A practical method for numerical evaluation of solutions of partial differential equations of the heat conduction type. Proceedings of the Cambridge Philosophical Society 43: 50–67.
[42]  Borg-Graham LJ (2000) Additional efficient computation of branched nerve equations: Adaptive time step and ideal voltage clamp. Journal of Computational Neuroscience 8: 209–226.
[43]  Hines M, Markram H, Schuermann F (2008) Fully implicit parallel simulation of single neurons. Journal of Computational Neuroscience 25: 439–448.
[44]  Mernik M, Heering J, Sloane AM (2005) When and how to develop domain-specific languages. ACM Comput Surv 37: 316–344.
[45]  Law E, Roto V, Hassenzahl M, Vermeeren A, Kort J (2009) Understanding, scoping and defining user experience: A survey approach. Proceedings of Human Factors in Computing Systems conference. Boston, MA, USA: pp. 719–728.
[46]  Eckerson W (1995) Three tier client/server architecture: Achieving scalability, performance, and efficiency in client server applications. Open Information Systems 10, 1 3: 1–20.
[47]  (2008) Service-oriented architecture. World Wide Web. http://en.wikipedia.org/wiki/Serviceorie?nted architecture, accessed 2011 Dec 11.
[48]  Humby E, editor. (1973) Programs from Decision Tables. New York: American Elsevier.
[49]  K?hn D, Le Novère N (2008) SED-ML–An XML format for the implementation of the MIASE guidlines. In: Heiner M, Uhrmacher A, editors. Proceedings of the 6th International Conference on Computational Methods in Systems Biology. Rostock, Germany: Springer. pp. 176–190.
[50]  Hines M, Eichner H, Schuermann F (2008) Neuron splitting in compute-bound parallel network simulations enables runtime scaling with twice as many processors. Journal of Computational Neuroscience 25: 203–210.
[51]  Howell F, Dyhrfjeld-Johnsen J, Maex R, Goddard N, De Schutter E (2000) A large-scale network model of the cerebellar cortex using PGENESIS. Neurocomputing 32: 1041–1046.
[52]  Cornelis H, De Schutter E (2007) Neurospaces: Towards automated model partitioning for parallel computers. Neurocomputing 70: 2117–2121.
[53]  A H, A H (1952) A quantitative description of membrane current and its application to conduction and excitation in nerve. Journal of Physiology 117: 500–544.
[54]  Hines M, Morse T, Migliore M, Carnevale N, Shepherd G (2004) ModelDB: A database to support computational neuroscience. Journal of Computational Neuroscience 17: 7–11.
[55]  Brooks FJ (1995) The tar pit. pp. 3–6. Addison-Wesley Professional, 20th anniversary edition.
[56]  DeRemer F, Kron H (1975) Programming-in-the large versus programming-in-the-small. In: Shooman M, Yeh R, editors. Proceedings of the International Conference on Reliable Software. IEEE. pp. 114–121.
[57]  Merriam-WebsterMerriam-Webster Collegiate Dictionary. URL http://www.merriam-webster.com/. Accessed 2011 Dec 11.
[58]  IEEE ArchitectureWorking Group (2000) IEEE recommended practice for architectural description of software-intensive systems (IEEE Std 1471-2000).
[59]  Sutton S Jr, Rouvellou IIssues in the design and implementation of a concern-space modeling schema. URL http://www.research.ibm.com/hyperspace/w?orkshops/icse2001/Papers/sutton.pdf. Accessed 2011 Dec 11.
[60]  Sutton S Jr, Rouvellou I (2004) Concern modeling for aspect-oriented software development. In: Filman R, Elrad T, Clarke S, Akit M, editors. Aspect-Oriented Software Development. Boston: Addison-Wesley. pp. 479–505.
[61]  Dijkstra E (1976) A Discipline of Programming. Englewood Cliffs, NJ: Prentice Hall.
[62]  Parnas D (1972) On the criteria to be used in decomposing systems into modules. Communications of the Association of Computing Machinery 15: 1053–1058.

Full-Text

Contact Us

service@oalib.com

QQ:3279437679

WhatsApp +8615387084133