Skip to content

GES233/Glowworm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

[WIP] Glowworm

Simple PoC of neural simulation model.

warning

This is just a model to verify feasibility and may be deprecated at any time.

简体中文

The original idea from spikingnn. This is an elixir implementation with asynchoronous format.

Recording of idea: Interactive testbed for cortical modeling? - Elixir Framework Forums / Nx Forum - Elixir Programming Language Forum

Simulation of neuron references amiryt's Erlang-project, and hierarchical architecture inspired by ThousandIsland.

Architecture of application like following graph:

graph TD
  Application --> NeuronSupervisor
  NeuronSupervisor --1..n--> Neuron["Neuron GenServer"]
  Application --> PortScheduler("PortScheduler")
  PortScheduler --1..m--> Port("Port")
  Port <-.simulus or record.-> Neuron
  Neuron <-.communication.-> Neuron
  Neuron --> SomaRunner("SomaRunner :gen_statem") --> Container("Param and State Container: Agent")
  Neuron --> SynapseRunner("SynapseRunner :gen_statem") --> Container("Param and State Container: Agent")
  SynapseRunner -.current.-> SomaRunner
  Models -.require.-> SomaRunner
  Models -.require.-> SynapseRunner
Loading

Installation

def deps do
  [
    {:glowworm, git: "https://github.com/GES233/Glowworm.git"}
  ]
end