CSE 528 Homework 3: Modeling Neurons and Synapses

(Due Date: Extended to 5pm Friday February 11)

 

This set of exercises will take you from modeling simple passive membranes and integrate-
and-fire neurons to modeling synapses. These exercises will provide you with a basic set of 
"starter code" you could use for investigating potential research questions such as 
temporal versus rate-based coding and synaptic plasticity.
 
Turn in a hard-copy containing: (1) your answers to any questions asked in each exercise,
(2) any figures, plots, or graphs supporting your answers, and (3) printouts of any new 
Matlab code that you wrote to answer the questions in the assignment. Also email any 
Matlab code that you wrote to Scott (scotths@cs). 
 
1.     (Fun with membranes) Download and run the following Matlab code for 
     modeling a passive neuronal membrane as an RC-circuit: membrane.m
This code demonstrates how a membrane responds to a constant current input that is 
turned on for a fixed time interval and then turned off.
a.  Change the values for the membrane's resistance and capacitance (R and C), 
and find out how this influences the response of the membrane. Does it reach a 
stable value more quickly or more slowly after:
               i.  multiplying R by 5
ii. dividing C by 10
iii. multiplying R by 10 AND dividing C by 10?
b.     An experimental method for calculating a membrane’s time constant tau (when R 
and/or C are not known) is to start at zero and record the time at which the membrane 
potential V reaches a value approximately equal to 0.6321*V_peak= 0.6321*(I*R), where 
I is the constant injected current. Check if this method works by injecting different amounts 
of current I and changing the values for R and C. Once you’ve convinced yourself that the 
experimental tau appears to be identical to the theoretical tau (= RC) in all these cases, provide a
 theoretical justification for why this method works. (Hint: Derive a closed form exponential 
equation for V(t) by solving the differential equation for V and find the value of V at 
time t = tau).
 
2.     (Get fired up about Integrate-and-Fire neurons) Run the following Matlab 
     code for modeling an integrate-and-fire neuron: intfire.m
a.      Vary the input current gradually from very low to high values and find out the
     minimum current needed to cause the neuron to spike.
b.     What is the maximum firing rate (spike count/trial duration) of this neuron and 
     how is it related to the absolute refractory period “abs_ref” in the code? 
c.     Plot a graph showing input current versus the output firing rate of the neuron.
d.     Instead of feeding constant input, make the current I a sinusoidal function of 
     time: I = sin((1:tstop)*f); where f is the input frequency. Plot a graph showing 
     the output firing rate as a function of input frequency.
e.      Find the “resonant frequency” (if any) where the neuron “tracks” the input by 
     firing exactly 1 spike for each peak in the input.
 
3.     (Get to know an Alpha Synapse) Here's some code for simulating an 
     integrate-and-fire neuron receiving input spikes through an alpha synapse: 
     alpha_neuron.m 
The parameter “t_peak” controls when the alpha function peaks after an input spike 
occurs (and hence how long the effects of an input spike linger on in the postsynaptic 
neuron). “t_peak” for excitatory synapses in the brain may vary from 0.5 ms (AMPA 
or non-NMDA) to 40 ms (NMDA synapse). 
a.      Vary the value of t_peak from 0.5 ms to 10 ms in steps of 0.5 ms and observe 
     how this influences the output of the neuron for the fixed input spike train used 
     in this code. Plot the output spike count as a function of t_peak for the given 
     input spike train.
b.     Fix t_peak = 0.5 ms. Change the input firing rate by varying the threshold 
     parameterthr” from 0.7 to 0.95 in steps of 0.05. For each value of “thr”, 
     repeat the experiment 5 times with different random input spike trains. Record 
     both the output and the input firing rates in each case. Plot the average output 
     firing rate as a function of average input firing rate at each value of “thr”. Is the 
     shape of this input-versus-output plot similar to or different from the plot in 
     2c?
c.     How would you turn this synapse into an inhibitory synapse? Make the 
     necessary change to the code such that the random input spike train in 3a 
     (stored in “spike_train”) now acts through an inhibitory synapse.  Add a 
     constant current input to the neuron that is sufficient to cause it to spike with a
     high firing rate of about 150 Hz in the absence of inhibitory inputs. Now turn 
     on the inhibitory input spike train and vary the value of t_peak from 1 ms to 15 
     ms in steps of 2 ms (with g_peak = 0.05 as in 3a). Plot the output spike count 
     as a function of t_peak for the given input spike train.

 

4.     (Information Theory and Neural Coding) Show that the firing-rate distribution that maximizes

     the entropy when the firing rate is constrained to lie in the range 0 <= r <=  rmax is given by

     equation 4.22 in the textbook, and that its entropy is given by equation 4.23. Use a Lagrange

     multiplier (see the Mathematical Appendix in the textbook) to constrain the integral of p[r]

     to one. (Hint: Adrienne covered this in her lecture, so look up your lecture notes)