This title appears in the Scientific Report : 2015 

Interfaces in Computational Neuroscience
Eppler, Jochen Martin (Corresponding author)
Jülich Supercomputing Center; JSC
Computational Neuroscience Meeting 2015, Prague (Czech Republic), 2015-07-18 - 2015-07-23
Talk (non-conference)
Computational Science and Mathematical Methods
In this workshop we demonstrate how the MUSIC and ConnectionGenerator interfaces allow the NEST simulator to work as a module in a larger simulation and use external libraries for generation of connectivity.Current simulation environments in computational neuroscience, such as NEURON, NEST or Genesis, each provide many tools needed by the user to carry out high-quality simulation studies. However, since models are described differently in each environment, and even may depend on specific features of the environment, it is hard to move models between environments and the modeler is stuck with the tools of the environment for which the model was developed. This also makes it difficult to build larger simulations which re-use existing models as components. As systems grow more complex and encompass more subsystems they rapidly become unwieldy to develop. Monolithic systems make it infeasible to reuse separate model implementations for parts of the system.Furthermore, in other fields of numerical computation, the modeler often has the freedom to assemble the tools of choice out of a set of mesh generators, solvers, etc. Again the monolithic structure of software in computational neuroscience prevents this. We are not free to choose among wiring routines, solvers or neuronal spike communication frameworks. Standard model description languages, such as PyNN, NeuroML and NineML provide a partial solution by unifying the description of models, thereby improving reproducibility and making it easier to move the model between environments. Environments structured as frameworks, such as Genesis3 or MOOSE, also address the problems described above. Our aim with this workshop is to promote the use of generic interfaces in computational neuroscience software.Interfaces allow for the use of alternative implementations of software components. In this tutorial, we demonstrate and teach the tools NEST (a network simulator), CSA (a connectivity description language) and MUSIC (a tool for simulations across multiple environments) and show how they interact through generic interfaces. MUSIC is an interface and library which enables connecting separate models in real-time, even when they are implemented in separate simulator systems. The connections defined in MUSIC ports effectively implement an API for other models to use. This enables division of development of complex systems across areas and team members, and interfacing the model with outside data sources and sinks. The ConnectionGenerator interface allows to use different connection generating libraries in the simulators supporting the interface. This lets you plug in the library of choice for more freedom in describing your models.Hands-on sessions will allow participants to work on a coupling between own code and either the ConnectionGenerator interface or MUSIC. Support is provided by the authors and experienced users of the interfaces.