Spiking Neural Simulator with STDP Adaptation

Version 0.6 10 June 2008

L.S. Smith, Department of Computing Science and Mathematics,
University of Stirling Stirling FK9 4LA, Scotland, UK.

lss at cs dot stir dot ac dot uk

28 May 2007: fixed bug that stopped it running on 10.5.2/10.5.3 (at least I believe I fixed it)

We have developed an Objective C (Cocoa/MacOSX) spiking neural network simulator. The overall aim of this piece of software was to provide a general purpose simulator for spiking neural networks, allowing STDP adaptation to be investigated.

It is intended as a research tool for investigating spiking neural systems, and particularly their use in spike based auditory processing. The basic mode of operation is very simple: once the network has been set up and the input files determined, the network is simulated using a fixed time-step for a predetermined length of time. The user can then choose to save spikes etc., or to alter the display, or to try out a different set of inputs or synapses, and run the system again. The simulator implements a number of varieties of spike-time dependant plasticity (STDP), based on Izhikevich's work (Neural Computation, 2003 15: 1511-1523).

There is a user manual (.pdf file) (12 pages long) which describes how to use this version of the program. No claims are made for accuracy, or warranties for correctness. There are two other documents available, another overview (which is more recent), and a more programmer-oriented overview of the synapse.

Here are some screenshots: the main window

and some panels. Firstly the main control panel

and secondly the panel for controlling STDP adaptation.

The application is 4500 lines of code but comes out really small as a binary, but it does seem to work. In use, lots of objects (neurons, synapses etc) are created, so that the size of the memory image is much bigger. Indeed, it's quite possiblke to make 32 bit architectures run out olf memory!. I have used it with a few thousand neurons without problems. It seems reasonably fast (but I haven't compared it with anything else).

I am not distributing the binary at this point: you have to build it using the freely available Xcode tools (download is below). If you want a binary version (either PowerPC or Intel, under 10.4.11), contact me. I have used it on 10.5.3, and it works (fixed deprecated functions, and some other issues too, on version 0.6). This can indeed, when compiled with the correct parameters to permit 64 bit operation, allow very large run-time files to be created, permitting larger simulations. Note that some early Intel boxes do not support 64 bit operation!

Here are some files from a simple example. Unzip the file, and you should see five files,

All of these files are human readable. If you start up the simulation and load these files, the press the setup button, then the start button, you should see something like this window.

If you are interested in developing this further (or if you simply want to tell me about problems/issues with the software) please email me at the address below. Note that there is absolutely no warranty whtsoever for this piece of software: it is provided as freeware, with no guarantee of correctness, fitness for purpose or anything else! Note that I am currently (as at 19 May 2008) using this software, and should be able to help you make it run if you have problems.

Dowloading the source code

I am making the code publicly available. It can be downloaded by clicking here. This should provide a zip file which should unpack into a directory from where you can build it with Xcode 3 (or, I believe, 2.5). There is some documentation included, but no binary or build directory (Xcode will create these).

Note that it needs at least Xcode 2.5 and MacOSX 10.4 (tested on 10.4.11 under both PowerPC and Intel architectures, tested 10.5.2/10.5.3 under Intel only). If you do intend to use the code, please

I do realise that I should provide lots more information about the software. The code is reasonably commented, but that's not really enough. If you want help with it, email me.

Known Bugs (Version 0.6)

Back to Leslie Smith's research pages.

Last updated: Tuesday, 10-Jun-2008 11:11:29 BST

If you have any difficulties accessing this page, or you have any queries/suggestions arising from this page, please email:
Prof Leslie S Smith (lss(nospam_please)@cs.stir.ac.uk)

computing logos