C++ library for simulating spiking neural networks

Frank/Phenom 171943a566 Show complete citation in datacite.yml and readme.md 4 gadi atpakaļ
cmake e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
data e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
doc e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
env 987f54a712 Add .gitignore files 4 gadi atpakaļ
minimal e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
mycxxtests e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
python 987f54a712 Add .gitignore files 4 gadi atpakaļ
scripts e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
sensorycancel e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
simulations e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
src e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
.cproject e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
.gitignore e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
.hgignore e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
.project e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
CMakeLists.txt e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
LICENSE.md 6a7c5b463f Add X11 license file 4 gadi atpakaļ
build_all.sh e8a18157d5 ObjSim: object oriented simulation library for spiking neural networks 4 gadi atpakaļ
datacite.yml 171943a566 Show complete citation in datacite.yml and readme.md 4 gadi atpakaļ
readme.md 171943a566 Show complete citation in datacite.yml and readme.md 4 gadi atpakaļ
start_jupyter.sh 305d015bfd Document compiling and running of simulations, add jupyter start script 4 gadi atpakaļ

readme.md

ObjSim

This is a c++ based object oriented library for simulating spiking neural networks. It was used for simulations in the following publications:

Compiling

Running build_all.sh will compile:

  • the simulation library csim (source code is in src)
  • simulation main programs:
    • simulations/fm/som02/som02.cpp which was used in Frank Michler et al. (2009)
    • minimal/minimal.cpp is a minimal simulation program demonstrating how to use the library.
  • some unit tests in mycxxtests using the cxxtest library

Binaries will be installed in install.

Running via command line

You can run the simulations via:

cd install/bin/som02
./som02

settings_som02.cfg contains default simulation parameters that can be overwritten via command line arguments.

Running via Jupyter noteooks

start_jupyter.sh starts jupyter notebook in subdirectory python. The notebook python/ipynb/run_objsim_with_gaussian_input.ipynb Before you must provide a shell script in env/activate_python_env.sh to setup your python environment. You can use env/activate_python_env_EXAMPLE.sh as an example.

python/ipynb/calc_maps.ipynb demonstrates how to load simulation data and calculate topographic maps.

datacite.yml
Title ObjSim
Authors Michler,Frank;Philipps-Universität Marburg
Philipp,Sebastian Thomas
Description C++ library for simulating spiking neural networks.
License X11 License (https://spdx.org/licenses/X11.html)
References Michler F, Eckhorn R, Wachtler T (2009): Using Spatiotemporal Correlations to Learn Topographic Maps for Invariant Object Recognition. J Neurophysiol 102:953-64. [doi:10.1152/jn.90651.2008] (IsSupplementTo)
Michler F, Wachtler T, Eckhorn R (2006): Adaptive Feedback Inhibition Improves Pattern Discrimination Learning. Lecture Notes in Artificial Intelligence 4087:21-32. [doi:10.1007/11829898_3] (IsSupplementTo)
Funding DFG, EC 53/11
DFG, DFG.5471310
Keywords Neuroscience
Spiking Neural Networks
Topographic Maps
Object Recognition
Resource Type Software