Connectionists: Which simulators support structural dynamics?

Dan Goodman d.goodman at imperial.ac.uk
Wed Apr 6 12:32:41 EDT 2016


I can reply for the Brian simulator.

In Brian 1.x, we have support for "dynamic" synapses allowing you to add 
or delete synapses at runtime.

At the moment, in Brian 2 we don't have support for this although I'd 
like to add it in the future. It is already fairly straightforward to 
add synapses at runtime, but not to remove them. You'd have to make a 
copy of the whole set of synapses with some removed.

We don't have support for adding/removing neurons at runtime in either 
version.

In both versions, it's possible to pre-allocate an oversized model as 
you suggested. This is more straightforward in Brian 2 but can be done 
in either version.

For what it's worth, the reason we haven't put more effort into this 
feature is that nobody has asked for it, and to my knowledge, nobody 
used the feature that was available in Brian 1, which is why we didn't 
spend any time implementing it for Brian 2.

Dan

On 05/04/2016 23:01, Fred Rothganger wrote:
> The NEST simulator documents the capability to create/destroy synapses
> at runtime
> (http://www.nest-simulator.org/py_sample/structural-plasticity-example).
> Which other simulators support a similar capability?
>
> For clarity, let's define "structural plasticity" as the ability to add
> and remove synapses and neurons while the simulation is actively
> running. Full support would include doing this on an HPC system
> (multiple compute nodes) and automatically rebalancing the load.
>
> Several forms of partial support are possible, including:
> * Only the ability to add/remove synapses, but not neurons.
> * Limitation to a single compute node or thread.
> * Pre-allocating an oversized model, some elements of which are kept
> idle until needed.
>
> -- Fred
>
> Fred Rothganger
> Neural Computing Department
> Sandia National Laboratories
>


More information about the Connectionists mailing list