Abstract

MIIND is a software platform for easily and efficiently simulating the behaviour of interacting populations of point neurons governed by any 1D or 2D dynamical system. The simulator is entirely agnostic to the underlying neuron model of each population and provides an intuitive method for controlling the amount of noise which can significantly affect the overall behaviour. A network of populations can be set up quickly and easily using MIIND's XML-style simulation file format describing simulation parameters such as how populations interact, transmission delays, post-synaptic potentials, and what output to record. During simulation, a visual display of each population's state is provided for immediate feedback of the behaviour and population activity can be output to a file or passed to a Python script for further processing. The Python support also means that MIIND can be integrated into other software such as The Virtual Brain. MIIND's population density technique is a geometric and visual method for describing the activity of each neuron population which encourages a deep consideration of the dynamics of the neuron model and provides insight into how the behaviour of each population is affected by the behaviour of its neighbours in the network. For 1D neuron models, MIIND performs far better than direct simulation solutions for large populations. For 2D models, performance comparison is more nuanced but the population density approach still confers certain advantages over direct simulation. MIIND can be used to build neural systems that bridge the scales between an individual neuron model and a population network. This allows researchers to maintain a plausible path back from mesoscopic to microscopic scales while minimising the complexity of managing large numbers of interconnected neurons. In this paper, we introduce the MIIND system, its usage, and provide implementation details where appropriate.

Highlights

  • Why use this technique? Nykamp and Tranchina (2000), Omurtag et al (2000), Kamps (2003), Iyer et al (2013) have demonstrated that population density techniques (PDTs) are much faster than Monte Carlo simulation for 1D models; De Kamps et al (2019) have shown that while speed is comparable between 2D models and Monte Carlo, memory usage is orders of magnitude lower because no spikes need to be buffered, which accounts for significant memory use in large-scale simulations

  • For the population density approach we take with MIIND, the time evolution of the probability density function is described by a partial integro-differential equation

  • The MPINetwork class in MPILib represents a simulation as a whole and is instantiated in the init function of the SimulationParserCPU class which is a specialisation of MiindTvbModelAbstract. init is called from the Python module and, as the name suggests, MiindTvbModelAbstract was originally written with the aim of Python integration into The Virtual Brain (TVB)

Read more

Summary

Population-Level Modeling

For the population density approach we take with MIIND, the time evolution of the probability density function is described by a partial integro-differential equation. The delta functions reflect that an incoming spike causes a rapid change in state space, modeled as an instantaneous jump, h. It depends on the particular neural model in what variable the jumps take place. The right hand side of Equation (3) can be generalised to other renewal processes which cannot be formulated in terms of a transition probability rate function W. It is possible to introduce a right hand side that entails an integration over a past history of the density using a kernel whose shape is determined by a Gamma distribution or other renewal process (Lai and de Kamps, 2017)

The Case for Population Density
Quick Start Guide
THE MIIND GRID ALGORITHM
Generating the Grid and Transition
The Effect of Random Incoming Spikes
Threshold-Reset Dynamics
How MIIND Facilitates Interacting Populations
Running MIIND Simulations
When Not to Use the Grid Algorithm
THE MIIND MESH ALGORITHM
When Not to Use the Mesh Algorithm
Notes basename reset threshold
Jump Files
WRITING THE XML FILE
Algorithms
Additional Algorithms also provides
Connections
SimulationRunParameter
Reporting
Variables
MIIND ON THE GPU
RUNNING A MIIND SIMULATION IN PYTHON
Additional XML Code for Python Support
USING THE CLI TO QUICKLY VIEW RESULTS
Generate a Density Movie
DESCRIPTION OF MIIND’S ARCHITECTURE AND FUNCTIONALITY
MPILib
TwoDLib
MIIND Fulfills a Need for Insight Into Neural Behaviour at Mesoscopic Scales
TVB Integration
Handling Noise
Future Work
DATA AVAILABILITY STATEMENT
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call