a * Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1 A Computer-Based Laboratory 159 SOFTWARE ORGANIZATION Calibration Programs FILMAN, Data Reduction Data Management Dato Display Reat —Time System Data Acquisition Stondard Data File MANOVA MDA Multivariate Statistics APPEND Fig. 2. Overall organization of the software system. ) During execution, whenever the clock “‘ticks,’’ whatever pro- cessing is going on is interrupted and, in effect, ‘‘put on hold.”” The real-time system then takes over and inspects an internal list to determine whether any events are scheduled to occur. If any are found, the subroutines associated with these events are executed in the order specified by the event priority. Then, following the pro- cessing of any scheduled events, execution of the interrupted pro- gram may resume. This clock-driven priority hierarchy assures accurate timing for critical events, while allowing several overlap- ping processes to share the computer as they need it. It thus permits maximally efficient use of the machine. By contrast, in most existing systems the user requests a service such as data sampling and then must wait idle until the service is completed and control returns to his program, even if the service itself is only using the machine intermittently while it is active (see, e.g., Don- chin and Heffley, 1975). These principles govern real-time program execution not only in the PDP-11, but also in the downstairs microcomputer which oper- ates partly independently and in parallel. Whenever the clock ‘‘ticks,’’ the 8085 processor is also activated. Normally at this point the conversion of the physiology to digital form is accom- 5 plished and then the results transferred to the PDP-11 via the digital multiplexer and DRII-C. In addition, however, the 8085 may cause other events (so-called ‘‘remote events’’) to occur. These remote events are similar to the events executed at the PDP-11 and may include (in addition to the A to D conversion event) the driving of feedback devices and/or triggering the RNG, for example. When running an experimental protocol, before the experiment itself begins, the PDP-11 loads the 8085 (via the auxil- Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1
. Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1 160 Journal of the American Society for Psychical Research iary serial port) with the proper program data to execute the remote events required by the particular experiment. Prior to this time, the remote events (which are really 8085 assembly language sub- routines) have been written and compiled in proper format using a - cross-assembler available on the PDP-11. Thus, although the 8085 may be used as a “‘stand-alone’’ computer, all program develop- ment, storage, and execution is actually handled on the PDP-11. Auxiliary subroutines provided by the real-time system allow FORTRAN access to various parts of the LPS such as the analog and digital input-output facilities, LED display, and relays. An- other important group of routines is concerned with the formation and use of queues, or circular data buffers. This useful data struc- ture (analogous in operation to the ticket line at the theatre in that the data enter the queue at one end and are removed from the other) allows us to maintain a continuously updated record of physiological data from the immediate past. This is particularly important when we want to look at physiological patterns preced- ing some occurrence whose timing is not known in advance—for example, a self-initiated response in an ESP task. Our experience with these facilities so far suggests that they can be effectively used by persons with moderate skill in FORTRAN, and that initial programming time for new experiments will typi- cally range between a few hours and a few days, even for quite intricate experiments. Also, once the basic structure of an experi- mental control program is written, modifications are usually quite easy to make, thus reducing the effort involved in ‘‘shaking down’’ a new experimental protocol. (Further details of the real-time sys- tem are given in Appendix 3.) B. Interactive Data Management, Data Reduction, and Statistical Analysis System This part of the system is written almost entirely in FORTRAN, and thus is relatively machine-independent and exportable. It is designed to allow users to process data from virtually any kind of experiment (although many of its facilities are specialized for psychophysiological research and would not be as useful in other | applications), and demands roughly the same order of user sophis- tication required for effective use of commercially distributed ‘“‘canned”’ statistical packages such as SAS or BMD. A key concept underlying the generality of the system i% that of the standard file format (details are given in Appendix 4). Real- time programs are normally designed to write their output directly in the standard form. All subsequent processing is then carried out Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1
——— — —————— ry * . , Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1 A Computer-Based Laboratory 161 by programs which read standard-file inputs and (optionally) write standard-file outputs. Data files in standard form are self-describing—that is, the actual data records are preceded by header records which describe the - structure and content of the file. In fact, only the very first record q is fixed in structure, and by reading it the system learns enough to be able to read correctly the whole remainder of the file. Thus, a great variety of data files can be accommodated within a single uniform system of data management and data analysis routines. Individual data records themselves have two main parts—the actual data-points (which might be the values of digitalized physi- ological samples, estimates of EEG power spectra, or any of a wide variety of other possibilities), and identification information. Iden- tification information is carried in what we call grouping-variables, which are in effect much like factors or classification-variables in the analysis-of-variance and experimental-design sense. To illus- trate, if we think of an ESP experiment as consisting of a series of trials, then each trial can be categorized in various ways—for ‘example, by what target was generated, what response was made, and whether the response was a hit or a miss. This kind of infor- mation is stored in the grouping-variables. Another important aspect of data-records is that they are or- ganized into sets to reflect the likely possibility of multiple-channel physiological recording. To continue with our illustrative experi- ment, suppose we recorded six channels of physiology during a short period prior to each response. In that case, each ESP trial would be represented in the raw data file by a record-set consisting of six data records, one for each physiological channel. Apart from channel number, the grouping-variable values would be identical within each record-set, but the data-values would differ from rec- ord to record depending on what activities were occurring in the corresponding physiological leads. Data files arising from a non- physiological experiment would of course typically have. only one channel, and the data values would be those of whatever dependent variables were measured in the experiment. The primary instrument for management, display, and analysis of data is a master program called FILMAN. FILMAN processes a - a standard input file by applying one each of three categories of routines—routines for record-set selection, routines for operating on grouping-variables, and routines for operating on data-points. The system contains a large basic set of generally useful routines (described in Appendix 5), and new ones for special purposes can fairly easily be added. During an initialization phase, FILMAN first asks for an input Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1
Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1 : * . 162 Journal of the American Society for Psychical Research data file and then requests users to specify one routine from each of the three categories to be used in processing that file. It also requests users to specify which channels they wish to process, and which data-points within channels. FILMAN then loads the desired routines from the disk and begins to process the input file one record-set at a time. If the chosen record-set selection routine ’ determines that the current record-set is to be processed, then FILMAN executes the selected grouping-variable and data-point operations for the selected channels and data points.’! Depending on which point-processing routine was selected, an output data file may also be written; if so, it is itself a standard file and hence accessible for further processing, either by FILMAN itself or by other routines such as the statistical analysis programs. We remark here that the analysis of EEG data in particular is a very complex. and still rather poorly understood subject. There are really two aspects to the analysis of task- or state-related EEG differences: first, feature-extraction, or reduction of the raw EEG to some hopefully more compact and physiologically revealing repre- sentation; and second, pattern-recognition, or use of the extracted features to discriminate the relevant tasks or states. Within our system, these aspects are handled largely separately. All of the feature-extraction or data-reduction takes place in FILMAN. Holding no very fixed views at present concerning the relative merits of alternative feature-extraction methods, we have endowed FILMAN with the capacity to. apply most major techniques presently known or thought to be useful. These include in particu- lar spectral analysis (Adey, 1965, 1970; Bendat and Piersol, 1971; Dumermuth, 1973), period analysis (Klein, 1976a; Saltzberg, 1973), and analysis of raw EEG amplitude distributions (Adey, 1970; Elul, 1969). The pattern recognition part of the problem is itself open to a vast variety of possible approaches, and may ultimately prove to be an important area of investigation in its own right (e.g., see Nilsson, 1965). For the present, however (and no doubt as a good first-order approximation to still more elaborate techniques that may come later), our statistical treatment of physiological data will be carried out within the framework of the multivariate general linear model (Morrison, 1967; Timm, 1975). In brief, this model absorbs all the familiar univariate statistical designs into one over- ‘| FILMAN uses a specially modified version of the FORTRAN overlay system, in which the load and execufe phases are separated. In this way the selected routines are loaded into specific regions of core at initialization time and then executed in place repeatedly, rather than having to be reloaded for each record-set in turn. Approved For Release 2003/09/16 : CIA-RDP96-00788R002000260002-1