Math Insight

Short-term memory project

Group members:
Total points: 1
Grading rubric

To earn credit, a project must meet the following criteria.

CriterionMetNot met
Accurately determine the mathematical structure underlying short-term memory storage by the model network
Give a clear interpretation on how this structure is used to store a short-term memory
Project receives creditYESNO
Submitting project

Submit the following by the due date.

  1. This cover sheet
  2. Answers to the project questions (typed or handwritten)

Background

Short-term memory is the capacity to actively remember small amounts of information for a short amount of time. Unlike long-term memory, which is stored by changing the connections among neurons, a short-term memory is maintained through the activity of neurons in a fixed network.

One way to explore the neuronal basis of short-term memory is through measuring the activity of neurons while animals perform tasks that require short-term memory. In one version of such a task, monkeys attempt to remember the location of an object presented on a computer monitor. At the beginning of a trial, no objects appear on the monitor (we'll call it a blank screen). Then, an object is briefly projected on the monitor. During the subsequent delay period, the blank screen is shown again. Although no objects appear on the monitor so that the visual stimulus is identical to that from the beginning of the trial, the monkey must actively remember the object's location in order to report its location at the end of the delay period and receive a reward.

Neurons in an area of the brain called the prefrontal cortex have been observed to be involved in this short-term memory task. These neurons show low activity during the initial blank screen present before an object appears. However, depending on the location of the object that was projected, a neuron may fire at a higher rate during the delay period, even though the visual stimulus is identical to that from the beginning of the trial. This delay period activity of certain neurons appears to coincide with times when the monkey is remembering that the object was in a certain location.

Let's imagine that this delay period activity originates in the prefrontal cortex. (It's possible that the delay period activity originates in another brain region that then sends inputs to the prefrontal cortex, in which case our model would be a better fit to that other brain region.) If we imagine that the input to the prefrontal cortex is the same during the initial blank screen and the delay period, then the prefontal cortex must be able to sustain different patterns of activity in the presence of the same input. The history of input to the prefrontal cortex would determine which activity pattern was activated. In other words, the prefrontal cortex would be exhibiting short-term memory of its input history.

In this project, we'll seek to build and analyze a simplified mathematical model that exhibits some of the properties of a short-term memory network. The overarching questions for this project are:

  • What mathematical structure must be present in a model for potential short-term memory storage?
  • How can the network use that structure to store a short-term memory?

