___________________________________________________________________________________________________________________ Immediate & Delayed Memory Task (IMT/DMT) - Testing Session (Bulgarian Version) ___________________________________________________________________________________________________________________ Script Author: David Nitz (dave@millisecond.com) for Millisecond Software, LLC last updated: 07-20-2023 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC Script Copyright © 07-20-2023 Millisecond Software Bulgarian Translation generously shared by Dr. Jasmin Vassileva ___________________________________________________________________________________________________________________ BACKGROUND INFO ___________________________________________________________________________________________________________________ This script implements a practice session for the Immediate & Delayed Memory Task (IMT/DMT) described in: Dougherty, D.M., Marsh, D.M., and Mathias, C.W. (2002). Immediate and Delayed Memory Tasks: A computerized measure of memory, attention, and impulsivity. Behavior Research Methods, Instruments, and Computers, 34, 391-398. The IMT/DMT was developed to support the systematic study of sustained attention, working memory, and impulsivity in higher functioning populations. It provides an alternative to the Continuous Performance Test (CPT). ___________________________________________________________________________________________________________________ TASK DESCRIPTION ___________________________________________________________________________________________________________________ Participants view a steady stream of 5-digit (default) numbers and are asked to click the Mouse button if the current target number is identical to the one before it. 2 slightly different conditions: A) Delayed: the target numbers are followed by three distractor numbers. The distractor numbers are always the same number (12345). B) Immediate: target numbers follow target numbers immediately. No distractors are used. ___________________________________________________________________________________________________________________ DURATION ___________________________________________________________________________________________________________________ the default set-up of the script takes appr. 23 minutes to complete ___________________________________________________________________________________________________________________ DATA OUTPUT DICTIONARY ___________________________________________________________________________________________________________________ The fields in the data files are: (1) Raw data file: 'imtdmtTestRaw*.iqdat' (a separate file for each participant) build: The specific Inquisit version used (the 'build') that was run computer.platform: the platform the script was run on (win/mac/ios/android) date, time: date and time script was run subject, group, with the current subject/groupnumber session: with the current session id blockCode, blockNum: the name and number of the current block (built-in Inquisit variable) trialCode, trialNum: the name and number of the currently recorded trial (built-in Inquisit variable) Note: trialNum is a built-in Inquisit variable; it counts all trials run; even those that do not store data to the data file such as feedback trials response: the participant's response (scancode of response buttons) correct: accuracy of response: 1 = correct response; 0 = otherwise latency: the response latency (in ms); measured from: onset of target imtBlockCount: Number of IMT blocks run dmtBlockCount: Number of DMT blocks run. (2) Summary data file: 'imtdmtTestSummary*.iqdat' (a separate file for each participant) inquisit.version: Inquisit version run computer.platform: the platform the script was run on (win/mac/ios/android) startDate: date script was run startTime: time script was started subjectId: assigned subject id number groupId: assigned group id number sessionId: assigned session id number elapsedTime: time it took to run script (in ms); measured from onset to offset of script completed: 0 = script was not completed (prematurely aborted); 1 = script was completed (all conditions run) nDigits: Number of digits for stimuli. Valid range is 2-7. Default is 5. Default is "1234567". The distractor string will automatically be cropped to the correct length as specified by nDigits. imt: imtTotalCorrectDetections: Total number of correct detections across all IMT blocks. imtNTargetTrialsTotal: Total number of Target trials across all IMT blocks. imtCorrectDetectionsPctTotal: Computes the percentage of correct detections across all IMT blocks. imtTotalCommissionErrors: Total number of Commission errors across all IMT blocks. imtNCatchTrialsTotal: Total number of Catch trials across all IMT blocks. imtCommissionErrorsPctTotal: Computes the percentage of Commission errors across all IMT blocks. imtTotalFillerErrors: Total number of Filler errors across all IMT blocks. imtNFillerTrialsTotal: Total number of Filler trials across all IMT blocks. imtFillerErrorsPctTotal: Computes the percentage of Filler errors across all IMT blocks. imtMeanTargetLatencyTotal: Computes the mean RT for responses to Target stimuli across all IMT blocks. imtMeanCatchLatencyTotal: Computes the mean RT for responses to Catch stimuli across all IMT blocks. imtHr: Computes the hit-rate across all IMT blocks. imtFr: Computes the false-alarm-rate across all IMT blocks. imtDPrime: Computes d' for the IMT (parametric measure of discriminability). imtAPrime: Computes ß (beta) for the IMT (parametric measure of bias). imtBeta: Computes A' for the IMT ("nonparametric" measure of discriminability). imtBd: Computes B''d for the IMT ("nonparametric" measure of bias; cf. Donaldson, 1992). dmt: dmtBlockCount: Number of DMT blocks run. dmtTotalCorrectDetections: Total number of correct detections across all DMT blocks. dmtNTargetTrialsTotal: Total number of Target trials across all DMT blocks. dmtCorrectDetectionsPctTotal: Computes the percentage of correct detections across all DMT blocks. dmtTotalCommissionErrors: Total number of Commission errors across all DMT blocks. dmtNCatchTrialsTotal: Total number of Catch trials across all DMT blocks. dmtCommissionErrorsPctTotal: Computes the percentage of Commission errors across all DMT blocks. dmtTotalFillerErrors: Total number of Filler errors across all DMT blocks. dmtNFillerTrialsTotal: Total number of Filler trials across all DMT blocks. dmtFillerErrorsPctTotal: Computes the percentage of Filler errors across all DMT blocks. dmtTotalDistractorErrors: Total number of Distractor errors across all DMT blocks. dmtNDistractorTrialsTotal: Total number of Distractor trials across all DMT blocks. dmtDistractorErrorsPctTotal: Computes the percentage of Distractor errors across all DMT blocks. dmtMeanTargetLatencyTotal: Computes the mean RT for responses to Target stimuli across all DMT blocks. dmtMeanCatchLatencyTotal: Computes the mean RT for responses to Catch stimuli across all DMT blocks. dmtHr: Computes the hit-rate across all DMT blocks. dmtFr: Computes the false-alarm-rate across all DMT blocks. dmtDPrime: Computes d' for the DMT (parametric measure of discriminability). dmtAPrime: Computes ß (beta) for the DMT (parametric measure of bias). dmtBeta: Computes A' for the DMT ("nonparametric" measure of discriminability). dmtBd: Computeds B''d for the DMT ("nonparametric" measure of bias; cf. Donaldson, 1992). Parameter Settings used: taskType: 1 = Run IMT only 2 = Run DMT only 3 = Run IMT -> DMT alternatingly 4 = Run DMT -> IMT alternatingly Default is 3. nBlocksPerTask: Number of blocks per task. I.e., with taskType=3 and nBlocksPerTask=2, there will be 2 IMT blocks and 2 DMT blocks in alternating order. Defaults: For taskType=1 and taskType=2, nBlocksPerTask should be set to 4. For taskType=3 and taskType=4, nBlocksPerTask should be set to 2. targetProbability: Default is 33. catchProbability: Default is 33. fillerProbability: Default is 34 (100-targetProbability-catchProbability) target-, catch- and fillerProbability *must* add up to 100! !!! IMPORTANT NOTICE !!! * The above probabilities only apply to individual trials. * They *do not* represent presentation probabilities across a session! * This is an important consideration when adjusting target and catch probabilities * because a filler stimulus always follows a target or catch stimulus to prevent * successive target or catch trials. * Additionally, the first stimulus in a testing block will always be a novel filler stimulus. * As a consequence, the actual percentage of trials for each stimulus type across an * entire session can be expected to be approx. *half* of the respective Probability value * specified. * If needed, exact (empirical) probabilities for a given may be calculated based on the * recorded (raw) data. distractor: Type of distractor. Valid options are "1234567" and "0000000". stimulusDuration: Display duration of digit stimulus. Default is 2000ms. blackoutDuration: Blackout duration after stimulus display. Default is 2000ms. blockDuration: Duration of a single task block in ms. Default is 75000ms restDuration: Duration of rest period between task blocks in ms. Recommended values range between 15000 and 30000. restDuration can be set to 0 to run blocks without any breaks between them. Default is 15000ms Additional Note: In Inquisit Lab, a screenshot can be saved any time a participant is presented a performance summary for the current block. To do so, go to trial.dmtSummaryTrial/trial.imtSummaryTrial/ ___________________________________________________________________________________________________________________ EXPERIMENTAL SET-UP ___________________________________________________________________________________________________________________ Experimenter can select via parameters.taskType which conditions (and in which order) participant runs through the task(s) 1 => only IMT task (for practice: 2 repetitions) 2 => only DMT task (for practice: 2 repetitions) 3 => IMT task -> DMT task (for practice: once per task) 4 => DMT task -> IMT task (for practice: once per task) ___________________________________________________________________________________________________________________ STIMULI ___________________________________________________________________________________________________________________ target numbers (identical repeats): exact repeat of the last presented 5-digit number catch numbers (similar numbers): 5-digit numbers (default) that differ by only 1 digit from the previous number (and are not equal to distractor items) filler numbers (different numbers): randomly generated 5-digit numbers that differ in at least 2 digits from the previous number (and are not equal to distractor items) Numbers are presented black on white. Size can be set via parameters.stimSize ___________________________________________________________________________________________________________________ INSTRUCTIONS ___________________________________________________________________________________________________________________ This script implements a testing session for the IMTDMT task. Instructions are not included (instructions are included in IMTDMTPractice.iqjs). ___________________________________________________________________________________________________________________ EDITABLE CODE ___________________________________________________________________________________________________________________ check below for (relatively) easily editable parameters, stimuli, instructions etc. Keep in mind that you can use this script as a template and therefore always "mess" with the entire code to further customize your experiment. The parameters you can change are: stimSize Size of digit stimuli in canvas height proportion; Adjust to suit your display size / resolution. Dougherty et al. recommend a height of approx. 33 mm for all (digit) stimuli. targetProbability Default is 60. catchProbability Default is 0. fillerProbability Default is 40 (100-targetProbability-catchProbability) target-, catch- and fillerProbability *must* add up to 100! !!! IMPORTANT NOTICE !!! * The above probabilities only apply to individual trials. * They *do not* represent presentation probabilities across a session! * This is an important consideration when adjusting target and catch probabilities * because a filler stimulus always follows a target or catch stimulus to prevent * successive target or catch trials. * Additionally, the first stimulus in a testing block will always be a novel filler stimulus. * As a consequence, the actual percentage of trials for each stimulus type across an * entire session can be expected to be approx. *half* of the respective Probability value * specified. * If needed, exact (empirical) probabilities for a given may be calculated based on the * recorded (raw) data. nDigits Number of digits for stimuli. Valid range is 2-7. Default is 5. distractor Type of distractor. Valid options are "1234567" and "0000000". Default is "1234567". The distractor string will automatically be cropped to the correct length as specified by nDigits. blockDuration Duration of a single task block in ms. Default is 300000 restDuration Duration of rest period between task blocks in ms. Recommended values range between 15000 and 30000. restDuration can be set to 0 to run blocks without any breaks between them. Default is 30000ms stimulusDuration Display duration of digit stimulus. Default is 500ms. blackoutDuration Blackout duration after stimulus display. Default is 500ms. taskType 1 = Run IMT only 2 = Run DMT only 3 = Run IMT -> DMT alternatingly 4 = Run DMT -> IMT alternatingly Default is 3. nBlocksPerTask Number of blocks per task. I.e., with taskType=3 and nBlocksPerTask=2, there will be 2 IMT blocks and 2 DMT blocks in alternating order. Defaults: For taskType=1 and taskType=2, nBlocksPerTask should be set to 4. For taskType=3 and taskType=4, nBlocksPerTask should be set to 2. !!! THESE VARIABLES CAN BE EDITED IN THIS SCRIPT BUT ARE FIXED IN THE ORIGINAL IMTDMT PROGRAM. minLatency: the minimum latency that is accepted for a true response (default: 100ms) dmtNDistractors: number of consecutive distractor trials (default: 3) minhDist: minimum number of digits that need to differ between a new filler stimulus and a previous stimulus (default: 2) Debugging Parameter: showdebuginfo: 1 = displays red debugging info on the screen; 0 = debugging info cannot be seen