STDP in artificial cells

Moderator: wwlytton

Post Reply
peadargrant
Posts: 8
Joined: Mon May 21, 2012 10:12 am

STDP in artificial cells

Post by peadargrant »

Currently I am modelling a population of 100 neurons using IntFire2() cells. I would like to investigate a number of (possible) plastic effects in the network. On another thread, I noticed that the STDP models to date on ModelDB are all set up as point processes for use on biophysical cells. What is the best "first stop" for modelling STDP in networks of artificial cells using NEURON? Also, is there any particular method to avoid?
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: STDP in artificial cells

Post by ted »

There are lots of ways to implement STDP but in any given simulation environment only a few will be efficient and "natural" or "idiomatic" for that particular simulator. In the case of NEURON, for synapses attached to an artificial spiking neuron it would be best for the plasticity rule to be implemented as part of the model cell specification, i.e. in the NMODL source code for the model cell class. That requires FOR_NETCON to work for models designated as ARTIFICIAL_CELLs, but as of now that isn't working. I'll see if this can be fixed and get back to you.
peadargrant
Posts: 8
Joined: Mon May 21, 2012 10:12 am

Re: STDP in artificial cells

Post by peadargrant »

Thanks very much Ted, much appreciated,

I did see an example in ModelDB accession number 64261. Essentially what it does is introduce a new Artificial Cell that receives the pre and post-synaptic events (at a cost of two additional NetCon objects I think), which then adjusts the weight in the relevant synapse via a pointer from the NMODL code. I might give it a go and see how I get on...
gchadder3
Posts: 4
Joined: Fri May 28, 2010 5:05 pm

Re: STDP in artificial cells

Post by gchadder3 »

We are also wishing to implement STDP on ArtCells with a solution that can potentially generalize to conductance-based cells. The ModelDB accession number 64261 looks very useful as place to begin, assuming that the FOR_NETCONS() functionality still does not work for ArtCells. For each original NetCon synapse between ArtCells, it involves making 2 more NetCons and a weight adjuster object. One of the new NetCons runs from the pre-synaptic cell to the weight adjuster PointProcess and this has a non-negative weight. The other new NetCon runs from the post-synaptic cell and has a negative weight, so the NET_RECEIVE block of the weight adjuster can tell which unit spiked based on weight sign. It then updates a remembered pre- or post-synaptic last-spike-time, and uses a pointer called wsyn to update the NetCon weight from the original NetCon synapse.

This solution seems potentially quite generalizable even beyond ArtCells. We also want to use the same weight-adjuster object to implement eligibility traces for dopaminergic reinforcement learning.

Does this approach seem like a good long-term one, or is there better solution? We want something that isn't too tied to a particular ArtCell type.
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: STDP in artificial cells

Post by ted »

Checking NEURON's mercurial repository
http://www.neuron.yale.edu/hg/neuron/nrn/
for FOR_NETCON turns up this
FOR_NETCON works for ARTIFICIAL_CELL
author Michael Hines <michael.hines@yale.edu>
date Tue, 04 Sep 2012 15:14:43 -0400 (6 months ago)
so use any development code from that date onward (I'd suggest the latest)
gchadder3
Posts: 4
Joined: Fri May 28, 2010 5:05 pm

Re: STDP in artificial cells

Post by gchadder3 »

Is FOR_NETCONS() documented somewhere? We have the stdp.mod file, but it's not clear from this how FOR_NETCONS() works.
ted
Site Admin
Posts: 6300
Joined: Wed May 18, 2005 4:50 pm
Location: Yale University School of Medicine
Contact:

Re: STDP in artificial cells

Post by ted »

Most of the relevant posts were generated when the WWW site was entirely static pages, so some links need to be updated or you would probably already have found what you needed.

The original news item is
http://www.neuron.yale.edu/neuron/stati ... 23_06.html
but here's a more detailed description:
Discussion of stdp.mod
viewtopic.php?f=16&t=470&p=1614#p1614
Post Reply