A neuronal network consists of a myriad of neurons interconnected through a web of connections. Rather than developing a model with thousands of differential equations that track each neuron, our goal will be to capture the influence of the network with a simple two-dimensional model that tracks the activity of just two neurons. (The model could also represent two groups of neurons, but we'll imagine they are individual neurons to keep the vocabulary simple.)

We will represent the activity of each neuron by its firing rate. The output of each neuron is actually a sequence of spikes (called action potentials), and we'll model the rate at which each neuron is emitting these spikes. (We'll measure the rates in spikes per second.) The model for the dynamics of these rates should capture how the input to a neuron increases the neuron's firing rate. With such a simple model, we can then analyze how the network could store a short-term memory.

  1. Step 1: map biology to math
    1. Since we are modeling the neurons' activity by just their firing rate, the first component of the single neuron model is its $f$-$I$ curve, the curve that gives its output frequency $f$ as a function of the input $I$. We'll assume the two neurons have the same $f$-$I$ curve given by the function $$S(I) = \frac{M}{1+e^{-(I-\theta)/\sigma}}$$ Set the parameters $M=100$ spikes per second, $\theta=60$, and $\sigma=10$. $S$ gives the output in spikes per second as a function of the input $I$.

      Plot the function $S(I)$ for $0 \le I \le 150$. Make the following observations about the $f$-$I$ curve. What happens to its firing rate when the input approach zero? When the input gets large? What's its maximum firing rate? Calculate the firing rate when $I=\theta=60$ and note how it compares to the maximum firing rate.

      Plotting $S(I)$ with R (Show)
    2. Let $R_1$ be the firing rate of neuron 1 and $R_2$ be the firing rate of neuron 2, measured in spikes per second. If neuron 1 receives the input $I_1$ and neuron 2 receives the input $I_2$, model the dynamics of the firing rate by \begin{align*} \diff{R_1}{t} &= \frac{1}{\tau}(-R_1 + S(I_1))\\ \diff{R_2}{t} &= \frac{1}{\tau}(-R_2 + S(I_2)) \end{align*} where the time constant $\tau$ is 10 ms (milliseconds). If $I_1$ and $I_2$ are fixed numbers, these equations are uncoupled. Let's examine the equation for $R_1$ in this case.

      Set $I_1=60$, so that $S(I_1)$ is a number (determined above). What is the equilibrium of the $R_1$ equation viewed as a single one-dimensional differential equation?

      Since it turns out this equilibrium is stable, it means that the firing rate $R_1$ approaches the value $S(I_1)$, which depend on the input $I_1$. This is the meaning of the $f$-$I$ curve, $S(I_1)$, as it gives the long term firing rate as a function of a steady input $I_1$. The same thing is true for $R_2$; if its input is fixed to $I_2$, it will approach the value $S(I_2)$.

    3. Two neuron symmetric network

      For the short term memory model, we connect the two neurons together, as illustrated in this figure. Since neuron 2 is connected to neuron 1, the input to neuron 1 will depend on the firing rate of neuron 2 as well as an external input (modeling input from other parts of the brain). If we let the parameter $W$ represent the coupling strength between the neurons, we can model the sum of the internal input (from neuron 2) and the external input to neuron 1 as $I_1 = WR_2 + I_\text{ext}$. Since neuron 2 receives a connection from neuron 1 as well as the same external input, its total input is $I_2 = WR_1 + I_\text{ext}$.

      Write down the system of equations for $R_1$ and $R_2$ using this substitution for $I_1$ and $I_2$. Write the network in two ways: (1) as a system of differential equations in terms of the function $S(I)$, as in the previous part, and (2) substituting the definition of $S(I)$ to obtain a system of differential equations for $R_1$ and $R_2$ with parameters $M$, $\sigma$, and $\theta$. (Both versions will include the parameters $W$, $I_\text{ext}$ and $\tau$.) The first form looks simpler and is easier to interpret, so we'll usually prefer that form. The second form, though, gives all the details, and you might prefer it if you don't like having a mysterious function $S$ in your equation.

  2. Step 2: analyze the model with no input

    Using the below phase plane, analyze the short-term memory model under the case with no input, $I_\text{ext} = 0$. Set the coupling strength to $W=1.5$. All other parameters are as described earlier: $\tau=10$ ms, $M=100$ spikes per second, $\theta=60$, $\sigma=10$.

    So that you can focus on the concepts of the model rather than all the calculations, you can use the R script run_short_term_memory_symmetric.R to help you with the phase plane analysis. (The R script assumes you have the package deSolve installed.) After sourcing the file, you can run the command
    results=run_short_term_memory_symmetric(W=1.5,M=100,sigma=10,theta=60,I=0,tau=10)
    to simulate the short term memory system, plot the nullclines, and calculate the equilibria. (You can access the equilibria via results$equilibria.) The above call will simulate the system with some arbitrary initial conditions. You can specify the initial conditions $R_1(0)$ and $R_2(0)$ by adding the arguments R10 and R20 to the function call.

    One the phase plane:

    1. Plot and clearly label the nullclines
    2. Plot all equilibria and label them by their classification.
    3. If an equilibria is a saddle, draw the directions corresponding to the eigenvector with negative eigenvalue as arrows pointing toward the equilibrium. Draw the directions corresponding to the eigenvector with positive eigenvalue as arrows pointing away from the equilibrium.
    4. Plot direction vectors on each region of the biologically plausible phase plane ($R_1 \ge 0$ and $R_2 \ge 0$) and on each nullcline segment in the biologically plausible phase plane.
    5. Sketch a trajectory with the initial condition $R_1(0)=50$ and $R_2(0)=10$
    6. Sketch a trajectory with the initial condition $R_1(0)=80$ and $R_2(0)=10$
    7. Explain whether or not the network exhibits bistability. If it does, discuss the basin of attraction of each stable state. Any discussion of basins of attraction should be backed up by the analysis of a saddle and simulations with multiple initial conditions.

    The one calculation you need to do by hand is the classification of the equilibria. You can use the fact that the derivative of $S(I)$ is $$S'(I) = \frac{Me^{-(I-\theta)/\sigma}}{\sigma\left[1+e^{-(I-\theta)/\sigma}\right]^2}.$$ Furthermore, by the chain rule, the derivative of $S(WR_2 + I_\text{ext})$ with respect to $R_2$ is $W S'(WR_2 + I_\text{ext})$. Show how you calculated the Jacobian matrix at each equilibrium. You can use a program like R to calculate the eigenvalues and eigenvectors of the Jacobian matrix. Back up your classifications of the equilibria by giving the resulting eigenvalues. If the equilibrium is saddle, then give its eigenvectors.

  3. Step 3: interpret the model analysis biologically

    The claim was that our network was supposed to represent a short term memory. Imagine that when there are no external inputs (i.e., $I_\text{ext}=0$), the model represents the behavior of the prefrontal cortex network when the monkey is looking at a blank screen. In the short-term memory experiment, monkeys looked at a blank screen at two parts of each trial: at the beginning and during the delay period. Assuming the neurons were encoding what the monkey was remembering, the firing rates would be significantly different in each of those cases, despite the input being the same.

    Explain how our network with $I_\text{ext}=0$ can store a memory. Your explanation should be based on the above phase plane analysis. The results of the analysis regarding bistability and basins of attractions should play a big role. Characterize the firing rates when the network is storing a memory and when it isn't storing a memory. What initial conditions would lead to the network storing the memory? What initial conditions would lead to the network not storing a memory?

  4. Step 4: A memory of the history of the input

    The above analysis demonstrated that the network representing a monkey looking at a blank screen (with $I_\text{ext}=0$) could store a memory. So far, using the term “memory” was an overstatement, as the network wasn't remembering anything. It simply had two possible states. The last step of this project is to show that the network is actually storing a memory of the history of the input $I_{ext}$. This input history corresponds to the history of what was on the computer screen in the short-term memory experiment.

    For the model, we imagine that the input is large and positive when the computer screen is showing a relevant stimulus. On other hand, we imagine the input is large and negative in between trials. We can then ask if the network can remember which of these two possibilities for the input was presented most recently.

    1. The case with a large positive input

      Using the following phase plane, analyze the case when $I_\text{ext}=30$

      There's no need to do the comprehensive analysis as you did above for the zero input case. Simply draw the nullclines and the equilibria. You don't need to analytically classify the equilibria. Instead, just determine its stability by experimenting with different initial conditions. You can obtain all the required information using the run_short_term_memory_symmetric.R script by setting I=30 when calling the function.

      Does this network exhibit bistability? What happens to the firing rates $R_1(t)$ and $R_2(t)$ when there is a large positive input ($I_\text{ext}=30$)?

      (Optionally, try running the simulation with $I_\text{ext}=10$ and $I_\text{ext}=20$ to see what is happening to the nullclines and equilibria to get from the zero input case to the large input $I_\text{ext}=30$ case.)

    2. The case with a large negative input

      Using the following phase plane, analyze the case when $I_\text{ext}=-60$

      Simply repeat the above cursory analysis, setting I=-60 when calling the function defined by run_short_term_memory_symmetric.R.

      Does this network exhibit bistability? What happens to the firing rates $R_1(t)$ and $R_2(t)$ when there is a large negative input ($I_\text{ext}=-60$)?

    3. The entire short-term memory experiment

      We imagine that, before a trial begins, there is a large negative input $I_\text{ext}=-60$. (There really isn't a biological basis for this negative input; since we aren't modeling what actually happens between trials, we're just using the negative input to artificially reset the network.) After this negative input has been on for awhile, what is are the firing rates of the neurons? (If you run the simulation with results=run_short_term_memory_symmetric( .... ), you can look at the simulation results, such as the ending firing rates, by entering results$simulation_results. Alternatively, you might be able to infer the firing rates from the equilibria.)

      Now a trial begins with the monkey looking at a blank screen. Simulate the network with $I_\text{ext}=0$ and use the firing rates you just calculated as the initial condition. What happens to the firing rates after awhile? If you determined that the network with $I_\text{ext}=0$ was bistable, explain why the network chose this particular state. (An argument involving basins of attraction and initial conditions would be relevant here.)

      The second stage of the trial is showing a stimulus on the computer screen. Represent this stimulus by setting $I_\text{ext}=30$. Imagine that we show the stimulus for only 40 ms. Run the simulation with $I_\text{ext}=30$. For the initial condition, use the ending firing rates you calculated in the previous $I_\text{ext}=0$ part of the trial. To run for just 40 ms, set tmax=40 when calling the function to simulate the network. What are the firing rates at the end of those 40 ms?

      The third stage of the trial is the delay period with a blank screen. Using the firing rates at the end of the second stage as the initial condition, simulate the network with $I_\text{ext}=0$ for a second-long delay period (i.e., set tmax=1000 ms). What are the firing rates of the neurons during most of the delay period? If you determined that the network with $I_\text{ext}=0$ was bistable, explain why the network chose this particular state. (An argument involving basins of attraction and initial conditions would be relevant here.) Your response should explain why the network behaves differently during the delay period than it did during the initial blank screen stage.

    4. Summarize your results by answering the following questions. What mathematical structure (found with $I_\text{ext}=0$) was necessary to form the basis for storing a memory? How did this structure change with large negative or large positive input $I_\text{ext}$? If you observed the firing rate of the network during the blank screen condition ($I_\text{ext}=0$), how could you determine if the input $I_\text{ext}$ was more recently large and negative (corresponding to the beginning of a trial) or large and positive (corresponding to the presentation of a relevant stimulus)? Justify your conclusions.