Close
USC Libraries
University of Southern California
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected 
Invert selection
Deselect all
Deselect all
 Click here to refresh results
 Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
Folder
A proposed role for the superior colliculus within the feedback loop of the brainstem saccade generator
(USC Thesis Other) 

A proposed role for the superior colliculus within the feedback loop of the brainstem saccade generator

doctype icon
play button
PDF
 Download
 Share
 Open document
 Flip pages
 More
 Download a page range
 Download transcript
Copy asset link
Request this asset
Request accessible transcript
Transcript (if available)
Content A PROPOSED ROLE FOR THE SUPERIOR COLLICULUS WITHIN THE FEEDBACK LOOP OF THE BRAINSTEM SACCADE GENERATOR b y Osman Qamar A Thesis Presented to the FACULTY OF THE SCHOOL OF ENGINEERING UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements for the Degree MASTER OF SCIENCE (Biomedical Engineering) May 1995 Copyright 1995 Osman Qamar Table of Contents ii Introduction 1 Chapter I: Background Information 2 Chapter 2: Model Description 10 Chapter 3: Changes to the Model 22 Chapter 4: Simulation Results 30 Chapter 5: Conclusion and Remarks 44 Appendix 52 References 82 Table of Figures iii Figure 1. The original circuitry of the Dotniney-Arbib (1992) model brainstem saccade generator. Input received from the frontal eye fields (fFEF) and the superior colliculus (SC) drives the excitatory burst neurons (EBN). These project onto the oculomotor neurons (OMN) both directly and through the tonic neurons (TN). The omnipause neurons (OPN) inhibit the EBN while the resettable integrator (RI) integrates the movement of the current saccade. [page 221 Figure 2. The addition of the buildup neuron layer (BUN) is shown in the modification of the original model, [page 25] Figure 3A. The top panel represents the scbunl (fixation point (4,8)) and the bottom panel scbunr (fixation point (0,8)) in response to a target presented at (16,16). Fixation at (13,13). [page 31] Figure 3B . The response of the scbunl and the scbunr as the movement of activity starts proceeding towards the fixation zone, [page 32]_ Figure 3C. As the movement of activity arrives at the fixation zone in the scbunr, the saccade is about to be terminated, [page 33] Figure 3D. The system is foveated on the new fixation point and both of the rostral fixation zones in the scbunr and the scbunl are active, [page 34] Figure 4A. The components of the brainstem saccade generator responsible for the rightward movement in response to a target presented at (16,16). Fixation at (13,13). [page 36] F igure 4B . The components of the brainstem saccade generator responsible for the downward movement in response to a target presented at (16,16). Fixation at (13.13). [page 37] Figure 5. The response of the original model to a target presented at (13,17). Fixation at (13,13). Notice the lack of a scbunr or scbunl layer. The saccade generator follows the circuitry of Fig. 1. [page 38] Figure 6. The response of our new model to a target presented at (13, 17) to be compared with Fig. 5, the response of the original model. The new circuitry of the saccade generator is illustrated in Fig. 2. [page 39] Figure 7A. The first saccade in a double saccade task (target at (13,16), fixation at (13.13)). This saccade is purely horizontal, [page 41] Figure 7B . The second saccade in a double saccade task (target at (16,16), location of retina after completion of first saccade (13,16)). This saccade is purely vertical due to the ensuing movement o f the first saccade. [page 42] F igure 8. The response of the new model to a memory saccade. The fixation point (13,13) is active for 22.5 ms. The target (17,13) is shown for 5 ms between 2.5 ms and 7.5 ms. When the fixation point is turned off, the system makes a saccade to the target, [page 43] Abstract V A new role is proposed for the superior colliculus within the feedback loop of the brainstem saccade generator in light of identification of buildup neurons within the superior colliculus. The Dominey-Arbib model of spatial accuracy is taken as a platform and is modified to account for the new data. Simulations are then run with the new model and a comparison is made with the performance of the original model. The ramifications of these changes and suggested avenues for future research are then discussed. 1 Introduction This thesis is separated into five different chapters. The first chapter will detail some o f the background information used in deriving the original Dominey model and also recent experimental findings which served as the motivation for the changes made to the original model. Chapter two contains an overview of the modular design of the original program, detailing the computer code in a conceptual manner. The third chapter will define the actual changes that were implemented in the model, including a detailed description o f the newly added com puter code. Chapter four will present some simulation results obtained from the revised model. Finally, chapter five will summarize the effects induced by the changes and will also give suggestions for future work. Included in the Appendix is the computer code o f the program. 2 Chapter 1 Background Information The purpose o f the oculomotor system (OMS) is to control and maintain the position of the eyes. It fulfills this purpose based on two principles: bringing a target onto the fovea, or foveating a target, and maintaining that target on the fovea. It is the former that is of concern to this work. One method by which the oculomotor system foveates an object is through the execution o f saccadic eye movements, which are the focus of this thesis. To give some perspective to the role of these movements, it would be helpful to briefly describe the overall functionality of the OMS. In all, there are five different sub-systems of the OMS, each responsible for different movements. These are vesibulo-ocular movements, optokinetic movements, saccadic eye movements, smooth pursuit movements, and vergence movements. The vcstibulo-ocular movements use the vestibular canals to maintain an image on the retina during routine head movements. This is a reflexive movement and this reflex is almost always active in a healthy system. The optokinetic movements are responsible for maintaining an image on the retina during sustained head rotations. The saccadic eye movements foveate the eyes rapidly to a target presented in the field of vision. (There are also auditory saccades which respond to a sound stimulus rather than a visual stimulus and thus the target is not in the field of vision.) The smooth pursuit movements are responsible for maintaining a target on the fovea when the subject is tracking a moving object. Vergence movements are responsible for moving the eyes in opposite directions so that an image is positioned on both foveae. This aids in focusing a target. So, in summary, the first two movement systems along with the smooth pursuit movement 3 system are responsible for maintaining the stability of a target on the retina, while the remaining two systems are responsible for getting the eyes on target. Saccadic eye movements are very fast yet very precise reflexive eye movements exhibited by mammals. The scientific approachability o f this seemingly simple task has generated a lot of research into the saccadic system. Part of the allure o f this subject is that it is probably one o f the sim plest m otor system s in the body. However, understanding this system will potentially unlock the door to understanding more complex motor systems, which are all believed to share the same basic principles. The model built upon in this thesis is a saccadic eye movement model. It was originally constructed by Peter Dominey and a detailed description can be found in his thesis entitled "Models o f Spatial Accuracy and Conditional Behavior in Oculomotor Control." It uses the brainstem saccade generator as a foundation for the model and then models higher brain centers to simulate voluntary control over saccades. The model is coded in the Neural Simulation Language (NSL), which is based on C++. It uses a 9x9 unit matrix called "retina" which is extracted from a 19x19 unit matrix, "INPUT," representing the "real world." In its simplest form, the input to the model is a target which appears in one o f the elements of the retina matrix. In response to the presented target, a saccadic movement is executed, resulting in the centering of the target on the retina matrix, or foveation. A fundamental concept o f the model is that of spatial maps projecting through various brain regions. A characteristic of this model is that each element in a matrix is representative of a population o f cells rather than an individual cell. This model is a descendant o f the original Robinson (1975) model for saccade generation. According to this model, saccades were generated by a nonlinear pulse generator located in the brainstem. The actions o f this pulse generator were exemplified by burst cells, whose signals were generated by the difference between two signals. The 4 first of these signals was one which specified target location in head coordinates and the second signal was a feedback signal within the saccade generator which specified current eye location. During periods of target fixation, i.e., when a saccade could not be made, the burst cells o f the brainstem saccade generator were suppressed by pause cells. The inhibition o f these pause cells, enabling the onset of a saccadic movement, was supposed to come from an as yet unknown higher brain region (Robinson, 1975). Scudder (1988) incorporated the Superior Colliculus (SC) into the model. The SC in this model provided the brainstem saccade generator with a static signal which represented the desired displacement o f the eyes. Also, the SC became the higher brain region which projected onto the pause cells, inhibiting them before the onset of a saccade. In this role, the SC was not involved in the feedback loop of the saccade generator. Located on the roof of the mesencephalon and identified as being a center for sensorimotor integration (Sparks, 1986), the laminar, cortical-like Superior Colliculus has been the center of controversy for some time. The role of the Superior Colliculus in the local feedback loop o f the brainstem saccade generator is believed by some to be an active one. In the Dominey model, as in the Scudder model, the SC does not play an active part in the feedback loop. It helps produce the delta signal, which is a static signal encoding how much the eye should move. This signal is generated by a spatiotemporal transformation o f the spatial mapping of target representation in the SC. The delta signal is then constantly compared with the resetable integrator, which integrates the firing of the burst neurons and thus monitors how much the eye has moved in the current movement. Once the two signals are equal, meaning that the eyes have arrived on target, the saccade is terminated. In this fashion, the SC is kept out o f the local feedback loop which involves the constant monitoring of the resetable integrator. 5 Wurtz and Munoz (1993) have identified three different types of neurons in the intermediate layers of the Superior Colliculus. These are the build-up neurons, the burst neurons, and the fixation neurons. The buildup neurons are thought to code the movement of the eyes relative to the target during a saccade. Evidence for this theory is accumulating in both cats (Munoz et al., 1991) and monkeys (Wurtz and Munoz, 1993). In these animals, the activity in the buildup neurons has been seen to spread towards the rostral pole of the SC during a saccade. We contend that the rostral pole represents the target location and that the activity of the BUN neurons represents eye movements. Thus, this layer represents a target goal. The burst neurons generate the signals which are used by the brainstem saccade generator to drive the oculomotor neurons. The fixation neurons are located in the rostral pole of the SC. They inhibit activity in the SC while the eyes are fixated. Once a saccade is initiated, these neurons are inactivated and remain in that state until the termination of the saccade. Frequently, researchers discover a cell and attribute a name to it by reference to its apparent functionality. However, quite often two researchers refer to functionally similar neurons by different names, yet it is evident that the are talking about the same neuron. Such is the case with the burst neurons described by Wurtz and Munoz and the saccadic neurons referred to as "sc_sacM in the Dominey model. However, the buildup neurons and the fixation neurons are not accounted for in the original model and thus offer an exciting prospect for new modeling. Van Opstal and Van Gisbergen have also taken note of fixation cells (FIX) in the rostral pole of the SC which are active during periods of fixation and which stop firing during a saccade (Munoz and Wurtz, 1993; Van Gisbergen and Van Opstal, 1994). In the caudal pole of the SC are located SAC cells, whose firing pattern is complimentary to the FIX cells. Since there also exists such a mutually exclusive relationship at the level of 6 pause neurons and burst neurons, it is logically believed that the SAC cells project onto the burst cells and the FIX cells onto the pause cells. Again, the SAC cells are functionally the same as the "sc_sac" cells in the Dominey model. Additionally, Van Gisbergen and Van Opstal (1994) noted that as one moves form the rostral pole of the SC to the caudal pole, the movement fields of the SAC cells becomes more eccentric and larger. This, combined with the fact that the axis perpendicular to the rostral-caudal axis codes for saccade direction, leads to the conclusion that the spatial map o f the outside world (relative to current eye position) in the SC is organized in a polar manner. This fact was established early on and Robinson found this map to be nonhomogenous, i.e., more SAC cells are devoted to smaller saccadic movements (Robinson, 1972). Schlag-Rey et al. (1989) also found some evidence that would support the existence o f a buildup neuron layer in the SC. They employed the colliding saccade paradigm which applies stimulation to a brain region (the SC in this case) while a saccade is already in progress. When they applied this stimulation to the deep layers of the SC, the result was a saccade whose final destination was the vectorial sum of the originally initiated saccade and the saccade that would have been generated if a visual stimulus had fallen in the receptive field o f the area to which the stimulation was applied. This means that the deep layers of the SC represent a mapping of motor error, which is what we would expect. However, when the stimulation was applied in the superficial layers o f the SC, the result was quite different. When a superficial region of the SC was stimulated, the resulting saccade was the saccade that would have been initiated if a visual stimulus had fallen inside the receptive field, relative to the location of the eyes at the time o f the stimulation, o f the area that was stimulated. In other words, the superficial layers o f SC 7 do not represent motor error but rather they represent a target goal (Schlag-Rey et ah, 1989). Munoz et al. (1991b) provide evidence that hills o f activity in the SC shift from the caudal pole to the rostral pole during a saccadic movement o f the eyes. To date, there has been no satisfactory explanation for the source of this activity. We argue that the buildup neurons can be used to explain this experimental finding. By contending that the buildup neurons constantly code for the current position of the eyes relative to the target location, we force this layer to be constantly remapping and thus displaying the wavelike characteristics observed in the SC. There is still a debate over whether the saccade mechanism is feedforward or feedback. A problem with the feedforward theory is that it predicts that in a perturbation paradigm, the error due to the perturbation caused by electrical stimulation would not be corrected for. Sparks (1986) and coworkers provide some experimental data which helps the theory of a feedback mechanism. They conducted an experiment in which they trained a monkey to saccade to a remembered target. During the execution o f some of the trials, the experimenters delivered electrical stimulation to the SC (Sparks and Mays, 1983) or the FEF (Schiller and Sandell, 1983) which initiated a saccade in the wrong direction, before the expected saccade to the rem em bered target was allow ed to commence. However, even with these distractions, the monkey was able to make a compensatory saccade and arrive on target, in the dark. This provides strong support for the feedback mechanism. We believe the that the saccade mechanism involves a feedback component. It is im portant to note, however, that there is not substantial evidence to favor either a feedforward or a feedback mechanism Our new model proposes a middle ground role for the SC in the saccadic system. It does not support the theory that the SC provides continuous motor error to the saccade 8 generator (Waitzman et ai.f 1988 and Pelisson et al., 1991). In their hypothesis, the burst neurons only give enough of a signal to move the eyes to the movement field of the next burst neuron, rather than acting like a “one shot" burster which delivers the eyes on target. If this were true, then there would be no need for the SC to map larger movement fields in the caudal region while smaller and more precise movements are mapped in the rostral region of the SC, terminating in the fixation zone. All the burst neurons would burst the same amount, just enough to deliver the eyes to the domain of the next set of burst neurons. A “one shot" theory makes more sense in light of the eccentricity weighted mapping in the SC. Thus, small deviations from the fixation point would be amply represented, while for very large amplitude saccades, the caudal burst neurons would get the eyes to within the correct region and then corrections, monitored by the internal feedback mechanism, could be performed by the system as necessary. The actual additions made to the Dominey model are detailed in the next chapter. In adding new layers to the existing Dominey model, the intention is to start where the original model left off. The Dominey model is important in what it accomplishes, a representation o f the saccadic system spanning several brain regions. The model is by no means definitive and will be continually in need o f upgrades. The motivation for this project is precisely that: to provide an upgrade to the model. The changes made are, like the model, in no way definitive. However, they provide a platform for future modelers. If future discoveries warrant that parts of this model are no longer plausible, then they can be changed or upgraded due to the modular configuration of the code. Also, if future research in a particular area removes the justification for the existence of a mechanism in another area, this area can also be changed. Obviously, if research undeniably points towards a certain direction, that direction must be taken. 9 However, modeling offers the additional advantage o f hypothesizing or ruling out based on the premise that "it just can't work being configured like that." Chapter Two Model Description 10 The Dominey model is one o f spatial accuracy and conditional behavior in oculomotor control. It is coded in the Neural Simulation Language (NSL) which is based on C++. The model attempts to emulate and properly connect brain regions and their associated pathways involved in the response of the OMS to various experimental paradigms evoking saccadic responses. This chapter will serve as a synopsis of the computer code for the original model, with the intention of giving the reader an overview and basic understanding of it's functioning. For a more detailed description, the reader is referred to the original documentation (Dominey, 1993). The next chapter will explicitly detail the modifications which we have contributed, along with a formal description of the corresponding computer code. NSL is implemented on a Sun workstation. The basic construct of this modeling platform is a layer, which can be a square matrix, an array, or a data value. Each layer represents an area of the brain, a signal, or a connection mask. Each element in a matrix, modeling a brain area, represents a population of cells. These matrices project onto each other in varied fashion, representing the multiple projections within and between different regions of the brain. The connection masks dictate the weight of connections between various layers. The code is organized into modules, each of which models a particular region o f the brain. For each region, there is an input and an output module. The input module defines the weighted inputs coming into the cells (affecting their membrane potentials) and the output module defines their firing rates based on the membrane potentials. At each time step the value of a layer is updated based on its inputs and internal state. 11 As mentioned above, the input layer is defined as the summation of weighted projections, signals, and internal connections of a brain region. These inputs determine the membrane potential of the layer, which is defined as: u - - m(t) + Sm(t). dt In this equation, m(t) defines the current membrane potential, S m(t) defines the sum of all the weighted projections and signals from other brain regions, and z . is the time constant for the rate of change of the membrane potential. By using the Euler method, the above equation can be approximated by: m (t+ A t)«(l *— )m(l) + — Sm(i). Tk X m The output of a brain region is specified by pre-defined NSL functions which represent instantaneous average firing rates. The functions take the membrane potential calculated in the input module as their argument and then generate the output (firing rate) of the layer. There are four different types of functions that are currently defined: sigma, step, ramp, and saturation. They are defined in the following manner: PsNSLstep (p, m injnput, min_output, max_output) if p < m injnput, P=min_output else P=max_output P=NSLramp (p, m injnput, min_output, max.output) if p < m injnput, P=min_output else P=max(p, max_output) PsNSLsaturation (p. m injnput, m axjnput, min_output, max_output) 12 if p < min_input, P=min_input; if p > max_output, P=max_output; if min_input < p < max_input, then P is a linear function o f p P=NSLsigma (p, min_input, max_input, m in.output, max_output) if p < min_input, P=min_output; if p > max_input, P=max_output; if min_input < p < max^input, then P is a nonlinear function of p By convention, input layers are defined in lowercase letters while the corresponding output layers are defined in uppercase letters. Different input paradigms can be presented to the model, including simple, double, memory, or colliding saccades. When using the model, the user needs to define an input sequence and the output layers that are to be graphically displayed. NSL is capable of generating various kinds o f windows graphs, for which the user needs to define which layers are of interest and the parameters for the graphs. The user also needs to specify the inputs into the system, i.e. what the retina will see. When the program is executed, NSL continuously updates the variables in the program for the specified run time and layers of interest are graphically displayed. The code for the saccadic model is designed to be implemented in a repetitive cycle. The code begins with variable declarations which are followed by the initialization module, setting all the necessary variables to their neutral values. The next module is that representing the long lead burst neurons (LLBN). However, to gain a better understanding of the program, we will start describing the modules from the middle o f the program till the end and then come back to the beginning. Since we are presenting a brief synopsis and not a line by line explanation o f the code, the input and output 13 modules of brain regions will be discussed as one, so as to convey the basic functionality of that particular region. We will begin with the module entitled saccade.retina. This is where the target(s) is (are) presented to the retina, via the matrix INP, which is a 19x19 unit matrix representing the "real world." The retinal layer is a 9x9 submatrix o f INP and represents the current field of vision, with the center element representing the fovea. NSLeyemove is a subroutine used to center the retinal matrix, within INP, around coordinates HTHETA and VTHETA, the horizontal and vertical positions o f the eye (to be described later). The retina layer is simply a composite of the retinal layer over time, with a very small time constant (6 ms). In the output module entitled saccade_RETINA, the retina layer is pointwise multiplied by the matrix SACCADEMASK. This matrix is 0 if the eye velocity is above a certain threshold (240 units). Thus, the output layer RETINA is 0 if the eye velocity is above a certain threshold, i.e., if the eyes are moving too fast, the system can not "see" anything and visual input is gated off. The module saccade_VISCORTEX models the pathway o f the visual signal through the visual cortex. The pathway starts with RETINA supplying visual information and ends at the posterior parietal cortex. Currently, the model is not capable o f attributing any functionality to this region. The purpose of this module is twofold. First, it accounts for the time delay associated with the traversal of the visual signal through this section o f the brain. Secondly, it leaves the framework for future modelers working on this project to implant some functionality to this region. The module saccade.PPqv accounts for the quasivisual cells in the posterior parietal cortex. The basic functionality o f this module is to move a remembered target within the internal map of the PP such that after completion o f the first saccade in a double saccade task, the position of the second target is accurate with respect to current 14 eye position. This is necessary because the position of the second target with respect to eye position will obviously change after completion o f the first saccade in such a task. This shifting task is accomplished by the NSLshift subroutine. As input, the function takes the horizontal and vertical com ponents o f eye position and a constant, QVFACTOR, valued at 1600. This value was chosen to ensure that the value o f the resulting QVMASK ranged between -1 and 1 (Dominey, 1993). QVMASK is weighted to reflect the current direction o f movement and it is convolved with the previous internal map to yield a new internal remapping. This new remapping is then combined with the visual input to determine the membrane potential of the ppqv layer. This layer is inhibited by the FovElem signal and residual activity in die SC. This membrane potential is then used as input into the NSLsigma function to yield a firing rate for the PPqv layer. Finally, the center element o f the PPqv is set to 0, to prevent saccades to where the eyes already are, the straight ahead position. This region of the brain projects down to the superior colliculus as well as the frontal eye fields. In the case of a simple saccade, the PPqv layer simply provides a spatial map of the location of the target. The PPqv has intrinsic memory built into it which must be actively disabled when simulating memory saccades. This is done by setting the QVM ASK_kl term to 0. This insures proper operation o f the memory loop. The module saccade_fef models the frontal eye field region. This region receives input projections from the PPqv layer and the THmem layer. The FEF region is divided into three layers. The first layer is the visual layer, fef_vis. It receives input projections from the PPqv layer. This layer is where the right movement field/wrong receptive field cells can be found (Dominey, 1993). The response o f these cells stems from the fact that the projections from the PPqv enable them to fire for saccades in which the target would have been in their movement field. The wrong movement field label comes from the fact 15 that there is no visual stimulus presented in these cells' visual field. This phenomenon is witnessed in the double saccade task, as discussed above. The second layer is the fef_mem layer. Along with the thalamus, it forms the memory loop required for spatial memory. As noted above, the quasivisual shifting of the PPqv layer must be disabled in order for the memory loop to function properly in the model, as the intrinsic memory of the PPPqv layer would otherwise conflict with the memory loop. As expected, the FOn signal inhibits this layer also. Finally, the saccade layer, fef_sac accumulates the information from the previous two layers and provides a spatial map to the saccade generator, via the LLBN, of the potential targets detected by the FEF. This layer is also inhibited by the FOn signal. The module saccade_FEF generates the firing rates for the different FEF layers. The module saccade_FOn regulates the FOn signal and the FovElem signal, which have been mentioned above. These signals are active whenever the retina is foveated on a particular target, representing the concept o f voluntary control over oculomotor movement. Specifically, FOn is regulated by a step function which uses PP.elem(4,4) as input, i.e., what the retina is seeing at the moment. A signal perception by the retina of value 5 or higher activates the FOn signal. To put this in perspective, the signal strength o f a presented target is 90. In contrast, the value of the FovElem is the same as the value of the center element of the PP matrix. This means that FovElem can be overruled by a stronger stimulus whereas the signal FOn can not. The FEF projects onto the caudate region through the module saccade_caudate. This region has two layers, a cd_mem layer, representing memory cells, and a cd_sac layer, representing movement cells. The cd_mem layer simply receives a weighted projection from the FEFmem layer. The cd_sac layer receives a weighted projection 16 from the FEFsac layer. The module saecade_CAUDATE determines the appropriate firing rates for the two layers. The caudate in turn projects onto the SNR region. This region also has two layers, a memory layer and a saccadic movement layer. The memory layer of the SNR projects onto the thalamus and thus completes the memory loop between the FEF and the thalamus required for spatial memory. The saccade movement layer of the SNR projects onto the superior colliculus. In this way, the FEF projects onto the SC via the caudate and the SNR. Again, in this model, there is no special functionality attributed to the caudate and SNR regions but they are present to account for experimental data and leave the work to future modelers. The superior colliculus has several different layers. The superficial layer of the superior colliculus has a direct pathway to the retina. In the event that a target is not foveated when a new target appears in the visual field, this direct pathway from the retina to the SC is enabled and it drives the saccade generator to foveate the target. In this manner, the pathways through the higher brain centers are bypassed and this results in a very short latency saccade. The superficial layer is inhibited by the FOn signal, meaning whenever a target is foveated. The SC quasivisual layer receives a direct projection from the PPqv, in parallel with the FEF quasivisual layer. The SC saccadic layer receives its projections from the FEF saccadic layer and the SNR saccadic layer. All the different layers of the SC are incorporated into a Winner Take All paradigm (Didday and Arbib, 1975) and the strongest stimulus emerges as the new target. The SC then projects onto the brainstem saccade generator and helps provide the signals necessary to foveate the new target. The superior colliculus as a whole is inhibited by the FOn signal, i.e., no projections to the saccade generator are made if an object is already foveated. 17 The module saccade_thal, representing the thalamus, com pletes the spatial memory loop formed with the FEF both directly and via the caudate and the SNR. The thalamus receives an excitatory projection from FEFmem and an inhibitory projection from SNRmem and the SC. It is also necessary to set the straight ahead position to 0 in the thal_mem layer so that the fixation point is not remembered. The output module saccade_THAL uses the function NSLsigma to determine the appropriate firing rate for the thalamus. The module saccade_SPATIO_TEMPORAL_TRANS defines the spatial gradient masks RTOPO, LTOPO, UTOPO, and DTOPO. The elements within these arrays are evenly incremented and are graded according to direction. The left half elements of RTOPO, the bottom half elements of UTOPO, etc. are 0 since these masks are multiplied with layers representing the whole movement field to get a directional bias. In the module saccade_BRAINSTEM _LAYERS the above calculated TOPO arrays are converted to two sets o f matrices. The first set are the RW EIGHTS, LW EIGHTS, UWEIGHTS, and DWEIGHTS matrices. These are used to determine the DELTA signal, by pointwise multiplication with the LLBN layer. The DELTA signal codes how much the eyes should move to arrive at the specified target. The second set of matrices calculated are RSTM, LSTM, USTM, and DSTM. These matrices are used to convert the total field of vision information of the LLBN into directionally coded signals for the MLBN, thus starting the spatiotemporal transformation. This will be discussed in greater detail below. All numeric values for parameters in this model are determined in conjunction with each other, so as to ensure proper functioning. The FEF and the SC project onto the long lead burst neurons (LLBN), which define the input into the brainstem saccade generator. The projection strengths o f the FEF and LLBN are such that even if one of the regions is lesioned, the other can still 18 drive the LLBNs with enough strength to elicit a saccade. The values of the SC and FEF inputs are appropriately weighted and are pointwise added to yield a total input for the LLBN layer. A WTA paradigm is executed for the LLBN layer so that in the case of multiple targets, one stimulus emerges as the next target. The output module, saccade.LLBN utilizes the NSLsaturation function to determine an appropriate firing rate for the LLBN layer. The LLBN drive the medium lead burst neurons (MLBN). The module saccade_mlbn calculates the membrane potentials for the MLBN layers. There are four MLBN layers, one for each direction. Since we already employed a WTA paradigm with the LLBN, we are ensured that the MLBN are only presented with one target. RSTM, LSTM, USTM, and DSTM are matrices which are directionally weighted in the right, left, up, and down directions. The LLBN layers get multiplied with the STM signals, decomposing a given target representation into its directional components. Since the STM signals are directionally weighted with increasing weightage for increased eccentricity, we have the start of a spatiotemporal transformation. The output module saccade_MLBN uses the NSLsaturation function to determine an appropriate firing rate for the four different MLBN layers. The module saccade.rebn represents the excitatory burst neurons of the brainstem saccade generator. The maximum value of the four different MLBN layers are taken and added to the input of the burst neurons. The burst neurons are inhibited by the PAUSE cells, which fire during periods o f foveation and are disabled during saccades. This completes the spatiotemporal transformation o f the signal because now a spatial location in the SC or FEF has been converted into a firing rate for the burst neurons. The output module saccade_REBN calculates the firing rate for the four different EBN signals using 19 NSLramp. This accounts for the pulse portion o f the stereotypical pulse/step signal which drives the motor neurons o f the oculomotor plant. This is an important point in the program because o f the com pletion o f the spatiotemporal mapping. A spatially represented target from the SC and/or the FEF is presented to the LLBN. These inputs are weighted such that a saccade can be generated based on the strength of just one of these signals. A WTA paradigm is employed to single out a target in the case of multiple targets. The STM signals are weighted in a particular direction and have a value of 0 in the direction opposite to which they are weighted. Pointwise multiplication with the LLBN layers yields MLBN layers that have a particular temporal weight attached for each spatial representation. These values are then used to determine the firing rates o f the EBN, which are inhibited by PAUSE cells. The module saccade_trig is part of the feedback loop in the saccade generator and it determines the initiation of the saccade. The trig signal, as the name suggests, triggers the onset o f the saccade. Once the signal is given, it is inhibited until the completion of the saccade so that residual activity in the SC and FEF won't affect the performance of short saccades. The pause cells are what control the activity o f the burst cells. The pause cells are deactivated by the onset o f the trig signal. Once deactivated, the pause cells remain in this state until the resetable integrator equals the DELTA neurons. The resetable integrator integrates the signal o f the excitatory burst neurons for a given saccade and thus maintains an account o f how much the eyes have moved in the present saccade. The delta neurons represent how much the eyes should move in order to foveate the desired target. So, naturally, when these two signals are equal, it means that the eyes have arrived on target and the pause cells are once again activated, locking the retina on the target, i.e.. foveating the target. 20 The module saccade_tempora]_remapping contains two signals, fefswitch and fefgate. FEFSWITCH is the output layer for the fefswitch layer. It is used to define the fefgate signal, which in turn is used to define the FEFGATE signal, through the saccade_TEMPORAL_REMAPPING module. The FEFGATE signal is used to correct for the disturbing movement caused by colliding saccades (in a later module). The rest of the saccade_TEMPORAL_REMAPPING module is used to define three components for each o f the directional layers. In the case o f a rightward m ovem ent, these are RTNDELAY2, RTNDELAY3, and RTNCHANGE. The latter signal is derived from the former two. In conjunction with the FEFGATE signal, it helps to compensate for the disrupting effects of a colliding saccade. The module saccade_MN simply adds the contributions of the excitatory burst neurons and the tonic neurons in driving the motor neurons. They represent the pulse and the step characteristic, respectively, o f the stereotyped firing profile o f the oculomotor neurons. The tonic neurons are a constant integrator for the eyes and provide an accurate eye position at all times. They are responsible for the step signal in the pulse/step signal which drives the motor neurons o f the oculomotor plant. They integrate the changes in the excitatory burst neurons and thus maintain an accurate account of constant eye location. In the module saccade_EYE_POSrnON_AND_VELOCITY, the tonic neurons are used to determine HTHETA and VTHETA which give the relative location o f the eye with respect to the previous iteration, i.e., the new location o f the retina. These coordinates are then used to center the retina with the NSLeyemove subroutine, as discussed above. VV and HV use the output o f the EBNs to measure how much the eyes 21 have moved with tespect to the previous iteration. These are then used to update the internal map in the PPqv using the NSLshift subroutine. The module saccade_tonic_changes is used to determine the TNDELAY signals, which represent the processing time for the tonic neurons. Using this information, the module saccade_TONIC_CHANGES calculates how much the eye position has changed since the last time the tonic neurons were presented with information. These values are then used to derive HV and VV, as described above. The m odule saccade_B U R STER S is used to calculate the m ask SACCADEMASK, which was discussed in conjunction with the saccade_retina module. If the sum of the four EBN signals is above a certain threshold (240 units), i.e., the eyes are moving faster than a certain velocity, then S ACCADEMASK is set to 0. Otherwise, it is valued at 1. If the eyes are moving too fast, this mask gates off visual information into the system. This whole process is repeated for each time step. 22 Chapter Three Changes to the Model The changes made to the original model were localized in the Superior Colliculus and the brainstem saccade generator. The modifications entailed the addition o f the buildup neurons (BUN) layer in the SC, the addition of rostral pole inhibition in the BUN layer for the SC, and the placement o f the SC BUN layer within the feedback loop of the saccade generator. Figure 1 shows the original layout of the brainstem saccade generator, while the new structure proposed by the modifications can be seen in Figure 2. Visual Feedback trigger Local Feedback (eye displacement) IM. (Rl) OPN velocity Step Target OMN PL Nl. (TN) PulM Generator. (EBN) Eye Position LLBN. MLBN FEF. SC Retina Pulse F ig u re 1. The original circuitry of the Dominey-Arbib (1992) model brainstem saccade generator. Input received from the frontal eye fields (fFEF) and the superior colliculus (SC) drives the excitatory bunt neurons (EBN). These project onto the oculomotor neurons (OMN) both directly and through the tonic neurons (TN). The omnipause neurons (OPN) inhibit the EBN while the resettable integrator (RI) integrates the movement of the current saccade. The addition of the BUN layer required that the progress o f a "moving hill" of activity be traced in a matrix, i.e., the activation would move from elem ent to element 23 within a matrix. Currently, NSL is not capable o f individually manipulating elements within a matrix. Arguments for the differential equations defining the membrane potential o f cells have to be entire layers, not elements within layers. This led to the addition o f code that was different in style than the rest of the code. The original model was based on the principle o f spatial maps being projected through various brain regions. There was no movement of activity within these maps and thus standard NSL differential equations could be used to represent the layers. The only sections of code that required the movement of activity within a matrix were the NSLeyemove and the NSLshift subroutines, used to center the retina matrix and update the PPqv remapping respectively. In these subroutines, conventional program code was used to accomplish this goal. The addition of our modifications was even more complicated since not only did we have to account for activity moving within a matrix, we also had to equip the BUN layer with the ability to initiate and terminate saccades while dealing with this handicap. Another problem with the programming of this code is that NSL is not capable of allowing a NSL data layer to be used as a parameter for a predefined NSL function. Thus, some data layers had to be first converted into floating C++ variables and then used in the NSL functions. This led to the necessity o f copying a lot of NSL variables into C++ variables and so creating an undesirable increase in the number o f variables. Before describing the changes made to the model, let us recap the role o f the SC and the brainstem saccade generator in the original model. In the Dominey model (Dominey and Arbib, 1992) the target is perceived through the retina. The retina projects onto the SC through a direct pathway and through higher brain centers. The SC projects onto the LLBN, which in turn project onto the excitatory burst neurons, through the medium lead burst neurons (MLBN). The excitatory burst neurons are gated by pause neurons. These pause neurons are inhibited by a trigger signal from the SC and FEF to 24 initiate a saccade. The pause cells are kept inhibited by the difference in magnitude between two signals. The first of these signals is a constant displacement signal which is generated by the FEF and SC through the MLBN, called the delta signal. This signal is compared with the resetable integrator, which monitors how much the eyes have moved in the current saccade by integrating the output of the excitatory burst neurons. Once these two signals are equal, the pause neurons resume firing and the excitatory burst neurons are gated off. The output of the excitatory burst neurons is integrated through the tonic neurons, which constantly code for current eye position. This signal (step) along with the direct output of the burst neurons (pulse) drives the oculomotor neurons which move the eyes with the stereotypical pulse/step activity profile. Eye position yields visual feedback which is compared with the location of the target on the retina. In the Dominey model, the "moving hill" characteristic in the SC is explained by the projection of quasivisual cells in the parietal cortex to the SC. However, the validity of this connection has still not been experimentally verified. Thus, the addition of a buildup neuron layer in the model is more in agreement with experimental data, since they have been shown to display this kind of activity during saccades. However, the SCqv layer and it's connections have been left unchanged because, as stated earlier, the aim of this model is to verify or disprove the validity of different regions or mechanisms of the brain and the PP to SCqv connections have not been experimentally ruled out. 25 Visual Feedback trigger amplitude Local Feedback (eye displacement) SC BUN OPN velocity Step Retina LLBN, MLBN FEF, SC OMN PL Ml. (TN) IM, (R J) P u lic Generator, (EBN) Pulse Figure 2. The addition of the buildup neuron layer (BUN) it shown in the modification of the original model. We added the rostral fixation zone in the SC which terminates the saccade once the mountain of activity has entered it and which inhibits the rest o f the SC while a target is being fixated. The fixation signal (FIX) is critical in the initiation of a saccade since a saccade can not be initiated if there is activity in the BUN fixation zone. The right and left BUN layers in the SC are called scbunr and scbunl respectively. The FIX signal is defined as: FIX=NSLstep (FIX temp, 0.5,0, 1). FIX temp is a binary signal which is 0 if the right and left scbun layers are fixated and is 1 otherwise. In this manner, FIX is 0 if the system is foveated on a target and it is 1 if the system is ready to make or is already engaged in a saccade. TRIGNB is a binary signal which is 1 if any of the directional TRIGN signals are active and is 0 otherwise. It is defined as: TRIGNB=NSLstep (TRIGNS, 0.5,0, 1). TRIGNS is the sum of the binary directional TRIGN signals. These signals (RTRIGNB, LTRIGNB, UTRIGNB, and DTRIGNB) are 1 if the corresponding TRIGN signal is 26 active and 0 otherwise. Thus, if at least one of the TRIGN signals is active, i.e., a saccade is to be made in a particular direction, the TRIGNB signal becomes active. Once these two signals have been determined (FIX and TRIGNB), the value of the SCWTAPROC layer is determined. It is defined as: SCWTA = NSLstep (sc_wta, 70, 0, 1). SCWTAPROC = SCWTA* (TRIGNB)* (FIX). SCWTA assigns a uniform value to the target location, independent of the growing signal strength o f the sc_wta representation. The TRIGNB and FIX gating to determine SCWTAPROC ensures that a new target representation is made only when the system is ready. From this point on, the code is directionally biased so that there are four calculations to be carried out for each set of layers. We will consider the rightward case. The control of the pause cells in the new model is controlled by the BUN layer of the SC. To accomplish this, the RPAUSE layer is defined as: RPAUSE1 = NSLstep (RPAUSEproc, 250, 0, 300). RPAUSE = NSLstep(FIXR, 0.5, 300, rpauself)- RPAUSEproc is less than 250 if a target is present in the right half o f the field of vision. The variable rpauself is the C++ representation of the NSL variable RPAUSE 1. If the FIXR signal is 0, that means that the target is fixated and the RPAUSE cell is set to it's resting value of 300. If the signal is 1, indicating that a saccade is in progress or is ready to be initiated, then the previous value o f RPAUSE is continued, i.e., the system continues to do what it was doing. The system determines the spatial location of the target with the help o f the SCWTAPROC layer described above. This target location is stored in RCOORD2proc, which is defined as: 27 SCWTAPROCR = SCWTAPROC A RWEIGHTS RCOORD = SCWT APROCR. max 0/1.425 RCOORD2 = (5 + RCOORD)*RTRIGNB RCOORD2proc = NSLstep (RCOORD2,0.1, rcoord2procf, rcoord2f). SCWTAPROC is divided by 1.425 because that is the amount by which the RWE1GHTS matrix is incremented. This yields a spatial location of the target in right relative coordinates. To get a spatial representation of the target in absolute coordinates, a value of 5 is added to RCOORD (since the right half of the matrix is elements 5, 6, 7, 8, and 9). Again, the determination of the spatial location of the target is gated by the RTRIGNB signal. This ensures that a target is selected only when the saccade is about to be initiated. Finally, the NSLstep function used to determine RCOORD2proc ensures that this value is an accurate target representation and not a value of 0. This would mean that a saccade has already been initiated, since RTIRGNB would be 0 in this case, and so a new target representation is not made. This is necessary because we are modeling an analog system onto a digital one. This issue will be discussed later. The progress of the RRI is monitored by the COR layer, defined as: COR = NSLsaturation (RRI, 0, dr+0.1,0, 1). This gives a relative progress o f the RRI with respect to DELTAR, the desired displacement. Again, DELTAR is represented by the C++ variable dr since NSL will not allow DELTAR to be used as a parameter directly. The final spatial coordinate for the right direction is determined by MULTR, which is defined as: RIGHTprog = NSLsaturation (COR, 0, 1, dark-1,4) RIGHTprog_s = NSLsigma (RIGHTprog, 4 ,8 ,0 , 8) rightf = (int) RIGHTprog_s .elem() 28 MULTR = rightf + . 1. The value dark-1 represents the initial location of the activity in the scbun layer. Thus activity is mapped from this initial location to the fixation zone as the RRI value approaches the desired DELTA value. The RIGHTprog_s layer gives a nonlinear mapping to the right directional movement representations. MULTR is determined as the location which is the location of current rightward BUN activity. This value is later combined with the other directional coordinates to yield a specific current eye location. Again, the RPAUSE layer is activated if the activity moving across the BUN layer has reached the fixation zone. RPAUSE = NSLstep (RIGHTprog, 4.1. 300,0). The fixation zone for the rightward component is the fourth element of the matrix. The parameter used in the function is 4.1 in order to prevent overshooting the target. The final representation of the location to which the activity has progressed so far is made in the MULTMATRIXFR layer: M ULTM ATRIXFR = NSLstep (MULTMATRIXTR, 0.01,0. 1). MULTMATRIXTR is a combination o f the right and vertical components of the movement. The final product, M ULTMATRIXFR is transform ed into a unit representation so that the traversal o f activity moving across the BUN layer can be detected. We have added a right and a left BUN layer in the SC, appropriately called SCBUNR and SCBUNL. These two layers are the foundations for the changes to the model. Finally, the above information is fed into the scbun layers in the following manner; Tacbunr = 6 ms Sscbunr = MULTMATRIXFR 29 SCBUNR = scbunr. In summary, we have shown how a rostral fixation zone has been added in the BUN layer of the SC which inhibits activity when the system is foveating a target. When a saccade is initiated, the location o f activity in the BUN layer represents the current eye location and the fixation zone represents the new target location. Once the movement of activity reaches the fixation zone, the saccade is terminated. We have also shown how we have incorporated the SC within the feedback loop of the brainstem saccade generator by making it responsible for the monitoring o f the RI and DELTA signals and also controlling the activity of the PAUSE cells. They are activated when the activity in the BUN layer in the SC reaches the rostral fixation zone. We have used a lot of intermediate variables in the processing of this information in the BUN layer. However, we contend that this is not only necessary but justified in view of the fact that our modeling platform is not adequately equipped to handle this particular type o f activity (movement within a matrix layer) and that the axons and dendrites o f the neurons in the brain have thousands o f inputs and connections feeding into them, making them very "context rich." Another consideration is that we are modeling an analog system on a digital device and thus we are going to face difficulties modeling some very trivial concepts. To model the movement o f activity across the BUN layer, we had to use a lot of intermediate variables. 30 Chapter Four Simulation Results The simulation results obtained from the new model were very pleasing. The benchmark for the performance of the new model was the performance of the original model. In this chapter, we will analyze the response of the model to three different types of experimental paradigms: simple, double, and memory saccades. In the case of the simple paradigm, two different simulations were performed and their results were compared with the performance o f the original model. The following two paradigms will be used to explain the functioning o f the new model. The cornerstone o f the modifications made to the model are the left and right BUN layers. Figure 3 shows the performance of the scbun) and scbunr layers during the execution of a simple saccade. The fixation point in this and all subsequent trials was INP (13,13). In this trial, the target was presented at INP (16,16), meaning thirty degrees to the right and thirty degrees below the fixation point. Figure 3A shows the system when it fust detects the target. The fixation point in scbunl is scbunl (8,4) while the other fixation point is scbunr (0,8). As can be seen from the figure, the downward component is accounted for in both the right and the left halves. Notice that both scbun layers are nonlinearly mapped on the horizontal plane. This is evident by noting that the thirty degree rightward component o f the target location translates into a sixty degree mapping on scbunr. The location of activity on the scbun layers represents current eye position while the fixation point represents the new target location. In figure 3B, the eyes have started moving towards the target. Again, it should be noted that the vertical component o f the motion is mapped in the scbunl layer as well as 31 scbunl LAYER:scbunl w ym in :0.00 w ym ax:1.0( F i0:0 il:8 j0:0 J1:8 imax:9 jmax:9 scbunr LAYER:scbunr wy m in:0.00 w y max:1 .O C ■ - 10:0 i 1:8 j0;0 j 1:8 imax:9 jmax:9 Figure 3A. The top panel represents the scbunl (fixation point (4,8)) and the bottom panel scbunr (fixation point (0,8)) in response to a target presented at (16,16). Fixation at (13,13). 32 scbunl LAYER:scbunl w ym in:0.00 wymax:1.0( 1 - i0:0 i1:8 j0:0 j 1:8 imax:9 jmax:9 scbunr LAYER:scbunr w ym in:0.06 wym ax:1.0( i0:0 11:8 j0:0 J1:8 imax:9 jmax:9 Figure 3B. The response of the scbunl and the scbunr as the movement of activity starts proceeding towards the fixation zooe._ 33 scbunl LAYER:scbunl w ym in:0.00 w ym ax:1.0( i0:0 i1:8 j0:0 j 1 :Q imax:9 jmax:9 scbunr LAYER:scbunr w ym in :0.00 wymax:1.0C ■ ■ - i0:0 i1;8 j0:0 J1:8 imax:9 jmax:9 Figure 3C. As the movement of activity arhves at the fixation zone in the scbunr. the saccade is about to be terminated. 34 scbunl LAYER:scbunl w ym in:0.00 w ym ax:1.0( i0:0 i 1 :Q j0:0 j 1:8 imax:9 jmax;9 scbunr LAYER:scbunr w ym in :0.00 wymax:1.0C i0:0 M:8 j0:0 j1:8 imax:9 jmax:9 Figure 3D. The system is foveated on the new fixation point and both of the rostral fixation zones in the scbunr and the scbunl are active. 35 the scbunr layer. Figure 3C shows the eyes arriving on target as the movement o f activity across the BUN layer disappears into the fixation zone. Figure 3D shows the eyes foveated on the target with the activity in the BUN layers within the fixation zone. Figure 4A shows the activities o f the rightward component o f the brainstem saccade generator over time, while figure 4B shows the corresponding activities for the downward component. Again, the system was presented with the same target as above. INP (16, 16), with the same fixation point, INP (13,13). The target is detected by the LLBN which project the location to the MLBN. The detection of the target can be seen in MLBN (7,7). The detection of the target causes activity in the scbunr layer which inhibits the PAUSE layers. The excitatory burst neurons (EBN) are then driven by the MLBN and the RI starts integrating the output o f the EBN until it reaches the DELTA signal. The EBN drive the M N which move the oculomotor plant to the desired eye location. Once detection of the equal DELTA and RI signals takes place within the BUN layers in the SC, the PAUSE cells are disinhibited, the target is foveated, and the system is ready to make another saccade. Figure 5 shows the performance of the original model for a simple saccade with the target presented at INP (13,17). Figure 6 shows the performance o f the new model for the same target. As can be seen, the results are very similar. Again, the target detection can be seen in LLBN (8,4) and MLBN(8,4). There is a slight difference in the performance o f the REBN layer which is attributed to the slightly delayed inhibiting of the RPAUSE layer due to the new model architecture. This slight change in timing is to be expected since the control of inhibition for this layer has been altered. However, the overall system performance is still identical. Figure 7A shows the response o f the system to a double saccade paradigm. The fixation point is at INP (13,13). The first target is presented at INP (16,13) while the 36 scbunr LAYER:scbunr wymin:0.00 wymax:l .0(5 ts:0.50 i0:0 i1:B J0:0 J1:B im ax:9 Jm ax;9_____________________ Longlead LAVER:LLBN w ym in:Q ,00 w ym ax:500.00 ts;0.50 i0:0 il:B j0:0 j1:8 im ax:3 jm ax:9 t0 :0 .0 0 t1:0.50 M edium Lead LAYER:RMl6N w ym in:0,00 w ym ax:500.00 ts;0.50 >0:0 11:8 j0:0 J1:6 im ax:9 jm ax:9 t0 :0 .0 0__________ B ursters LAYER:RE8N w y m in :-1 0 0 .0 0 -wymax: 1 0 0 0 .0 0 is:0.50 t0 :0 .0 0 t1:0,50 Pause I a y e Rir Pa u sE w y m in :-i <16.00 w y m ax :5 0 0 .0 0 ts:6 .^0 I \ I ~ t0:0.00 t1 :0 .5 0 D elta LAYER:DELTAR w y m ln :-1 0 0 ,0 0 w ym ax:500.00 ts:0.50 t0:0.00 t1:0.50 R e se tta b le in t LAVER:RRI w y m in :-5 0 .0 0 w y m ax :5 0 0 ,0 0 ts:0,36 t0 :0 ,0 0 t1 :0 .5 0 M otorN euron LAYER:RMN w y m in :-2 0 0 .0 0 w y m ax :2 0 0 0 .0 d ts:0 .5 0 t0 :0 .0 0 tl :0.50 Figure 4A. The components of the brainstem saccade generator responsible for the rightward movement in response to a target presented at (16.16). Fixation at (13.13). 37 scbunr lAYER:scbunr wymin:6.C«5 wymax:1.00 ts:0.50 <0:0 i1:6 j0:0 J1:8 lmax:9 jm ax:9 L onglead LAYER.LLBN w ym ln:0.00 w ym ax:5Q 0.00 ts:0.56 i0:0 i 1:8 J0:0 j1:8 lm ax:9 Jm ax:9 t0 :0 .0 0 t1:0.50 M edium L ead LAVER:DMLBN wymlniO.OO w ym ax:500.0b ts:0,50 <0:0 1 1 :B j0:0 j1:9 im ax:9 )m ax:9 tO:O.QO b u rsters LAY^R:DEBN w y m in :-1 0 0 .d fl w ym ax:10 0 0 .0 0 ts:0.50 I t0:0,00 t1:0.50 P ause ' L aYER:DPAUSE w y m in :-1 0 0 ,0 0 ■ w y m ax :5 0 0 .d o ts:0.50 z z z 3 ________________________________ t0 :0 .0 0 t1:0.50 D elta LA y e R:De L ta d w y m in :-ld 6 .0 0 w y m ax :5 0 0 .0 0 ts:0,50 - - / z z \ ... ___ t0 ;0 .0 0 t1 :0 .5 0 R e se tta b ie in t LAYER:DRl w y m !n :-5 0 .0 0 w y m ax :5 0 0 .0 0 ts:0,50 t0 :0 .0 0 t1:0.50 M otorN euron LAVER:DM N wymini-^OO.OO w y m ax :2 0 0 0 .0 0 ts:0.50 tOiO.OO t1 :0 ,5 0 Figure 4B. The components of the brainstem saccade generator responsible for the downward movement in response to a target presented at (16.16). Fixation at (13.13). 38 Longlead LAVER: LLBN wymin:0.00 wym ax:500,00 ts:0.50 i0:0 (1:8 J0:0 j1:B im ax:9 jm ax:9 t0 :0 .0 0 tt:0 .5 0 M edlum L ead LAYER:RM LBN wymimO.OO w y m ax :5 0 0 .0 0 ts:0.50 i0:0 11:0 j0:0 j1:0 lm ax:9 jm ax:9 t0 :0 .0 0 B ursters LAVER:RE8N w y m irv.-l 0 0 .0 0 w y max: 1 0 0 0 .0 0 ts:0 .5 0 t0 :0 .0 0 t1 :0 .5 0 P au se LAYER: RPAUSE w y m in :-1 0 0 .0 0 w y m ax :5 0 0 .0 0 ts:0.50 _ J /• t0 :0 .0 0 t1 :0 .5 0 D elta LAVEft:DELTAfl w y m in :-1 0 0 ,0 0 w y m ax :5 0 0 ,0 0 ts:0 .5 0 m ___________________________________________ t0 :0 .0 0 t1 :0 .5 0 R e se tta b le in t LAYER:RRI w y m in :-5 0 .0 0 w y m ax :5 0 0 .0 0 ts:0 .5 0 I t0 :0 .0 0 t1 :0 .5 0 M otorN euron LAYER:RMN w y m in :-2 0 0 .0 0 w y m a x :2 0 0 0 .0 0 ts:0 .5 0 t0 :0 .0 0 t1 :0 .5 0 Figure S. The response of the original model to a target presented at (13.171. Fixation at (13.13). Notice the lack of a scbunr or scbunl layer. The saccade generator follows the circuitry of Fig. 1 . 39 scbunr LAYER:scbunr wymln:0.00 wymax:1.00 ts:0,5<5 10:0 ll:Q j0;0 J1.8 lm ax:9 Jm ax:9 LongLead L a VE R : LLBN w ym in:0.00 w ym ax:5(J6,00 ts:0.50 i0;0 1 1 ;8 J0:0 j1:B lm ax:9 jm ax:9 t0 :0 .0 0 t1:0.50 M edium Lead LAVER-.r MUbN wymin.Q.OO w ym ax :5 6 6 ,0 0 ts:0.50 *0:0 1 1 :B J0:0 J1:8 lm ax:9 Jm ax:9 t0:0.00__________ B ursters LAYER: REBN w y m !n :-1 0 0 .0 0 wy max: 1 0 0 0 .4 0 ts:6.50 t0 :0 .0 0 Pause LAVER:RPAUSE wy m in :-1 0 0 ,0 0 w ym ax:500.00 F T T 57 ~ I \ / ' ~ t0 :0 ,0 0 t1 :0 .5 0 D elta LAYER;DELt AR w y m in :-1 6 6 ,0 0 w ym ax:500.00 ts:0.50 _________ C Z 3 ______________________ t0 :0 .0 0 t1:0.50 B e se tta b le ln t LAYER:RRI w y m ln :-5 0 .0 0 w y m ax :5 0 0 ,0 0 ls:0,50 t0 :0 .0 0 t1 :0 .5 0 M otorkeuron LAYER'.RMN w y m in :-2 0 0 ,0 6 w y m ax .2 0 0 0 .0 0 ts.0 .5 0 t0 :0 .0 0 t1 :0 .5 0 ! Figure 6. The response of our new model to a target presented at (13. 17) to be compared with Fig. 5. the response of the original model. The new circuitry of the saccade generator is illustrated in Fig. 2. 40 second target is presented at INP (16,16). The first target is thirty degrees to the right of the fixation point. This detection can be seen in LLBN (7,4). The LLBN then drive the MLBN which in turn initiate the sequence of events described above to initiate and complete the saccade. At this stage, the second target is exactly below the current eye location, as opposed to being below and to the right of eye position at the time of initial presentation. This is due to the intervening first target foveation. Notice that the RMLBN (Figure 7A) do not receive a representation of the second target as there is no rightward component in this movement. Figure 7B shows the activities o f the downward component of the brainstem saccade generator. It can be seen here that the DMLBN receive a representation of the second target but did not receive a representation of the first target since there was no downward component in the required movement. The downward saccade is then carried out and the target is foveated. Figure 8 shows the execution of a memory saccade. The fixation point is presented to the system for 22.5 ms while the target is presented between 2.5 ms and 7.5 ms at a location of INP (17,13). The system remembers the location of the target and then initiates and completes the rightward saccade necessary to foveate the target. The execution o f this saccade is identical to that o f the simple saccade, except for the fact that the system has to remember the target location instead o f initiating a saccade as soon as the target is presented. It is evident from these simulations that the new model can perform equally as well as the original model in these various paradigm s. Thus, as a m odel, the modifications are plausible because the performance of the system is not hampered in any way; in fact the system is improved by accounting for new experimental data. 41 scbunr LAYER:scbunr wymin:0.00 wy max: 1.00 ts:0.5o i0:0 11:8 J0:0 J1:8 im ax:9 jm ax:3 Long Lead LAVER: LLBN wymirnO.dnJ w y m ax :5 0 0 .o 6 ts:6.50 i0:0 11:8 j0:0 j1:B im ax:9 jm ax :9 t0 :0 .0 0 tV .0.50 M edium L ead I.AYER:RMLBN w y m in :0 .0 0 wy m ax :5 0 0 .0 0 ts:0 .5 0 i0:0 i1:B J0:0 j1 :8 im ax:9 jm ax :9 t0 :0 .0 0 B ursters LAVER:Nebn wy m in :-l6 < J.o 6 wy m ax :1 0 0 0 .0 0 ts:0.50 t0 :0 .0 0 tl :0.50 Pause L A YER:R PAUSE w y m in :-1 0 0 .0 0 w y m ax :5 0 0 .0 0 ts:0 .5 0 t0 :0 .0 0 tl:0 .5 0 Ceifa— n r r n r n r r m ? — wymin:-iM.M w ym ax:500.0Q ts:0.50 i Z Z H t0 :0 ,0 0 t1 :0 .5 0 R e s e tta b le ln t LAVER:RRI w y m in :-5 0 .6 o w y m ax :5 0 0 .0 0 ts:0 .5 0 t0 :0 .0 0 t1 :0 .5 0 M otorN euron LAYER;RMN w y m )n :-2 0 0 .0 0 wy m a x :2 0 0 0 .0 6 ts:0 ,5 0 t0 :0 .0 0 t1 :0 .5 0 Figure 7A. The first saccade io a double saccade task (target at (13.16). fixation at (13.13)). This saccade is purely horizontal. 42 scbunr LAYER:scbunr wymin;0.00 wymax:T.i5(5 ts:’0T S<5’ 10:0 11:0 j0:0 j1:0 im ax;9 Jm ax:9 L onglead LAV e R:LLBN w ym in:0.00 wymax^OO.OO ts:6.3o i0:0 11:0 J0:0 j 1 :S im ax:9 jm ax:9 t0 :0 .0 0 t1:0.50 M edium Lead LAYER:DMLBN w ym in:0.00 w y m ax :5 0 0 .0 0 ts:0.50 10:0 i1:0 J0:0 j1:8 lm ax:9 jm ax:9 t0:0.00 B ursters LAYER:DEBN w y m in :-1 0 0 .0 0 w y m ax :1 0 0 0 .0 0 ts:0.50 I t0 :0 ,0 0 t1 :0 .5 0 P ause lAVe R:DPAUSE w y m in :-1 0 0 .0 0 w ym ax :5 0 0 .0 0 ts:0.50 i ______________\___ r t0 :0 .0 0 t1:0.50 D elta LAYER:DELTAD w y m in :-1 0 0 .0 0 w y m ax :5 0 0 ,0 0 ts:0.50 o t0 :0 .0 0 t1 :0 .5 0 R e se tta b le in t LAYER:DRI w y m ln :-5 0 .0 0 w y m ax :5 0 0 ,0 0 ts;0,50 t0 :0 .0 0 t1 :0 .5 0 M otorN euron LAVE R:0 N wy m in :-2 0 0 .0 0 w y m ax :2 0 0 0 ,0 0 ts:0,50 t0 :0 ,0 0 t1:0.S 0 Flam e 7B. The second saccade in a double saccade task (target at (16.16). location of retina after completion of fitst saccade (13.16)). This saccade is purely vertical due to the ensuing movement of the first saccade. 43 scbunr LAYER:scbunr wymin:0.00 wymax:1.0d> ts:0.50 10:0 i1;8 j0 :0 J1:0 im ax:9 Jm ax:9 LongLead LAVER: LLBN w y m ln :0 .0 0 w ym ax :S 0 0 .0 0 ts.0 .5 0 i0;0 il:0 J0:0 jl:0 im ax:9 jm ax :9 t0 :0 .0 0 t1 ;0 ,5 0 M edium L ead LAYER:DMLBN w y m in :0 .0 0 w y m ax :5 0 0 .0 0 ts:0,50 i0:0 i1:8 jO.O J1:0 im ax:9 jm ax :9 t0 :0 ,0 0 B ursters LAYER:flEBN w y m in :-1 0 6 .0 0 w y m ax :1 0 0 0 .0 0 ts:0.50 I ^ t0 :0 .0 0 t1 :0 .5 0 P au se LAYER-.DPAUSE w y m in :-l 0 0 .0 0 wymax:500.oC> ts:0 ,5 0 ~ \ / t0 :0 .0 0 t1 :0 .5 0 D elta Ia Ve R:DELTAD w y m frt:-1 0 0 .0 0 w ym ax:^6o,0(J ts :0 5 0 _______________________________________________ E Z J _______________ t0 :0 .0 0 tl:0 .5 0 R e s e tta b le in t LAYER:DRI w y m in :-5 0 .0 0 w y m a x :5 0 0 ,0 0 ts:0 .5 0 t0 :0 .0 0 t1 :0 ,5 0 M otorN euron LAYER:DMM wy m ln :-2 0 0 .0 0 w y m a x :2 0 0 0 .0 0 ts:0 ,5 0 tO-.O.OO t1 :0 .5 0 Figure 8. The response of the new model to a memory saccade. The fixation point (13.13) is active for 22.5 ms. The target (17.13) is shown for 5 ms between 2.5 ms and 7.5 ms. When the fixation point is turned off. the system makes a saccade to the target. 44 Chapter Five Conclusion and Remarks This model has set a strong foundation for future modelers. Although it lacks in a myriad dimensions when compared to the original functioning of the saccadic system, it nonetheless sets out s skeleton upon which to build in the future. There are several aspects of the model that can be investigated right away in a very specific manner and then there are some broader and vaguer issues to be concerned with. Some of these are discussed below. Before discussing the future of the model, I would like to make a few comments about NSL. NSL is a neural simulator which has promise but is still lacking in a variety of applications. Currently, working with this platform forces the modeler to make some very simplifying assumptions. For example, all the matrix layers must be square in order for them to interact with each other. Another deficit of NSL is it's inability to manipulate data in a matrix. The redundant code of this model could not be simplified further due to the inability of the platform to evaluate the elements of a matrix in a differential equation. As a result, instead of having a generic code with arrays as the objects and each array element representing a different direction, we are forced to repeat the code an additional three times. Several new approaches can be taken to further improve the model. First of all, an investigation can be made into the approachability of modeling lateral inhibition and excitation connections within a layer in the NSL language. The main problem associated with this is that, as mentioned above, NSL does not allow elements of an array or matrix to be used as arguments for differential equations. The current solution to this dilemma would be the use o f conventional programming code, which is undesirable, or to treat 45 each element o f the matrix as a data value and manipulate each data value separately. This approach would be highly inefficient and a waste of time. Another aspect of the model that needs to be reexamined is the ability of the system to make saccades after lesion of the SC, through the FEF. Judging from recent experimental data, the SC contains some specialized functions without which a saccade would not be possible. An example is the rostral fixation zone and the terminating of the saccade once the wave of activity reaches this region. If the rostral fixation zone is what causes the termination of the saccade and if the FEF is able to command saccades on its own, then it would seem logical to assume that this same rostral fixation zone concept exists and can be applied to the FEF. One would either agree or disagree with this point o f view. By disagreeing, one is then questioning the validity of the data concerning solely FEF generated saccades. By agreeing, we are believing the existence o f a rostra] fixation zone in the FEF. If this is the case, then Dominey's (1993) line of reasoning can be applied here by saying that it is very unlikely that two different brain regions would be independently mapping the same activity. There is a very strong possibility then that the BUN layers get projected onto by a higher center and so their activity is not intrinsic to theSC. At the stage the model is in, one needs to go through and question several of the assumptions made in the model. One of these is the implementation of the W inner Take All paradigm (Didday and Arbib, 1975) in the SC. As with other functions, we must start questioning whether or not the WTA is simply being projected to the SC from higher brain regions. Another aspect o f the model which needs to be addressed is the projection of the spatial map through multiple brain regions. W e are at the stage in this model's development that we can no longer be satisfied with modules acting as relay stations. One suggestion is that the projected spatial map starts at a coarse level and progressively 46 gets refined through the multiple projections. It does not make sense for a spatial map to be projected through so many brain regions essentially untouched. The fact that the saccadic system employs some form of feedback has been accepted. What has not been accepted, however, is how this feedback is implemented. It is a possibility that the feedback signals operate through higher brain centers while the mechanism in the brainstem saccade generator is purely feedforward. However, we do not believe this to be the case. An interesting experimental finding to keep in mind is the identification of motor neurons in the SC whose firing rate depends on current eye position (Van Opstal, 1994). Intuitively, this finding is plausible. The eyes are driven by the firing of burst neurons which direct their movement. There are strong elastic qualities towards the outer regions of the ocular orbit due to the fibers of the body (muscles, tendons, etc.) If the eyes are at an extreme location, then moving away from that location would be helped by the recoil of the elastic properties of the muscle. Conversely, if the eyes needed to be put into an extreme orbital position, stronger signals than those required for the same magnitude movement in a center location would be required to overcome the strong resistive forces. Thus, it would make sense to have motor neurons firing at different rates depending on current eye position. This finding can be incorporated into the model. Once a suitable method has been found to model the lateral excitatory and inhibitory interconnections, we can start concentrating on generating learning algorithms that would be capable of generating these interconnections. The model developed by Arai et al. (1994) accomplishes this. Other models that place the SC inside the feedback loop of the saccade generator are the ones developed by Van Opstal and Kappen (1993) and by Lefevre and Galiana (1992). The latter model address data primarily from the cat. Droulez and Berthoz (1991) have also developed a similar model. All of these models, 47 along with our own, have the saccade terminating when the wave of activity across the SC reaches the rostral fixation zone. Arai et al. have employed a neural network technique in order that the discharge properties, temporal and spatial, of their collicular neurons more closely resemble the discharge properties of actual collicular neurons. While the Lefevre and Galiana models is also a predictive model, able to predict the form of the connections within the SC carrying out the spatio-temporal processing, it is a one dimensional model, accommodating horizontal movements only. Our model is similar in functioning to these models. Ottes et al. (1986) devised a collicular motor representation of the monkey cortex. Their model had several important features: 1) the model represented both afferent and efferent mapping; 2) it devoted mote space in the motor map for smaller movements; 3) the population activity in the model resembled a Gaussian function, centered around the point defined by the afferent mapping; 4) each saccade required the firing of a significant proportion of SAC cells; and 5) the number of active cells in any saccade was constant, independent of the size of the saccade. It can be seen that our model, by representing the squares o f a matrix as a population of cells, encompasses all of these characteristics, except the Gaussian activity profile. All the models discussed so far, including our own model, assume that the mapping in the colliculus is two dimensional. This implies that a separate mechanism is active for the torsional component of eye movement control. This mechanism could be active downstream of the two dimensional mechanism, or it could be active in parallel to this mechanism. If the mechanism were acting in parallel, then it could start from the visual cortex. However, it has been found that through the primary visual cortex, a target has not been selected. So, it must be that if Listing's law is to be implemented using 48 some kind o f neural mechanism, these must be located downstream of the SC (since the colliculus only maps in two dimensions). So, another possible addition to the model is the implementation of this torsional control region/mechanism in eye movement. It has been postulated that the eye focusing mechanism occurs downstream from the saccade generator because the motor error map in the SC exhibits no torsional qualities. So, an object is detected in space and the eyes are brought on target to the stimulus. However, focusing the eyes is not part of this system. An ambitious project could be to incorporate this mechanism into the model. It should be noted that, as of now, theoretically there is nothing that can be thought of on pencil and paper that can not be implemented on the computer. However, the one constraint is time and the issue that arises is whether or not the time implemented in these undertakings is well spent. W hat needs to be done is to have more time and energy devoted to developing sound conceptual models rather than to make computer modeling the main issue, rather than a convenient viewing tool. A problem associated with a model of this magnitude is the large number of parameter values. When fine-tuning the values, the web of influence makes it difficult to localize the effects caused by the changing values. This makes the process a little challenging. Part of the problem is the large array P which has 329 elements. This array contains all the different values associated with the model, from time constants, to integration constants, to arguments in NSL functions. It would seem that there is an easier way of accomplishing this task but apparently there is not. The internal structuring of the P array is done in such a manner that all the parameter values associated with a given layer, array, or data value are grouped together. The only other conceivable solution would be to make separate files for each layer but this would be just as tedious, 49 if not more so. The problem is that we are dealing with a platform (NSL) which is at a low conceptual level. As modelers, we are constantly trying to update our understanding of the brain by implementing the understandings as metaphors in a model and testing it (Arbib, 1989). We have to bear in mind the strong possibility that we are wrong with respect to certain pathways or connections, etc. However, if we can build upon existing models in such a manner that they are capable of exhibiting some of the same complex functions as the human brain, then part o f our goal has been achieved. While our pathways and connections may not be exactly true to the functionality or architecture of the brain, we have still succeeded in devising a complex system capable of mimicking the activities of the brain. For, we surely realize that our modeling efforts can never be truly reproductive of the original subject since the medium in which we express our understanding is so vastly different from the original (computer technology vs. living cells). We need to start closing the gaps between different modeling efforts. The models which exist for different systems are very specific to those systems and all brain regions used in them are programmed in that same specific manner. If the basal ganglia of this model were extracted and put into a model for reaching and grasping, the effort would be unsuccessful, and vice versa. Perhaps one direction in which we can go is to start modeling different regions of the brain as regions instead of having specific applications within a larger system. These are important steps which need to be taken because the composite of such efforts will likely yield a result which no one can individually attain. The problem with trying to construct and then implement whole brain regions is that we have no way of testing them. If we were successful in constructing a model of the cerebellum, how would we test the validity of this model. What would we use for input, how would we measure the output? On the computer, it is difficult to create a 50 program which performs varied functions. That is the reason that our existing models are so task specific. Perhaps an answer is to have a brain region process information and give out common signals, regardless o f the task. Then the movement plants for each specific task would decipher those signals and carry out the movement requested. We must start wondering where our modeling approach is taking us. If we are trying to eventually integrate several models to start forming supermodels, then we have to ask, "What makes a superior colliculus what it is?" Simply defining it in computer code is not good enough anymore. If two different modelers have come up with different systems, there should be a thread o f commonality between the two. Part of the problem is that our models are too specific to a given task. Unfortunately, this is a necessity when we are modeling on the computer. What this leads to is a brain region which is so specific to a given task , that it can not be compared to the same brain region o f a different model representing a different task. This is the frustrating stage of our development. We get so caught up in trying to im plem ent seemingly simple paper and pencil concepts onto the com puter that the computer implementation becomes and end of itself, instead o f a means to an end. We are still lacking comprehensive software which would allow us to implement higher level brain constructs. To achieve that level, we must toil through our current frustrating stage. Even if the computer implementation aspects o f our modeling was made easier with the development of a higher standard of software (some would argue that it is not an issue even today), the question still remains, "Are our basic models sound?" To state it differently, are even our pencil and paper models very generic, or are they very task specific also? We are all studying the same brain, therefore it would seem logical that we arrive at similar results. Even if we apply the three blind men and an elephant analogy, it is time that we start recognizing the trunk, tail, and leg for what they are: different parts 51 of the same elephant. Concrete steps are being taken in this direction and it is hoped that increased cooperation between different aspects of the neuroscience community will yield promising results. This includes a greater communication between the modeler and the experimenter. Perhaps the modeler, abled with the big picture perspective, could design different paradigms that would help to solve some existing questions. We must also think about putting these models on the internet. W ith the increasing technology and the undertaking o f such projects as the Human Brain Project, we have to start thinking o f ways to make the models available to the community and how these models must be made user friendly, at least at the implementation level. This would be a great step in the direction of trying to implement different brain regions as a separate entity and not a functional part of a system. The exchange of information at such a vast level would surely help in this process. An integral part of progress is the criticism generated by new works and ideas. While these may seem overly critical or pessimistic at times, in the end these are what force us to think and venture in new directions. The easiest criticism to make is simply to say that something is wrong and is not feasible. It is much harder to formulate concrete reasons why this is so and to suggest improvements/changes that may yield more satisfactory results. We have tried to keep this in mind in the concluding remarks and it is hoped that we have made some significant contributions to the model by way o f future suggestions and current implementations. We are all heading towards the same destination and we are all trying to make contributions towards this end, no matter how large or little. Appendix 52 */ * / */ # include "nsl_include.h" # include "pfd_params2.h" # include <math.h> /************** /* saccade2.c /♦+**♦*****♦*** /*•*****•**,****«**••**************************•****•***************•*•/ /* These 5 functions are contained in the file lib.c and are called in */ /* different points in the program. */ / extern nsl_matrix NSLwinnertakeall(nsl_matrix&); extern nsl_matrix NSLeyemove(nsl_matrix&, nsl_data&, nsl_data&); extern nsl_matrix NSLshift(nsl_data&,nsl_data&, nsl_data&); extern nsl_matrix NSLXshift(nsl_data&,nsl_data&,nsl_data&,nsl_data&,nsl_data&); extern nsl_matrix NSLX2shift{nsl_data&,nsI_data&,nsLdata&,nsl_data&,nsl_data&); NETWORK(SACCADE); /* This is the variable declaration section. You will find that the /* variables are declared in the same order as they appear in the pro* /* gram. / /*****♦♦+***♦*„**/ /•PARAMETERS*/ /*,•«•***********/ ROW_VEC(P,329); /***+*«**/ /•INPUT*/ /****««**/ INPUT_MAT(INP,27,27); INPUT_MAT (STIMULATION ,9,9); /+*****«/ /*LLBN*/ MATRIX(llbn,9,9); MATRDC(Iibnwta,9,9); MATRIX(LLBN,9,9); /*****•*♦/ /♦MLBN*/ 53 / * * * * * * * * / MATRIX(Lmlbn,9,9); M ATRIX(LMLBN,9,9); MATRIX(Rmlbn,9,9); MATRIX(RMLBN,9,9); MATRIX(Umlbn,9,9); MATRIX(UMLBN,9,9); MATREX(Dmlbn,9,9); MATRIX(DMLBN,9,9); /**«***/ /*EBN*/ i*/ DATA(lebn); DATA(LEBN); DATA(rebn); DATA(REBN), DATA(ucbn); DATA(UEBN); DATA(debn); DATA(DEBN); /♦TRIG*/ /♦ ♦ ♦ ♦ ♦ ♦ ♦ / MATRIX(ltng,9,9); MATRIX(itrig,9(9); MATRIX(utrig,9,9); MATRIX(dtrigt9,9); DATA(LTRIG); DATA(LTRIGN); DATA(RTRIG); DATA(RTRIGN); DATA(UTRIG); DATA(UTRIGN); DATA(DTRIG); DAT A(DTRIGN); /+*++/ /♦RIV /+***/ DATA(lri); DATA(rri); DATA(uri); DATA(dri); DATA(LRI); DATA(RRI); DATA(URI); DATA(DRI); /**♦♦*♦***/ O nO v^.OJ. .. ..... u m i m ^ 5 r | | S | d E i si d d « a d 5-n it BBBHQQaaaaaa-S-c ^ P p ^ ^2 ^ ^ W W ^ '•w'' w w ^ ■ -_ -' ^isiiiQQQQQQQQQQ /*FEFS WITCH,FEFGATE*/ I,? Ip W ’ w 'w ' < < < < i - H H H ^ Q Q Q Q (N . - . . . - • - (N . . - - <N q q q q q q q q q q q d /+*****/ /*MN*/ /*«****/ DATA(LMN); DATA(RMN); DATA(UMN); DATA(DMN); /♦EYE POS & VEL INFO*/ /**♦♦***+*♦****„*♦♦*****/ DATA(EyeH); DAT A(EycHlcft); DATA(EyeV); DAT A(Eye Vdown); DATA(HTHETA); DATA(VTHETA); DATA(HV); D A TA (W ); /♦♦♦*♦*♦♦♦*♦♦/ /♦TNDELAY*/ /♦♦**♦♦*♦♦***/ DATA(RTNDELAY); DAT A (LTNDEL A Y); DATA(UTNDELAY); DAT A(DTNDEL A Y); /***+*/ /♦TN*/ /****+/ DATA(RTN); DATA(LTN); DATA(UTN); DATA(DTN); /♦TNCHANGE*/ /♦*♦*+♦♦♦*♦*♦♦/ DATA(RTNCHANGE); D ATA(LTNCH ANGE); DATA(UTNCHANGE); DATA(DTNCHANGE); /*******,*»********/ /♦VISUAL GATINGS DATA(BURSTERS); DAT A(saccadebool); MATRIX(SACCADEMASK,9,9); /♦**♦♦♦♦♦♦♦/ /♦RETINA*/ /*******♦*♦/ MATRIX(rctina 1,9,9); 56 MATRIX(retina,9,9); MATRDC(RETINA,9,9); /**************/ /♦VISCORTEX*/ /**************/ MATRIX(PP,9,9); MATRIX(MT,9,9); MATREX(V4,9,9); MATRDC(V2,9,9); MATRIX(V 1,9,9); MATRIX(LGN,9,9); /♦MASKS*/ /*******♦♦/ MATRDC(M,9,9); MATRDC(M2,9,9); MATRIX(M3,9,9); /*+****#*/ /*PPQV*/ /*#*+*+++/ MATRIX(qvmask 1.9,9); MATRIX(qvmask2,9,9); MATRIX(QVMASK,9,9); DAT A(Q VFACTOR); DATA(QVctr); DATA(Obliquc); DATA(InhSurr); MATRDC(ppqv,9,9); M ATRDC(PPq va,9,9); MATRDC(PPqv,9,9); /****«*/ /♦FEF*/ /*+****/ MATRDC(fcf_vis,9,9); MATRDC(FEFvis,9,9); MATRJX(fef_mem,9,9); M ATRK(FEFmem,9,9); MATRIX(fef_sac,9,9); MATRIX(FEFsac,9,9); /*****«*/ /♦FON*/ /*****«*/ MATRDC(FovElem,9,9); MATRDC(fon,9,9); MATRDC(FOn,9,9); /************/ /♦CAUDATE*/ MATRIX(cd_mcm,9,9); MATRIX(CDmem,9,9); MATRDC(cd_sac,9,9); MATRIX(CDsac,9,9); r* 5 5 t/i 2 U w tu uj w 3 3 W < < < < < < < < < < < < < < Q Q Q Q O Q Q O N O' O n O n 3 > 5 5 * p 3 3 P < < < < Q Q Q Q 58 DATA(RPAUSEl); DATA(LPAUSEl); DATA(UPAUSEl); DATA(DPAUSEl); float rpause 1 f Jpause 1 f,upause 1 f.dpause 1 f; float rcoord2procf.rcoord2f,lcoord2procf,lcoord2f,ucoord2procf,ucoord2f,dcoord2procf, dcoord2f; float dr.dl.du.dd; float rcoordf,lcoordf,ucoordf,dcoordf; float dark,dalk,dauk,dadk; int rightf,leftf,upf,downf; float up,dp; float signaluf.signaldf; DATA(TEST); DAT A(RPAUSE); DATA(LPAUSE); DATA(UPAUSE); DATA(DPAUSE); MATRDC(SCWT A,9,9); DATA(RTRIGNB); DATA(LTRIGNB); DATA(UTRIGNB); DATA(DTRIGNB); DATA(TRIGNS); DAT A(TR1GNB); MATRDC(SCWTAPROC,9,9); MATRIX(SCWTAPROCR,9,9); MATRIX(SCWTAPROCL,9,9); M ATRIX(SCWT APROCU.9,9); MATRDC(SCWTAPROCD,9,9); DATA(RCOORD); DATA(LCOORD); DATA(UCOORD); DATA(DCOORD); DATA(RCOORD2); DATA(LCOORD2); DATA(UCOORD2); DATA(DCOORD2); DAT A(RCOORD2proc); DATA(LCOORD2proc); DAT A(UCOORD2proc); DATA(DCCX)RD2proc); DATA(DELTARB); DAT A(DELT ALB); DATA(DELTAUB); DATA(DELTADB); DATA(COR); 59 DATA(COL); DATA(COU); DATA(COD); DATA(DR); DATA(DL); DATA(DU); DATA(DD); DATA(DAR); DATA(DAL); DATA(DAU); DATA(DAD); DATA(RIGHTprog); DATA(LEFTprog); DATA(UPprog); DATA(DOWNprog); DATA(RIGHTprog_s); DATAfLEFTprog s); COL_VEC(MULTR,9); COL_VEC(MULTL,9); ROW_VEC(MULTU,9); ROW_VEC(MULTD,9); MATRIX(MULTMATRIXR,9,9); MATRIX(MULTMATRIXL,9,9); MATRIX(MULTMATRIXU.9.9); MATRIX(MULTMATRIXD,9t9); DATA(signal); DATA(signalu); DATA(signald); MATRIX(MULTMATRIXUR,9,9); MATRIX(MULTMATRIXDR,9,9); MATRIX(MULTMATRIXUL,9,9); MATRIX(MULTMATRIXDL,9t9); MATRIX(MULTMATRIXTR,9t9); MATRIX(MULTMATRIXTL,9,9); MATRIX(MULTMATRIXFR.9,9); MATRIX(MULTMATRIXFL,9,9}; MATR£X(scbunl,9,9); MATRIX(scbunr,9,9); MATRIX(SCBUNL,9,9); MATRIX(SCBUNR,9,9); / * * * * * • * / /*THAL*/ /***+♦**/ MATRJX(thal_mem,9,9); MATRIX(THmcm,9,9); /♦SPATIO-TEMP TRANS*/ 60 /****************««*****/ ROW_VEC(LTOPO,9); ROW_VEC(RTOPO,9); COL_VEC(UTOPO,9); COL_VEC(DTOPO,9); MATRIX(LWEIGHTS,9,9); MATRIX(RWEIGHTS,9,9); MATRDC(UWEIGHTS,9,9); MATRIX(DWEIGHTS(9,9); MATRIX(LSTM,9,9); MATRIX(RSTM,9,9); MATRIXfU STM,9,9); MATRDC(DSTM,9,9); INIT_MODULE(saccadc_init) { / / * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * / / //This is the initialization module. It sets the firing rates for the tonic neurons so that the// //system is configured in the straight ahead position. Also, fef, pp, and Ubn layers are // //set to 0 so that no saccade is specified in the beginning. // /I***********************,*,****,**************************************** // QVctr = 1; QVFACTOR = 1600; Oblique » ]; SC_Delay = 0; LTN = 154; // Firing rates for central position RTN = 154; UTN = 154; DTN = 154; RTNDELAY2 = 154; RTNDELAY3 = 154; RTNCHANGE2 = 0; LTNDELAY2 = 154; LTNDELAY3 =154; LTNCHANGE2 = 0; UTNDELAY2 = 154; UTNDELAY3 - 154; UTNCHANGE2 * 0; DTNDELAY2 = 154; DTNDELAY3 = 154; DTNCHANGE2 = 0; 61 RTNDELAY = 154; LTNDELAY = 154; UTN DELAY = 154; DTN DELAY = 154; fef_vis = 0; fefjn em = 0; fef_sac - 0; //clearing the input areas FEFvis = 0; FEFmem = 0; FEFsac = 0; //so that no saccades are ppqv = 0; PPqva = 0; PPqv = 0; //specified llbn = 0; LLBN = 0; SNRmem = 100; SNRsac = 100; MULTL= 1; MULTU=1; MULTD=1; RUN_MODULE(saccade_input) ( //INP is an array which represents the "real-world" as seen by the retina and STI- // //MULATtON represents stimulation to the FEF and SC. These layers are defined in // //the input ".nsl" files. // INP,run(); STIMULATION.runO; } RUN_MODULE(saccade_llbn) { //The long lead burst neurons receive their input from the SC and the FEF. The LLBN // //are located in the brainstem saccade generator. The NSLwinnertakeall function is lo- // //cated in the "lib.c" file and it singles out the strongest stimulus (in the case of multiple// //stimuli) as the next saccade target. The winner take all is also what allows a stimu- // //lated saccade to interrupt an ongoing saccade, implying that weighted averaging // //occurs upstream. // / DIFF.eq(llbn,P.elem(llbn_tm)) = -llbn + P.eiem(llbn_kl)*SC + P. clem (1 1 bn_k3)* FEFsac; llbnwta = NSLwinncrtakeall(llbn); J 62 RUN_MODULE(saccade LLBN) { //The NSLsaturation function is used to determine the LLBN firing rate from its input // //potential (llbnwta). // LLBN = NSLsaturation(llbnwta,P.elem(LLBN_lcxl),P.elem(LLBN_kx2), P.elem(LLBN_lcy 1 ),P.elem(LLBN_ky2)); R UN_M ODULE( saccade_ml bn) { //*******»****************»*****•*,******+*********************+****., //RSTM, LSTM, USTM, and DSTM are directionally weighted 9x9 matrices which //initiate the SpatioTemporal transformation. These matrices have weights that in­ c re a s e with increasing distance from the fovea, i.e. more eccentric targets receive a //stronger temporal representation. DIFF.eq(Rmlbn,P.elem(Rmlbn_tm)) = -Rmlbn + (RSTMA LLBN); DIFF.eq(Lmlbn,P.elem(Lmlbn_tm)) = -Lmlbn + (LSTMA LLBN); DIFF.eq(Umlbn,P.elem(Umlbn_tm)) = -Umlbn + (USTMA LLBN); DIFF.eq(Dmlbn,P.elem(Dinlbn_tin)) = -Dmlbn + (DSTMA LLBN); 1 RUN_MODULE(saccade_MLBN) { //The NSLsaturation function is used to determine (R,L,U,D)MLBN firing rate from // //their input potentials ((R.L,U,D)mlbn). // RMLBN = NSLsaturation(Rmlbn,P.elem(RMLBN_kxl),P.elem(RMLBN kx2), P.elem(RMLBN_ky 1 ),P.elem(RMLBN_ky2)); LMLBN = NSLsaturation(LmIbn,P.elem(LMLBN_kxl),P.elem(LMLBN_kx2), P.elem(LMLBN_ky 1 ),P.elem(LMLBN_ky2»; UMLBN = NSLsaturation(Umlbn,P.elem(UMLBN_kxl),P.elem(UMLBN_kx2), P.elem(UMLBN_lcy 1 ),P.elcm(UMLBNJcy2)); DMLBN = NSLsaturation(Dmlbn,P.elem(DMLBN_kxl),P.elem(DMLBN_kx2), P.elem(DMLBNJey 1 ),P.elem(DMLBN_ky 2)); RUN_MODULE(saccade_rebn) < ,/******•**********+*******************•***»****+*++*******************// //The EBNs complete the SpatioTemporal transformation which was initiated by the // //MLBNs. The MLBN represent the target in a spatial map but the target represents- // //tion within that map is already temporally coded (due to RSTM.LSTM.USTM, // //DSTM). A target was already singled out at the LLBN level (by the function // 63 //NSLwinnertakeall) so we want to get the maximum element (the rest of the elements // //are zero). The EBNs are inhibited by PAUSE cells. // DIFF.eq(rebn,P.elem(rebn_tm)) = - rebn + RMLBN.max() - P.elem(rebn__k 1 )*RPAUSE; DIFF,eq(lebn,P.elem(lebn_tm)) = - lebn + LMLBN.max() - P.elem(lebn_kl)*LPAUSE; DIFF.eq(uebn,P.elem(uebn_tm)) = - uebn + UMLBN.max() - P.elem(uebn_k 1 )*UPAUSE; DIFF.cq(debn,P.elem(debn_tm)) = - debn + DMLBN.max() - P.elem(debn_kl)*DPAUSE; ) RUN_MODULEtsaccade_REBN) { //I********************************************************************,, /A lie NSLramp function is used to determine (R,L,U,D)MLBN firing rate from their // //input potentials ((r,l,u,d)ebn). // REBN = NSLramp(rebn,P.elem(REBN_k 1 ),P.elem(REBN_k2),P.elem(REBN_k3)); L E B N * NSLramp(lebn,P.elem(LEBN_k 1 ),P.clem(LEBN_k2),P.elem(LEBN_k3»; UEBN = NSLramp(uebn,P.elem(UEBN_kl),P.elem(UEBN_k2),P.e]em(UEBN_k3)); DEBN = NSLramp(debn,P.elem(DEBN_k 1 ),P.elem(DEBN _k2),P.elem(DEBN_k3)); RUN_MODULE(saccade trig) { //The trigger cells receive input from the SC and the FEF. Once a saccade is initiated, // //the trigger cells are inhibited by the MASK signal, which fires at a constant rate while// //the MLBN are active. As their name suggests, the trigger cells trigger the saccade // //movement. The resettable integrators (ri) monitor the progress of the current saccade // //by integrating the ebn (by using the constant ri_kl). They are also inhibited by pause // //cells. The delta signals represent the target value that the ri should reach to terminate // //the saccade. The delta signals are derived by multiplying the constant MASK mat- // //rices with the directionally weighted WEIGHTS matrices to obtain a numerical // //representation o f the eccentricity of the target. // //*******// If right // //*******// DIFF.eq(rtrig,P.elem(rtrig_jm)) = -rtrig + (RSTMA SC) + 64 (RSTMA FEFsac) - P.elem(rtrig_kl)*RMASK; n i = RRI + P.elem(rri_kl)*REBN - RPAUSE; deltar = (RMASKA R WEIGHTS); //* * + * * * * // //left // DIFF.eq(ltrig,P.clcm(ltrig_tm)) * -ltrig + (LSTMA SC) + (LSTMA FEFsac) - P.elem(ltrig_kl)*LMASK; lri = LRI + P.elem(lri kl)*LEBN - LPAUSE; deltal = (LMASKA L WEIGHTS); //*******// // Up // DtFF.eq(utrig,P.elem(utrig_tm)) = -utrig + (USTMA SC) + (USTMA FEFsac) - P.elem(utrig_kl)*UMASK; uri = URI + P.eIem(uri_kl)*UEBN - UPAUSE + ri_inp; deltau = (UMASKA UWEIGHTS); //**+***#// // down // / / * * * * * * * // DIFF.eq(dtrig,P.elem{dtrig_tm)) = -dtrig + (DSTMA SC) + (DSTMA FEFsac) - P.elem(dtrig_k 1 )*DMASK; dri = DRI + P.elem(dri_kl) *DEBN - DPAUSE; del tad = (DMASKA DWE1GHTS); } RUN MODULE(saccade_TRIG) { //The TRIG signal is taken to be the maximum element in the trig matrix. It is then // used as the input into a NSLramp function to figure out TRIGN, which, basically, fires // //when the target representation is strong enough in the SC and/or the FEF. The RI use // //ri as their input into a NSLramp function. Actually the parameters are set up such that// //ri=RI if ri>0 or 0 otherwise. The MASK matrices are activated whenever the MLBN // //are firing over a certain threshold as determined by the NSLstep function. The // //DELTAI signals are computed by combining the input from the delta layer and an // //inhibitory connection from the PAUSE layer. These signals are then used to compute // //DELTA signals through the NSLramp function. If D E L T A IC , DELTA=DELTAl, // IfO otherwise. The DELTA signal represents the goal that the RI must reach in order to // //terminate the saccade. // //* * * * * * * // //right // 65 RTRIG.elemO = rtrig.niax(); RTRIGN = NSLramp(RTRIG,P.clein(RTRIGN_k 1), P.clcm(RTRIGN_k2),P.elem(RTRIGN_k3)); RRI = NSLrampKrri,P.e!em(RRI_kl), P.clem(RRI_k2)lP.clcm(RRI_k3)); RMASK = NSLstcp{RMLBN,P.elem(RMASK_kI), P.clcm(RMASK_k2),P,elcm(RMASK_k3)); DELTARI = deltar.max() - P.eIem(DELTARIJcl)*RPAUSE; DELTAR = NSLramp(DELTARI,P.elem(DELTAR_k 1), P.elem(DELT AR_k2 ),P.elem(DELT AR_k3)); / / * * * * * * * / / if left // LTRIG.elemO = ttrig.max(); LTRIGN = NSLramp(LTRIG,P.elem(LTRIGN_ki), P.elem(LTRIGN_k2),P.elem(LTRIGN_k3)); LRI = NSLramp(lri,P.elem(LRI_k 1), P.elem{LRI k2),P.elem(LRI_k3)); LMASK = NSLstep(LMLBN,P.elcm(LMASK kl), P.elem(LMASK k2),P.elem(LMASK k3)); DELTALI = deltal.maxO - P.elem(DELTALI J c 1 )*LPAUSE; DELTAL = NSLramp(DELT ALI,P.elcm(DELTAL_k 1), P.elem(DELTAL_k2),P.elcm(DELTAL_k3)); //+****+*// // up // //******+// UTRIG.elemO = utrig.max(); UTRIGN = NSLramp(UTRIG,P.elem(UTRIGN_k 1), P.eiem(UTRIGN_k2),P.elem(UTRIGN_k3)); URI = NSLramp(uri,P.eleni(URI_kl), P.elem(URI_k2),P.elem(URI_k3)); UMASK = NSLstep(UMLBN,P.elein(UMASK_k 1), P.elem(UMASK_k2),P.elem(UMASK_k3)); DELTAUI * deltau.max() - P.elem(DELTAUI_kl)*UPAUSE + d c ljn p ; DELTAU = NSLramp(DELT AUI,P.elem(DELTAU_k 1), P.elem(DELTAU_k2),P.elem(DELTAU_k3)); H down // DTRIG.elem() = dtrig.max(); DTRIGN = NSLramp(DTRIG,P.elem(DTRIGN_kl), P.elem(DTRIGN_k2),P,elem(DTRIGN_k3)); DRI = NSLramp(dn,P.elem(DRI_kl), 66 P,elem(DRI_k2),P,elem(DRI_k3)); DMASK = NSLstcp(DMLBN,P.elem(DMASK_kl), P.elem(DMASK__k2),P.elem(DMASK_k3)); DELTADI = deltad.maxO - P.elem(DELTADI_kl)*DPAUSE; DELTAD = NSLramp<DELT ADl,P.elem(DELTAD_k 1), P.elem(DELT AD_k2),P.clcm(DELTAD_k3)); I RUN_MODULE(saccade_temporal remapping) { IfThe data variable fefswitch is used to determine the maximum value of the FEFsac // //layer. The NSLstep function is used to determine the firing rate of the FEFSWITCH // //layer (next module). This value is 90 if fefswitch>90 and 0 otherwise. The fefgate // //variable uses the FEFSWITCH variable as input into its membrane potential. // / fefswitch.elemO - P.elem(fefswitch_kI)*FEFsac.max(); DIFF.eq(fefgate,P.elem(fefgate_tm)) = - fefgate + FEFSWITCH; I RUN_MODULE(saccade_TEMPORAL_REMAPPING) { //The NSLstep function is used to compute FEFGATE from its membrane potential // fefgate. This value is not used, i.e., it is set to 0, for noncolliding saccades and it is set // //to 1 in colliding saccades if there is sustained activity in the FEF. This gating is used // //to correct for the disturbing movements caused by colliding saccades. // //The TNDELAY2 and TNDELAY3 signals compute a delayed TN signal. These are // //used to derive the TNCHANGE signal, which computes the change between TN // //signals. This value is used in a later module to correct for the disturbing movements // //due to colliding saccades. // FEFSWITCH = NSLstep( fefswitch,P.elem(FEFSWTTCH_k 1), P.elem(FEFSWITCHJc2),P.elem(FEFSWITCH_k3)); FEFGATE = NSLstep(fefgaie,P.elem(FEFGATE_kl), P.elem(FEFGATE_k2),P.elem(FEFGATE_k3)); //+******// //right // //*******// DEFF.eq(RTNDELAY2,P.elem(RTNDELAY2_tm)) = - RTNDELAY2 + RTN; DIFF.eq(RTNDELAY3,P.elem(RTNDELAY3 tm » = - RTNDELAY3 + RTN; DIFF.eq(RTNCHANGE2,P.elem(RTNCHANGE2_tm» = - RTNCHANGE2 + RTNDELAY2 - RTNDELAY3; //*******// 67 //left // f/*******/f DIFF.eq(LTNDELAY2,P.elem(LTNDELAY2 tin)) = - LTNDELAY2 + LTN; DIFF.eq(LTNDELAY3,P.elem(LTNDELAY3_tm)) = - LTNDELAY3 + LTN; DIFF,eq(LTNCHANGE2,P.elem(LTNCHANGE2_tm)) = - LTNCHANGE2 + LTNDELAY2 - LTNDELAY3; //*■******// // up // //****+**// DIFF.eq(UTNDELAY2,P.elem(UTNDELAY2_tm)) = - UTNDELAY2 + UTN; DIFF.eq(UTNDELAY3,P.elem(UTNDELAY3_tm)) = - UTNDELAY3 + UTN; DIFF.eq(UTNCHANGE2,P.elem(UTNCHANGE2_tm)) = - UTNCHANGE2 + UTNDELAY2 - UTNDELAY3; //*******// // down // DIFF.eq(DTNDELAY2,P.elein(DTNDELAY2 tm)) = - DTNDELAY2 + DTN; DIFF.eq(DTNDELAY3,P.elem(DTNDELAY3_tm)) = - DTNDELAY3 + DTN; DIFF.eq(DTNCHANGE2,P.elem(DTNCHANGE2_tin)) = - DTNCHANGE2 + DTNDELAY2 - DTNDELAY3; 1 RUN_MODULE(saccade_MN) t //The MN signals, use to drive the oculomotor plant, are generated by adding the EBN // //signals (pulse) and the TN signals (step). The EBN signals code for desired eye posi- // //tion while the constantly firing TN neurons code for current eye position. // //♦♦I***************#**************************************************// LMN = LEBN + LTN; RMN = REBN + RTN; UMN = UEBN + UTN; DMN = DEBN + DTN; } RUN_MODULE(saccade_EYE_POSmON_AND_VELOCITY) { //EyeH, EyeV, EyeVdown, and EyeHleft are signals which code for where the eyes are // //with respect to the dead ahead position, i.e. the actual location of the eyes. The TN // //signals are used to determine these signals. HTHETA and VTHETA convert the if //horizontal and vertical location o f the eyes by multiplying them with a constant. // //These are then used to move the eyes to their new location. EyeH and EyeHleft are If //complimentary signals and so are EyeV andEyeVdown. If i f W and HV are used to determine how much the eyes have moved since the pre- If 68 //vious iteration, i.e., relative movement. The EBN signals and the TNCHANGE sig- // //nals, when activated, are used to calculate these signals which are then used to update // //the internal mapping in the PPqv layer. // / EyeH = P.elem(EyeH_k2)*RTN - 56; EyeV * P.eiem(Eye V_k2) * UTN - 56; EyeVdown = P.elem(EyeVdown_k2)*DTN - 56; EyeHleft = P.elem(EyeHleft_k2)*LTN - 56; VV = P.elem( VV_k 1 )*UEBN - P.elem(VV_kl)*DEBN + P.elem(VV_k2)*UTNCHANGE - P.elem(VV_k3)*DTNCHANGE; HV = P.elem(HV_kl)*REBN - P.elem(HV_kl)*LEBN + P.elem(HV_k2)*RTNCHANGE - P.elem(HV_k3)*LTNCHANGE; ) HTHETA = P.elem(HTHETA_kl )*EyeH; VTHETA = P.elem(VTHETA_k 1 )*EyeV; RUN_MODULE(saccade tonic changes) { *************»*********,***„*****************+***********// //The TNDELAY signals are computed by adding a temporal delay to the original TN // //signals. They are then used to compute TNCHANGE by taking the difference bet- // //ween the TN signals and the TNDELAY signals. // DIFF.eq(RTNDELAY1 P.elem(RTNDELAY_tm» = - RTNDELAY + RTN; DIFF.eq(LTNDELAY,P.elem(LTNDELAY tm » = - LTNDELAY + LTN; DIFF.eq(UTNDELAY,P.elem(UTNDELAY_tm)) = - UTNDELAY + UTN; DIFF.eq(DTNDELAY,P.elem(DTNDELAY tm)) = - DTNDELAY + DTN; ) RUN_MODULE(saccade TN) //By taking into consideration opposing EBN signals, representing how much the eye // //position has changed, the new TN signal, coding for actual eye position, can be de- // //rived. In cases of colliding saccades, FEFGATE is 1 not 0 and the delayed change // //in absolute eye position is also considered to correct for the disturbing movements. // LTN = LTN + P.elem(LTN_k 1 )*LEBN - P.elem(LTN_k 1 )*REBN - FEFGATE * LTNCHANGE2; RTN = RTN + P.elem(RTN_k 1 )*REBN - P.elemfRTN kl)*LEBN - FEFGATE+RTNCHANGE2; UTN = UTN + P.elcm(UTN_k 1 )*UEBN - P.elem(UTN_k 1 )*DEBN - FEFGATE*UTNCHANGE2; DTN = DTN + P.elemfDTN kl)+D EBN -P.elem fD TN kl)*U EB N - 69 FEFGATE*DTNCHANGE2; } RUN_MODULE(saccade_TONIC_CHANGES) { //T h e TNCHANGEE signals are used to help compute the HV and VV signals. They // //determine how much of a change in firing rate has occurred in the TN. // RTNCHANGE = RTN - RTNDELAY; LTNCHANGE = LTN - LTNDELAY; UTNCHANGE = UTN - UTNDELAY; DTNCHANGE - DTN - DTNDELAY; } RUN_MODULE(saccade_B URSTERS) { //This module is used to compute SACCADEMASK. The EBN signals are added toge-// //ther to determine if the total eye movement is above a certain velocity. If this is true, // //then SACCADEMASK is set to 0, i.e., visual input into the system is gated off; other-// //wise, SACCADEMASK is set to 1 and the system can "see" normally. // BURSTERS * UEBN + DEBN + LEBN + REBN; saccadebool = NSLstep(BURSTERS,P.elem(saccadebool_kl), P.eiem(saccadebooI_k2),P.elem(saccadebool_k3)); SACCADEMASK = saccadebool; } RUN_MODULE(saccade_retina) { //**«****************«*************«***********************************// //The subroutine NSLeyemove is used to center the retinal matrix within the "real // //world" matrix INP, around the points HTHETA and VTHETA, the horizontal and // //verical components o f eye position respectively. The layer retina is a composite of // //the retinal layer over time. // //I*********************,,****, retinal = NSLeyemove(INPtHTHETA, VTHETA); DiFF.eq(retina,P.elem(retina_tm)) = - retina + retinal; ) RUN_MODULE(saccade RETINA) { ,/****************+************+*•*+*************+***«*****+*+***+*••**// //The matrix RETINA is computed by pointwise multiplying the retina matrix with the // //SACCADEMASK matrix. So, if an object is present in the field of vision and the // 70 //eyes are moving slow enough to detect this object, then RETINA encodes this object // //and projects it to the visual system. // RETINA = (SACCADEMASKA rctina); } RUN_MODULE(saccade_VISCORTEX) ( //All of the layers represented in this module do not alter the projected spatial map // //from the retina in any way. They simply project onto the next layer. The addition of // //these layers simulates the time delay associated with the traversal of the visual signal // //through the visual cortex. // DIFF.eq(PP,P.elem(PP_tm)) = - PP + MT; DIFF.eq(MT,P.elem(MT_tm)) = - MT + V4; DIFF.eq(V4J».elem(V4_tm)) = - V4 + V2; DIFF.eq(V2,P.elem(V2_tm)) = - V2 + VI; DIFF.eqf V 1 ,P.elem(Vl_tm» = - VI + LGN; DIFF.eq(LGN,P.elem(LGN_tm» * - LGN + RETINA; } RUN_MODULE(saccade_M) { M.elem(4.4) = 1; M3 * P.elem(M3_kl) * M2; RUN_MODULE(saccade_PPqv) [ //The subroutine NSLshift uses the horizontal and vertical velocity of the eyes as in- // //put and creates a mask which updates the internal mapping of the PPqv layer. This is // //used in the double saccade task. The mask is excitatory in the direction of move- // //ment and inhibitory in the opposite direction. Thus, the “tail end" of the movement // //is erased due to the inhibitory connections. The center element and the surrounding // //eight elements of QVMASK are computed through NSLshift and the remaining ele- // //ments are set to a standard value (-.2). // //The QVMASK is then convolved with the existing mapping in the PPqv layer to de- // //termine the new target representation. The firing rate for the PPqv layer is then deter- // //mined and is projected onto the SC and the FEF. // qvmaskl = NSLshift(HV,W ,QVFACTOR); 71 QVMASK = P.elem(QVM ASK_kl)*qvmaskl QVMASK.elem(2,2) = InhSurr.clem(); QVMASK.eIem(2,3) = InhSurr.elem() QVMASK.elem(2,4) = InhSurr.elemO; QVMASK.elem(2,5) = InhSurr.elemO QVMASK.elem(2,6) = InhSurr.elemO; QVM ASK.elem(3,6)« InhSurr.elemO QVMASK.elem(4,6) = InhSurr.elemO; QVMASK.elem(5,6) = InhSurr.elemO QVMASK.elem(6,2) = InhSurr.elemO; QVMASK.elem(6,3) = InhSurr.elemO QVMASK.elem(6,4) = InhSurr.elemO; QVMASK.elem(6,5) = InhSurr.elemO QVMASK.elem(6,6) = InhSurr.elemO; QVMASK.elem(3,2) = InhSurr.elemO QVMASK.elem(4,2) = InhSurr.elemO; QVMASK.elem(5,2) = InhSurr.elemO ppqv = PP + QVMASK*PPqva - P.elem(ppqv_kl)*FovEIem - P.elem(ppqv_lc2)*(M2*SC_Delay); ppqv = M2A ppqv; PPqva = NSLsigma(ppqv,P.elem(PPqv_kxl),P.elem(PPqv_kx2), P.elem(PPqv_ky 1 ),P.elem(PPqv_ky2)); PPqv = PPqva; PPqv,elem(4,4) = 0; RUN_MODULE(saccade_fef) { //The fef_vis layer simply receives an input form the PPqv layer and thus maintains a // //representation of the target positions at all times. The fef.m em layer receives a pro- // //jection from the Thmem layer, which is responsible for the spatial memory loop. It // //also recieves input from the FEFvis layer so that target representation from the Ppqv // //layer is maintained even thought the target is no longer visible. This is the intrinsic // //memory due to the PPqv layer. Finally, the fef_sac layer processes the input from // //both o f these layers (FEFvis and FEFmem) and determines the fef regional output. // DIFF.eq(fef_vis,P.elem(fef_vis_tm))= - fef_vis + PPqv; DEFF.eq(fef_mem,P.elem( fef_mem_tm)) = - fef_mem + F\elem(fef_memJc4)*THmem + P.elem(fef_mem_k2)*FEFvis - P.elem(fef_mem_lc 1 )*FOn; DIFF.eq(fef_sac,P.elem(fef_sac_tm)) = - fef_sac + P.elem(fef_sac_kl)*FEFvis + 72 P.elem(fef_sac_k2)*FEFmem P.elem( fef_sac_k3) * FOn; fef_sac.elem(4,4) = 0; RUN_MODULE(saccade_FEF) i //The NSLsigma functions are used to determine the appropriate firing rates for FEFvis // //FEFmem and FEFsac from their respective membrane potentials, fef_vis, fef_mcm, // //and fef_sac. FEFsac is the output of the FEF region and projects down onto the sacc- // //ade generator. // //♦I,**********************.,**********.***************,****,***,**********,, FEFvis = NSLsigma(fef_vis,P.elem(FEFvis_xl),P.elem(FEFvis_x2), P.elem(FEFvis_y 1 ),P.elem(FEFvis_y2»; FEFmem = NSLsigma(fef_mem,P.elem(FEFmem_x 1 ),P.efem(FEFmem_x2), P.elem(FEFmem_y 1 ),P.elem(FEFmem_y2)); FEFsac * NSLsigma(fef_sac,P.elem(FEFsac_x 1 ),P.elem(FEFsac_x2), P.elem(FEFsac_y 1 ),P.eIem(FEFsac_y2)) + P.elem(FEFsac_k 1) * STIMULATION ; R UN_MODULE( saccade_FOn) { //This module determines the two inhibitory signals for the system, FOn and FovElem. // //If there is a target being perceived by the retina which is over S magnitude in strength,// //(a typical target is 90), then the FOn signal is activated to a value o f 90 by use o f the // //NSLstep function. Remember that the PP layer is simply a projection from the retina // //since the intermediate layers of the visual cortex do not alter the signal in any way. // //The FovElem signal is assigned the same value as the target strength being perceived // //by the retina. In this manner, the FovElem signal can be overruled is a stronger sti- // //mulus is presented whereas the FOn signal is activated whenever the system begins to// //foveate an object. // fon = P.elem(fon_kl) * PP.elem(4,4); FOn - NSLstep(fon,P.elem(FOn_x 1 ),P.elem(FOn_y 1), P.elem(FOn_y2)); FovElem.elem(4,4) = PP.elem(4,4); 73 } RUN_MODULE(saccade_caudate) { //The caudate region does not affect the system in any meaningful way and is present in// //the model, like the visual cortex module, to account for biology and the associated // //temporal delays. The cd_mem layer receives a projection from the FEFmem layer // //and the cd_sac layer receives a projection from the FEFsac layer. // //♦♦♦I*********************,*********************************,**, ***++*•/! DIFF.eq(cd_mem,P.elem(cd_mem_tm)) - - cd_mem + P.elem(cd_mem_k 1 )*FEFmem; ) DLFF.eq(cd_sac,P.elem(cd_sac_tm)) = - cd_sac + P.elem(cd_sac_k 1 )* FEFsac; RUN_MODULE(saccade_CAUDATE) { //T h e NSLsigma function is used to determine the firing rates of the CDmem and // //CDsac layers from their respective membrane potentials. These layers then project // //onto the SNR region. // CDmem = NSLsigma(cd_mem,P.elem(CDmem_x 1 ),P.elcm(CDmem_x2), P.elem(CDmem_y I ),P.elem(CDmem_y2)); CDsac = NSLsigma(cd_sac,P.elem(CDsac_xl),P.elcm(CDsac_x2), P.elem(CDsac_y 1 ),P.elem(CDsac_y2)); ) RUN_MODULE(saccade_snr) i //The snr_sac layer recieves it’s input from the CDsac layer and the snr_mem layer re* // //ceives it’s input from the CDmem layer. Again, these layers do not alter the projected// //spatial map in any way. These layers are provided to account for biology and tempo- // //nil delays. // DIFF.eq(snr_sac,P.elem(snr_sac_tm)) = - snr_sac + P.elem(snr_sac_k 1 )*CDsac; DIFF.eq(snr_mem,P.elem(snr_mem_tm» * - snr_mem + P.elem(snr mcm_kl)*CDmem; ) 74 RUN_MODULE(saccade_SNR) i //The NSLsigma function is used to determine the firing rate of the SNRmem and the //SNRsac layers from their respective membrane potentials. ******************** 1 SNRsac = NSLsigma(snr_sac,P.elem(SNRsac_x 1 ),P.elem(SNRsac_x2), P.clem(SNRsac_y 1 ),P.elem(SNRsac_y 2)); SNRmem - NSLsigma(snr_mem,P.elem(SNRmem_x 1 ),P.elem(SNRmem_x2), P.elem(S NRmem_y 1 ),P.elem(SNRmem_^2)); RUN_MODULE(saccade_sc) { //The superior colliculus receives input from higher brain regions and processes them to// //drive the brainstem saccade generator to elicit a sac cade. The sc_sup layer receives a // //direct projectin from the retina and is inhibited by the Fon signal. If the system is not // //foveated, the sc_sup layer becomes active and a short latency saccade is made (since // //all the higher brain regions are bypassed). // //The sc_qv layer recieves a projection from the PPqv and thus tracks the position o f // //second target in the double saccade task. The sc_sac layer receives an input projection// //from the FEF and is inhibited by the SNR. When the FEF is activated, it indirectly in- // //hibits the SNR layer and thus excites the sc_sac layer. // //The sc layer processes the input from the previous two layers and is inhibited by the // //FOn signal. The STIMULATION matrix represents electrical stimulation to evoke // //artificial saccades and SCsup is the output of the sc_sup layer described above. // //I********************************************************************// DlFF.eq(sc_sup,P.elem(sc_sup_tm)) = - sc_sup - P.elem(sc_sup_kl)*FOn + P.elem(sc_sup_k2)*RETINA; DIFF.eq(sc_qv,P.elem(sc_qv_tm)) = -sc_qv + NSLwinnertakeall(PPqv); DIFF.eq(sc_sac,P.elem(sc_sac_tm» = -sc_sac + P.elem(sc_sac_k 1 )* FEFsac - P.e lem( sc_sac_k2) * S NRsac; DIFF.eq(sc,P.elem(sc_tm)) = -sc + P.elem(sc_k2)*SCsac + P.elem(sc_k3)*SCqv - P.elem(sc k4)*FOn + P.elem(sc_k5)*STIMULAT10N + P.elem(sc_k6)*SCsup - 75 P.elem(sc_k 1 )*SC_Delay; sc.elem(4,4) = 0; // no saccades to where we already are! // scwtam.elemQ - sc_wta.max(); sc_wta = NSLwinnertakealJ(sc); } RUN_MODULE(saccade_SC) { //The SCsup, SCsac, and the overall SC layer firing rates are determined by the NSL- //sigma function by their respective membrane potentials. SCqv is determined by //pointwise multiplication of it*s input layer with SACCADEMASK, i.e. if the eyes are //moving too fast, an accurate representation of the second saccade cannot be main- //tained. The SC_Delay layer represents the residual activity in the SC layer. //***•**+*****************+***•*******•***+*****,,*+«*****,,****,**,»*+ SCsup = NSLsigma(sc_sup,P.elem(SCsup_xl),P.elcm(SCsup_x2), P.cIem(SCsup_y 1 ),P.elem(SCsup_y2)); SCqv = (S A C C A D E M A S K ^ q v ); SCsac - NSLsigma(sc_sac,P.elem(SCsac_x 1 ),P.elem(SCsac_x2), P.elem(SCsac_y 1 ),P.elem(SCsac_y2)j; SC = NSLsigma(sc_wta,P.elem(SC_xl),P.eIem(SC_x2), P.elem(SC_y 1 ),P.elem(SC_y2» + P.elem(SC_k3)* STIMULATION; DIFF.eq(SC_Delay,P.elem(SC_Delay_tm)) = -SC_Delay + SC; scwtam2.elem() = sc_wta.max(); scwtadif * scwtam - scwtam2; //SCW TADIF is 1 if the signal strength of sc_wta is decreasing. This prevents residual //activity in the sc from initiating new saccades. Also, it deactivates fixation when a new //target is located. SCWTADIF = NSLstep( scwtadif,0.000001,1,0); //FDCBUNR determines if the BUN o f the right half are foveated on a target. This result //is combined with SCWTADIF to determine if a new saccade is about to be initiated. //FIXR is then set to 0 if a target is fixated and is set to 1 otherwise. The same procedure //is followed for the left BUN and a final FIX signal is derived to determine if the system //is foveated or not. fixbunr = SCBUNR.elem(4,0); FDCBUNR = NSLstepffixbunr, 1,1,0); fixr = FIXBUNR + SCWTADIF; 76 FIXR = N SLstep( fixr,0.5,0,1); fixbunl = SCBUNL.elem(4,8); FIXBUNL = NSLstep{fixbunl, 1,1,0); fixl = FIXBUNL + SCWTADIF; FIXL = NSLstep(fixl,0.5,0,l); FIXtemp = FIXL + FIXR; FIX = NSLstep(FIXtemp,0.9,0,l); } RUN_MODULE{saccade_bun) { MULTMATRIXR = 0; MULTMATRIXL = 0; MULTMATRIXD = 0; M ULTM ATRIX U = 0; SCWTA = NSLstep(sc_wta,70(0 ,1); RTRIGNB = NSLstep(RTRIGN,l ,0,1); LTRIGNB = NSLstep(LTRIGN, 1,0,1); UTRIGNB * NSLstep(UTRIGN, 1,0,1); DTRIGNB = NSLstep(DTRIGN, 1,0,1); TRIGNS = RTRIGNB + LTRIGNB + UTRIGNB + DTRIGNB, TRIGNB = NSLstep(TRIGNS ,0.99,0,1); SCWTAPROC = SCWTA*(TRIGNB)*FIX; //right /♦This section controls the operation of the pause cells. ♦/ scwtar = sc_wta A RWEIGHTS; RPAUSEproc * RPAUSE - scwtar.max(); RPAUSEI * NSLstep (RPAUSEproc.250,0,300); rpause 1 f= RPAUSE 1 .elem(); RPAUSE = NSLstep(FIXR,0.5,300,rpause If); /♦This section determines where the target has been spotted. ♦/ SCWTAPROCR = SCWTAPROC A R WEIGHTS; RCOORD = SCWTAPROCR.max()/1.425; /♦This section determines if there is activity outside the fixation zo n e* / rcoord2procf = RCOORD2proc.elem(); RCOORD2 = (5 + RCOORD) ♦RTRIGNB; rcoord2f = RCOORD2.elem(); RCOORD2proc = NSLstep(RCOORD2,0.1,rcoord2procf,icoord2f); /♦This section compares the progress of the RI and the DELTA4/ dr = DELTAR.elem(); DELTARB = NSLstep(DELTAR,0.1,0,1); COR = NSLsaturation (RRI,0,dr+. 1,0,1); COR = COR ♦ DELTARB; /♦This section determines if a saccade is already in progress4/ rcoordf=RCOORD2proc.elem(); DR = RCOORD2proc - RPAUSE; 77 DAR = NSLstep(DR,-1,5,rcoordf); dark = DAR.elem(); /*If a saccade is not already in progress, then the activity square is identified*/ RIGHTprog = NSLsaturation (COR,0,1,dark-1,4); /*This section maps the movement of the eyes and remaps to one half*/ RIGHTprog. s = NSLsigma(RIGHTprog,4,8,0,8); rightf = (int) RIGHTprog_s.elem(); /♦This is the "close enough" term to prevent overshooting*/ MULTR = rightf+ .1; //left scwtal = sc_wta A LWEIGHTS; LPAUSEproc = LPAUSE - scwtal.max(); LPAUSE1 = NSLstep (LPAUSEproc,250,0,300); lpauself= LPAUSE I.elemO; LPAUSE » NSLstep(FIXL,0.5,300,lpauself); TEST.elemO = LPAUSE.elem(); SCWTAPROCL = SCWTAPROC A LWEIGHTS; LCOORD = SCWTAPROCL.max(V1.425; lcoordprocf = LCOORD2proc.elem(); LCOORD2 = (5 - LCOORD)*LTRJGNB; lcoord2f = LCOORD2.elem(); LCOORD2proc » NSLstep(LCOORD2,0.1,lcoord2procl,lcoord2f); dl = DELTAL.elemO; DELTALB = NSLstep(DELTAL,0.1,0,1); COL = NSLsaturation (LRI,0,dJ+. 1,0,1); COL = COL * DELTALB; lcoordf=LCOORD2proc.eiem(); DL * LCOORD2proc - TEST; DAL = NSLstep(DL,-l,5,lcoordf); dalk a DAL.elemO; LEFTprog = NSLsaturation (COL,0,1,dalk-1,4); LEFTprog s = NSLsigma(LEFTprog,0,4,0,8); leftf = (int) LEFTprog_s.elem(); MULTL = leftf + . 1; scwtau - sc_wta A UWEIGHTS; UPAUSEproc = UPAUSE - scwtau.max(); UPAUSE1 = NSLstep (UPAUSEproc.250,0,300); upauself = UPAUSE I.elemO; UPAUSE = NSLstep(FIX,0.5,300, upauself); SCWTAPROCU = SCWTAPROC A UWEIGHTS; UCOORD = SCWTAPROCU.maxO/l .425; ucoord2procf = UCOORD2proc.elem(); UCOORD2 = (5 - UCOORD)* UTRIGNB; ucoord2f = UCOORD2.elem(); 78 UCOORD2proc = NSLstcp(UCOORD2,0.1 ,ucoord2procf,ucoord2f); du = DELTAU.clem(); DELTAUB = NSLstep(DELTAU,0.1,0,1); COU = NSLsaturation (URI.0,du+. 1,0,1); COU = COU * DELTAUB; ucoordf=UCOORD2proc.clcm(); DU = UCOORD2proc - UPAUSE; DAU = NSLstcp(DU,-l,5,ucoordf); dauk = DAU.elem(); UPprog = NSLsaturation (COU,0,1,dauk-1,4); upf = (int) UPprog.elemO; MULTU = upf + . 1; //down sew tad = sc_wta A DWEIGHTS; DPAUSEproc = DPAUSE - scwtad.max(); DPAUSE1 = NSLstep (DPAUSEproc.250,0,300); d pauself- DPAUSEl.elem(); DPAUSE * NSLstep(FIX,0.5,300,dpauself); SCWTAPROCD = SCWTAPROC A DWEIGHTS; DCOORD = S CWT APROCD. max ()/l .425; dcoord2procf = DCOORD2proc.elem(); DCOORD2 = (5 + DCOORD)*DTRIGNB; dcoord2f = DCOORD2.elem(); DCOORD2proc = NSLstep(DCOORD2,0.1,dcoord2procf,dcoord2f); dd = DELTAD.elem(); DELTADB = NSLstep(DELTAD,0.1,0,1); COD = NSLsaturation (DRI,0,dd+. 1,0,1); COD = COD * DELTADB; dcoordf=DCOORD2proc.elem(); DD = DCOORD2proc - DPAUSE; DAD = NSLstep(DD1 -l,5,dcoordf); dadk = DAD.elemO; DOWNprog = NSLsaturation (COD,0,1,dadk-1,4); downf = (int) DOWNprog.elem(); MU LTD = downf + . 1; ) RUN_MODULE(saccade_BUN) { MULTMATRIXR = MULTMATRDCR.set_col(MULTR,rightO; MULTMATRIXL = MULTMATRIXL.set_col(MULTL,leftf); MULTMATRIXU * MULTMATRDCU.set_row(MULTU,upf); MULTMATRDCD = MULTMATRIXD. se t_ro w(MULTD,down f); /♦If the activity is in the fixation zone, the pause are activated*/ RPAUSE = NSLstep(RIGHTprog,4.1,300,0); LPAUSE ss NSLstep(LEFTprog,3.9,0,300); 79 DPAUSE = NSLstcp(DOWNprog,4.1,300,0); UPAUSE = NSLstep(UPprog,3.9,0,300); /♦This section determines if the vertical component is up or down*/ signal = UPAUSE + DPAUSE; up = UPAUSE.elemO; dp = DPAUSE.elemf); signal u = NSLstep(up,299,l,0); signald = NSLstep(dp,299,1,0); signaluf = signalu.elem(); signaldf = signald.elem(); signalu = NSLstep(signal,S99,signaJuf,l); signald = NSLstep(signal,599,signaldf,l); MULTMATRIXUR = MULTMATRDCRA (MULTMATRIXU * signalu); MULTMATR1XDR = MULTMATREXR'XMULTMATRIXD * signald); MULTMATRIXTR = MULTMATRDCUR + MULTMATRIXDR; MULTMATRDCFR « NSLstep(MULTMATRDCTR.0.01,0,l); DlFF.eq(scbunr,P.elem(scbun_tm)) = -scbunr + MULTMATRDCFR; SCBUNR = scbunr; MULTMATRDCUL = MULTMATRIXLA (MULTMATRIXU * signalu); MULTMATRDCDL = MULTMATRIXLA (MULTMATRDCD * signald); MULTMATRDCTL = MULTMATRDCUL + MULTMATRDCDL; MULTMATRDCFL = NSLstcp(MULTMATRDCTL.0.01,0.1); DIFF.eq(scbunl,P.elem(scbun_tm)) = -scbunl + MULTMATRDCFL; SCBUNL = scbunl; ) RUN_MODULE(saccade thal) ( //I***.,**********************************,****************************// //The thalamus layer thal_mcm is involved in the memory loop. It gets an excitatory // //projection from the FEFmem layer and an inhibitory projection from the SNRmem // //layer. It also receives an inhibitory projection from the SC_Delay layer, i.e. so that // //residual activity in the SC is not perceived as memory. The center element is set to 0 // //so that the fixation point is not remembered. // //♦♦I****,*****,*.***,******,****************#**************,***,*****♦// DIFF.eq(thal_mem,P.elem(thal_mem_tm)) = - thal_mem + P.elem(thaI_memJc3)*FEFmem - P.elem(thal_mem_k 1 )* SNRmem - P.elem(thal_mem_k2)*(M2 *SC_Delay); thal_mem.elem(4,4) = 0; // the " - FOVEA" term - so we don't // "remember" the fixation point } RUN_MODULE(saccade THAL) ( 80 //The NSLsigma function is used to determine the firing rate of the Thmem layer from // //it's membrane potential. if THmem = NSLsigma(thaJ_mem,P.elem(THmem_xl),P.elem(THmem_x2), P.elem(THmem_y 1 ),P.elcm(THmem_y2)); RUN_MODULE(saccadc_SPATIO_TEMPORAL_TRANS) { //♦a*******************.*#*********************************************// i f The TOPO arrays are arranged so that the elements in the opposite half of their spec* // //tnim are zero. So, the right half of the LTOPO array is zero, etc. The first element to // //the left of center in the LTOPO array is 1.425 and is incremented with increasing ec- // //ccntricity. // //♦a*****************************,*********,********,******************// LTOPO.elemfO) = 5.7; LTOPO.elem (l) = 4.275; LTOPO.elem(2) = 2.85; LTOPO.elem(3) = 1.425; RTOPO.elem(5)= 1.425; RTOPO.elem(6) = 2.85; RTOPO.elem(7) = 4.275; RTOPO.elem(8) = 5.7; UTOPO.elem(O) = 5.7; UTOPO.elem(l) = 4.275; UTOPO.elem(2) * 2.85; UTOPO.elem (3)= 1.425; DTOPO.elem(5)= 1.425; DTOPO.elem(6) * 2.85; DTOPO.elem(7) = 4.275; DTOPO.elem(8) = 5.7; } RUN_MODULE(saccade_BRAINSTEM_LAYERS) { //The WEIGHTS and the STM matrices are generated from the TOPO arrays. They are// //then used to disintegrate the spatial target representation into directional components // //and even into temporal signals, as described above. // LWEIGHTS = NSLrow vec_to_mat(LWEIGHTS ,LTOPO); R WEIGHTS = NSLrow_vec_to_mat(RWEIGHTS,RTOPO); UWEIGHTS = NSLcol_vec_to_mat(UWEIGHTS,UTOPO); 81 DWEIGHTS = NSLcol_vec_to_mat(DWEIGHTS,DTOPO); LSTM = P.elem(LSTM_K 1) *NSLrow_vec_to_mat(LSTM,LTOPO); RSTM = P.elem(RSTM_K 1 )*NSLrow_vcc_to_mat(RSTM,RTOPO); USTM = P.eIem(USTM_Kl)*NSLcoLvcc_to_mat(USTM,UTOPO); DSTM * P.elem(DSTM_K 1 )*NSLcol_vcc_to_mat(DSTM,DTOPO); } 82 References Arai, K., Keller, E. L., and Edelman, J. A. (1994): Two-dimensional Neural Network Model of the Primate Saccadic System. In: Neural Networks, 1994. Arbib, M. A. (1989): The Metaphorical Brain 2: Neural Networks and Beyond. Wiley- Interscience. Dominey, P. F. (1993): Models of Spatial Accuracy and Conditional Behavior in Oculomotor Control. Doctoral dissertation, Comp. Sci., USC. Dominey, P. F., Arbib, M. A. (1992): A Cortico-Subcortical Model for Generation of Spatially Accurate Sequential Saccades. Cerebral Cortex, 2, 153-175. Didday, R. L., Aibib, M. A. (1975): Eye Movements and Visual Perception: A "Two Visual System" Model. Int. J. Man-Machine Studies, 7, 547-569. Droulez, J., and Berthoz, A. (1991): A Neural Network Model o f Sensoritopic Maps with Predictive Short-term Memory Properties. Nat. Acad. Sci., USA, 88, 9653-9657. Duhamel, Colby, and Goldberg (1992): The Updating of the Representation of Visual Space in Parietal Cortex by Intended Eye Movements. Science, 255,90-92. Lefevre, P., and Galiana, H. L. (1992): Dynamic Feedback to the Superior Colliculus in a Neural Network Model of the Gaze Control System. Neur. Netw., 5, 871-890. Munoz, D. P., Guitton, D., and Pelisson, D. (1991a): Control o f Orienting Gaze Shifts by the Tectoreticulo Spinal System in the Head-free Cat. J. Neurophys, 66, 1642-1666. Munoz, D. P., Pelisson, D., Guitton, D. (1991b): Movement of Neuronal Activity on the Superior Colliculus Motor Map During Gaze Shifts. Science, 251, 1358-1360. Munoz, D. P. and Wurtz, R. H. (1993): Fixation Cells in Monkey Superior Colliculus. J. Neurophys., 70, 559-575. Optican, L. M. (1994): Control of Saccade Trajectory by the Superior Colliculus. In: Contemporary Ocular Motor and Vestibular Research: A tribute to David A. Robinson. Fuchs, Brandt, Buttner, and Zoe (Eds.). Ottes, F. P., Van Gisbergen, J. A. M., and Eggermont, J. J. (1986): Visuomotor Fields of the Superior Colliculus: a Qualitative Model. Vision Res., 26, 857-873. Pellison, D., Guitton, D., and Munoz, D. P. (1991): Superior Colliculus Feedback Control of Gaze Shift in the Head-free Cat. In: Oculomotor Control and Cognitive Processes. Schmidt and Zambarbieri (Eds.) Elsevier Science Publishers. 83 Robinson, D. A. (1972): Eye Movements Evoked by Collicular Stimulation in the Alert Monkey. Vision Res., 12, 1795-1808. Robinson, D. A. (1975); Oculomotor Control Signals. In: Basic Mechanisms of Ocular Motility and their Clinical Implications. Lennerstrand and Bachy-Rita (Eds.). Oxford: Pergamon Press. Schiller, P. H. and Sandell, J. H. (1983): Interactions Between Visually and Electrically Elicited Saccades before and after Superior Colliculus and Frontal Eye Field Ablations in the Rhesus Monkey. Exp. Brain Res., 49, 381-392. Schlag-Rey, M., Schlag, J., and Shook, B. (1989): Interactions Between Natural and Electrically Evoked Saccades. Exp. Brain Res., 76, 537-547. Scudder, C. A. (1988): A New Local Feedback Model of the Saccadic Burst Generator. J. Neurophys., 59, 1455-1475. Sparks, D. L. (1986): Translation of Sensory Signals into Commands for Control of Saccadic Eye Movements: Role of Primate Superior Colliculus. Phys. Rev., 66, 118- 169. Sparks, D. L. and Mays, L. E. (1983): Spatial Localization of Saccade Targets. J. Neurophys., 49, 45-63. Van Gisbergen, J. A. M. and Van Opstal, A. J. (1994): The Collicular Contribution to Visuo-motor Transformations Viewed from a Modeling Perspective. In: Handbook of Brain Theory and Neural Networks. Arbib (Ed.) Van Opstal, A. J. (1994): Nonlinearities in the Saccadic System and Efferent Feedback to the Collicular Motor Map. In: Information Processing Underlying Gaze Control, Pergamon Press. Van Opstal, A. J., and Kappen, H. (1993): A Two-dimensional Ensemble Coding Model for Spatial-temporal Transformation of Saccades in Monkey Superior Colliculus. Network, 4, 19-38, Waitzman, D. M., Ma, T. P., Optican, L. M„ Wurtz, R. H. (1988): Superior Colliculus Neurons Provide the Saccadic Motor Error Signal. Exp. Brain Res., 2,649-652. INFORMATION TO USERS This manuscript has been reproduced from the microfilm master. UMI films the text directly from the original or copy submitted. Thus, some thesis and dissertation copies are in typewriter face, while others may be from any type of computer printer. The quality of this reproduction is dependent upon the quality of the copy submitted. Broken or indistinct print, colored or poor quality illustrations and photographs, print bleedthrough, substandard margins, and improper alignment can adversely affect reproduction. In the unlikely event that the author did not send UMI a complete manuscript and there are missing pages, these will be noted. Also, if unauthorized copyright material had to be removed, a note will indicate the deletion. Oversize materials (e.g., maps, drawings, charts) are reproduced by sectioning the original, beginning at the upper left-hand corner and continuing from left to right in equal sections with small overlaps. Each original is also photographed in one exposure and is included in reduced form at the bade of the book. Photographs included in the original manuscript have been reproduced xerographically in this copy. Higher quality 6" x 9" black and white photographic prints are available for any photographs or illustrations appearing in this copy for an additional charge. Contact UMI directly to order. A Bell & Howell Information Company 300 Norm Zeeo Road Ann Arbor. M l 48106- 1346 USA 313/761-4700 800.521-0600 UMI Number: 1376502 Copyright 1995 by Qamar, Osman Mohammad All rights reserved. UMI Microfora 1376502 Copyright 1995, by UMI Coapany. All rights reserved. This aicrofora edition is protected against unauthorized copying under Title 17, United States Code. UMI 300 North Zeeb Road Ann Arbor, Ml 48103 
Asset Metadata
Creator Qamar, Osman Mohammad (author) 
Core Title A proposed role for the superior colliculus within the feedback loop of the brainstem saccade generator 
Contributor Digitized by ProQuest (provenance) 
School School of Engineering 
Degree Master of Science 
Degree Program Biomedical Engineering 
Degree Conferral Date 1995-05 
Publisher University of Southern California (original), University of Southern California. Libraries (digital) 
Tag biology, neuroscience,engineering, biomedical,OAI-PMH Harvest 
Language English
Permanent Link (DOI) https://doi.org/10.25549/usctheses-c18-4015 
Unique identifier UC11357582 
Identifier 1376502.pdf (filename),usctheses-c18-4015 (legacy record id) 
Legacy Identifier 1376502-0 
Dmrecord 4015 
Document Type Thesis 
Rights Qamar, Osman Mohammad 
Type texts
Source University of Southern California (contributing entity), University of Southern California Dissertations and Theses (collection) 
Access Conditions The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the au... 
Repository Name University of Southern California Digital Library
Repository Location USC Digital Library, University of Southern California, University Park Campus, Los Angeles, California 90089, USA
Tags
biology, neuroscience
engineering, biomedical
Linked assets
University of Southern California Dissertations and Theses
doctype icon
University of Southern California Dissertations and Theses 
Action button