Is it possible to implement Evolving Spiking Neural Network Using Rank Order Coding in Brian2

Description of problem

I could not find any papers or implementation forf SNN other than STDP . I would like to know if it is possible to implement Evolving Spiking Neural Network on brian2 based on the paper, https://doi.org/10.1016/j.neunet.2018.07.014 .

Hi @kb100. I don’t know this paper/learning rule, but from a cursory look it does not seem to be a very good fit for the Brian simulator.

The input side can be implemented directly in Python and provided as an input to the Brian network, so this wouldn’t be an issue. Also, the IF variant that takes the order of arrival into account would be possible to implement quite easily. However, if I understand correctly, the output layer is supposed to add new neurons and merge them repeatedly with other neurons they are similar to. In Brian (and most other simulators, I guess), the number of neurons is fixed during a simulation, so this cannot be implemented directly. You can work around this by creating a large group of “potential neurons”, marking some of them as inactive and pulling from this pull to create new neurons, etc. but I have the feeling that you’d write a lot of code to deal with all of this, so that in the end the thing that gets actually simulated with Brian becomes somewhat negligible. In other words, it might be easier to write this model in Python from scratch, given all the non-standard/non-biological elements it has… But I might be wrong, maybe someone else her ehas experience with this kind of model!

1 Like

@mstimberg Thank you for your quick reply. I appreciate it.