Department of Physiology, Development and Neuroscience Optimization of neuron models using grid computing Mike Vella Department of Physiology, Development and Neuroscience
Cortical pyramidal neurons Abundant in the cortex of virtually every mammal Found in structures associated with advanced cognitive function Display excitability, plasticity Dendritic domains with distinct synaptic inputs
Department of Physiology, Development and Neuroscience Pyramidal neurons are very complex Highly-elaborate dendritic morphology Voltage-dependent ion channels Ligand-dependent ion channels (receptors) Various uniform and non- uniform spatial distributions of all ion channels Set of information to be included in a model is large
Department of Physiology, Development and Neuroscience Single neuron multi-compartment models
Department of Physiology, Development and Neuroscience Why optimize? Single neuron models provide a basis for understanding cell and local circuit function Maximal conductances, compartment capacitances, channel distributions – the large number of parameters makes it difficult to “hand-tune” Provides a basis for understanding if ion channel characterisation is sufficient
Department of Physiology, Development and Neuroscience Genetic Algorithms Genetic algorithms (GAs) optimize solutions by mimicking evolution, this includes: Mutation Crossover Reproduction ECSPY
Department of Physiology, Development and Neuroscience Experimental and simulated data “Current clamp” measurements are used Records membrane potential through injecting fixed current into a cell through recording electrode
Department of Physiology, Development and Neuroscience Camgrid architecture
Department of Physiology, Development and Neuroscience Work flow
Department of Physiology, Development and Neuroscience Preparing code to run on CamGrid Python installed on most nodes, but I prepared pre-compiled version, with the right python version and all needed libraries (numpy, scipy, sqlite etc..) NEURON – prepared a pre-compiled “portable NEURON” Shell scripts
Department of Physiology, Development and Neuroscience Data management: SQLite File-based, embeddable database system Makes handing large amounts of data clean Integrates well with Python, C/C++ etc.. Makes life much easier
Department of Physiology, Development and Neuroscience Communication with execute node: Paramiko Paramiko – SSH2 Protocol for Python Wrote a library for basic CamGrid tasks (contact me if you want this,
Department of Physiology, Development and Neuroscience My CamGrid experience pros: Speedup ~ (number of execute nodes) / 2 =>300 day optimization takes ~ 1 week => 1 million simulations possible Great support cons: Takes time to learn Pre-compilation of code can be tricky Problem diagnosis harder
Department of Physiology, Development and Neuroscience Results Initial results show optimizer finds correct parameter set when tested against known solution
Department of Physiology, Development and Neuroscience Results Becomes less accurate as simulation evolves Good fit can have similar features – not necessarily identical voltage trace
Department of Physiology, Development and Neuroscience Conclusions Neuron optimization complements experiments for building accurate models of single cells Computationally intensive task suited to CamGrid Preparation of software to run on CamGrid can be difficult, but may be very worthwhile.