NeoCortical Repository and Reports: Database and Reports for NCS Edson O. Almachar, Alexander M. Falconi, Katie A. Gilgen, Devyani Tanna, Nathan M. Jordan, Roger V. Hoang, Sergiu M. Dascalu, Laurence C. Jayet Bray, Frederick C Harris, Jr. Brain Computation Lab Department of Computer Science and Engineering University of Nevada, Reno
Outline Introduction Introduction Background Background Design Overview Design Overview Conclusion and Future Work Conclusion and Future Work
Human Brain Neurons : ~ 8.6 x 10^10 (86 Billion) Neurons : ~ 8.6 x 10^10 (86 Billion) Synapses: ~ 1x 10^14 (100 Trillion) Synapses: ~ 1x 10^14 (100 Trillion)
Brain Background Neuron ( C ) - cell that uses electrical signals to send information, as well as process it Neuron ( C ) - cell that uses electrical signals to send information, as well as process it Axon ( A) - the nerve fiber that a neuron’s electric pulse flows through Axon ( A) - the nerve fiber that a neuron’s electric pulse flows through
Brain Background Synapse - the transmission of information from one neuron to another Synapse - the transmission of information from one neuron to another Network - a computational model of a cluster of neurons sending information Network - a computational model of a cluster of neurons sending information
Neural Simulators Allow users to create systems of neurons with parameterized cell data and connection information Allow users to create systems of neurons with parameterized cell data and connection information Simulate brain activity using biological and mathematical models Simulate brain activity using biological and mathematical models Build a foundation for more research on the processes of the brain Build a foundation for more research on the processes of the brain
Levels of Organization of Modeling
What is NCS? Developed and maintained by the UNR Brain Computation Laboratory Developed and maintained by the UNR Brain Computation Laboratory The NeoCortical Simulator is designed for modeling large-scale neural networks and systems The NeoCortical Simulator is designed for modeling large-scale neural networks and systems Can model millions of neurons in real time Can model millions of neurons in real time Open source Open source Runs on a heterogeneous cluster of CPUs and NVIDIA GPUs Runs on a heterogeneous cluster of CPUs and NVIDIA GPUs First simulator to support real-time neurorobotics application First simulator to support real-time neurorobotics application
Building Better Solutions Users are usually researchers in the neuroscience field. Users are usually researchers in the neuroscience field. User Inconveniences for Neural Simulators User Inconveniences for Neural Simulators Learning to code brain models Learning to code brain models Time spent organizing output data Time spent organizing output data Generally Low Usability Generally Low Usability
Building Better Solutions
The Primary Users The Primary Users Neuroscientists Neuroscientists The Primary Usage The Primary Usage Research Research Design Goals Simplicity Usability Learnability Easy Collaboration Fast
Brain Model Database Design Three Neuron Model Types Three Neuron Model Types Izhikevich, Leaky-Integrate-And-Fire, Hodgkin Huxley Izhikevich, Leaky-Integrate-And-Fire, Hodgkin Huxley Necessary Capabilities Necessary Capabilities Storage, Searching, Updating Storage, Searching, Updating Storage Structure Storage Structure JSON format, Using MongoKit JSON format, Using MongoKit
Brain Model Database Design
Reports Design Graph Types Graph Types Raster Plot, Line Graph Raster Plot, Line Graph Understandable Real Time Reporting Understandable Real Time Reporting Customization Customization Color, Size, Type, Neuron Selection Color, Size, Type, Neuron Selection Ability to Easily Save Reports Ability to Easily Save Reports
Framework FLASK : python microframework FLASK : python microframework MongoDB : nonrelational database MongoDB : nonrelational database D3.Js : Graphing Library D3.Js : Graphing Library jQueryUI.JS : javascript UI library jQueryUI.JS : javascript UI library
NCR Database Goals Increased Collaboration Increased Collaboration Simple Layout Simple Layout Easy Searching Easy Searching
Database Tab Components Database Model Preview Headers Database Model Preview Headers Sorting Feature for Quick Searching Sorting Feature for Quick Searching Listed in Ascending or Descending Order Listed in Ascending or Descending Order Simple Preview Information Simple Preview Information
Database Tab Components Left Search Panel Left Search Panel Collapsable Grouping Structure Collapsable Grouping Structure Can Select Entire Types Can Select Entire Types Specify Parameter Values Specify Parameter Values As Value or Range of Values As Value or Range of Values
Database Tab
Database Tab Components Detailed View Detailed View Opens when model preview is selected Opens when model preview is selected
Report Tab Goals Management Control Panel Management Control Panel Dynamic Creation & Deletion Dynamic Creation & Deletion Ability to Save Reports Ability to Save Reports
Reports Tab Components Raster Plots Raster Plots
Reports Tab Components Line Graphs Line Graphs
Reports Tab Components Customizations Customizations Color Picker Color Picker Drag and Drop Drag and Drop Scale Axis Scale Axis
Reports Tab Components Customizations Customizations Cell Selection Cell Selection Pause and Playback Pause and Playback
Reports Tab Components Saving Reports Saving Reports Image: GIF or SVG Image: GIF or SVG Animation: Animated GIF Animation: Animated GIF
Conclusion Web Application aims to make using NCS easy, Leading to more time spent on research Web Application aims to make using NCS easy, Leading to more time spent on research
Future Work Complete full front end application by merging NCB with NCR and Virtual Robot Complete full front end application by merging NCB with NCR and Virtual Robot NCB NCB Brain Builder Brain Builder Simulation Builder Simulation Builder NCR NCR Reports Reports Model Database Model Database Virtual Robot Virtual Robot
NeoCortical Repository and Reports: Database and Reports for NCS Edson O. Almachar, Alexander M. Falconi, Katie A. Gilgen, Devyani Tanna, Nathan M. Jordan, Roger V. Hoang, Sergiu M. Dascalu, Laurence C. Jayet Bray, Frederick C Harris, Jr. Brain Computation Lab Department of Computer Science and Engineering University of Nevada, Reno
30
Hodgkin-Huxley Neurons (Added in NCS 7.0) Biologically accurate Biologically accurate Developed in 1952 by Alan Hodgkin and Andrew Huxley from their experiments on the giant axon of a squid Developed in 1952 by Alan Hodgkin and Andrew Huxley from their experiments on the giant axon of a squid Set of four differential equations Set of four differential equations Three variables n, m, h Three variables n, m, h
Hodgkin-Huxley (cont)
Leaky Integrate-and-Fire Comprised of Comprised of Sub-threshold leaky-integrator dynamic Sub-threshold leaky-integrator dynamic Firing threshold Firing threshold Reset mechanism Reset mechanism Leakage Channels Leakage Channels Drive the neuron to higher voltage Drive the neuron to higher voltage Let the voltage decay to its resting potential Let the voltage decay to its resting potential
Izhikevich Created by Eugene M. Izhikevich Created by Eugene M. Izhikevich Published in 2003 Published in 2003 Most Simplistic Most Simplistic Computationally efficient and captures large variety of response properties of real neurons Computationally efficient and captures large variety of response properties of real neurons Only 6 variables! Only 6 variables!
Image Source: Izhikevich (Added in NCS 6.0)
Izhikevich Output