Return to the Number Vigilance Test page
___________________________________________________________________________________________________________________	

										Number Vigilance Task
___________________________________________________________________________________________________________________	

Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 09-25-2017
last updated:  09-08-2020 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC

Script Copyright © 09-08-2020 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________
This script implements a computerized Number Vigilance Task, a measure of attention and cognitive control.
The Number Vigilance Task is used as a subtest of 
the Cognitive Drug Research Computerized Assessment System (COGRAS).
The Number Vigilance Task is a type of go/no go task with digits.

The implemented procedure is similar to the one published in:

Nicholl, C.G. et al (1995). The the Cognitive Drug Research Computerized Assessment System
in the evaluation of early dementia- is speed of the essence?
INTERNATIONAL JOURNAL OF GERIATRIC PSYCHIATRY, VOL. 10: 199-206

Adjustments to z-scores as described by:
Gregg, A. & Sedikides, C. (2010). Narcissistic Fragility:
Rethinking Its Links to Explicit and Implicit Self-esteem, Self and Identity, 9:2, 142-161 (p.148)


___________________________________________________________________________________________________________________
TASK DESCRIPTION	
___________________________________________________________________________________________________________________	
Participants view a stream of digits presented in the middle of the screen, one at a time.
A new digit is presented ~750ms (for a presentation rate of: 80 words/minute).
Whenever the digit is the same as the target digit (which is presented on the right of the screen
throughout the task), they have to press the Spacebar. Otherwise they are instructed to not do 
anything but stay vigilant and wait for the next digit.								  

___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. 3 minutes to complete

___________________________________________________________________________________________________________________	
DATA FILE INFORMATION 
___________________________________________________________________________________________________________________	
The default data stored in the data files are:

(1) Raw data file: 'numbervigilance_raw*.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
script.sessionid:					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. Thus, trialnum 
										may not reflect the number of main trials run per block. 
																			
values.digitType:					1 = target digit (current digit = target digit); 
									2 = foil digit (current digit <> target digit)
									
values.targetDigit:					the randomly selected target digit that is presented at the right of the screen
values.currentDigit:				the currently randomly selected digit that is presented in the center of the screen
response:							the participant's response (scancode of response button)
										57 => spacebar was pressed; 
										0 = no response
										
values.responseCategory:			"hit" (pressed spacebar for a target)
									"miss" (did not press spacebar for a target) = omission error
									"CR" (did not press spacebar for a nontarget) = correct rejection
									"FA" (pressed spacebar for a nontarget) = commission error	
									
correct:							accuracy of response: 
									1 = correct response; 
									0 = otherwise
									
latency: 							the response latency (in ms); measured from: onset of center digit


(2) Summary data file: 'numbervigilance_summary*.iqdat' (a separate file for each participant)*

computer.platform:					the platform the script was run on (win/mac/ios/android)
script.startdate:					date script was run
script.starttime:					time script was started
script.subjectid:					assigned subject id number
script.groupid:						assigned group id number
script.sessionid:					assigned session id number
script.elapsedtime:					time it took to run script (in ms); measured from onset to offset of script
script.completed:					0 = script was not completed (prematurely aborted); 
									1 = script was completed (all conditions run)
								
expressions.propCorrect:			overall proportion correct (across all test trials)									
parameters.nrTestTrials:			the number of test trials run (default: 100)
parameters.targetRate:				the proportion of targets (signals) during the test (and practice) (default: 25%)
list.hits.itemcount:				the number of target (signal) trials during the test

expressions.HITrate:				hitrate (across test trials that presented a target digit) = pressed spacebar for a target
expressions.FArate:					false alarm rate (across test trials that presented a foil digit) = pressed spacebar for a nontarget

Note: z-score calculations: adjustments (see Gregg & Sedikides, 2010, p.148)
If the hit rate / FA rate is 0 => 0.005 is used instead (aka 0.005 is added to the hit/FA rate)
IF the hit rate / FA rate is 1.0 => 0.995 is used instead (aka 0.005 is subtracted from the hit/FA rate)

z-score of Hit Rate:				z-score of hit rate
expressions.z_FArate:				z-score of false alarm rate

expressions.dprime:					d' = sensitivity index calculated as difference btw. z score of hit rate and z-score of false alarm rate
										=> Range (in this script): 
										-5.1516586840152740479 <= dprime <= 5.1516586840152740479 (=perfect performance)
										=> The higher the value, the better signals (=targets) were overall distinguished 
										from noise (=nontargets) and thus the better participant paid attention
										(d' = 0: chance performance; negative d-primes: participant treated nontargets as targets and targets as nontargets)

										
expressions.hitRT:					the mean hit latency (in ms)										
										
										
* separate data files: to change to one data file for all participants (on Inquisit Lab only), go to section DATA

___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	

Target Digit: is sampled randomly at the start of the script.
The same target is used for practice and test session.

1. Practice Block: (optional)
- number of practice trials can be set under section Editable Parameters (default: 20)
Note: if set to 0, the practice trials are skipped. Instructions automatically adapt.
- proportion of target trials can be set under section Editable Parameters (default: 25%)
- order of target and foil trials is random
- selection of foil digits is random with replacement
- SOA and digit presentation duration can be set under section Editable Parameters
(SOA: 1000ms; digit presentation duration: 1000ms)

2. Test Block:
- number of test trials can be set under section Editable Parameters (default: 100)
- proportion of target trials can be set under section Editable Parameters (default: 25%)
- order of target and foil trials is random
- selection of foil digits is random with replacement
- SOA and digit presentation duration can be set under section Editable Parameters
(SOA: 750ms; digit presentation duration: 750ms)

Trial Sequence: 
* target is presented throughout the blocks to the right on the screen
* each block starts with the target presented alone for duration SOA

current digit presentation (750ms), response window = SOA = 750ms ->current digit presentation

___________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
target = randomly determined digit from 0 to 9, presented in black font on the right side of the screen
current digit = digit from 0 to 9, presented in black font in the center of the screen
both digits are equal in size (size can be set under section Editable Parameters)
___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________	
provided by Millisecond Software - can be edited under section Editable Instructions

___________________________________________________________________________________________________________________	
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:

/digitSOA_practice:					the stimulus onset asynchrony (in ms) during practice trials (default: 1000ms)
											Note: participants have the entire SOA to respond
											
/digitPresentationTime_practice:	the presentation duration (in ms) of the current trial digit (default: 1000ms)
											Note: if digitPresentationTime_practice > digitSOA_practice, 
											it's automatically set to digitSOA_practice
											
/digitSOA_test:						the stimulus onset asynchrony (in ms) during practice trials (default: 750ms)
											Note: participants have the entire SOA to respond
											Note: 1 word/750ms => 80 words/minute
											
/digitPresentationTime_test:			the presentation duration (in ms) of the current trial digit (default: 750ms)
											Note: if digitPresentationTime_practice > digitSOA_practice, 
											it's automatically set to digitSOA_practice
											
/errorFeedbackDuration:				the duration (in ms) of the error feedback during practice (default: 5000ms)
/readyDuration:						the duration (in ms) of the 'get ready trial' (default: 5000ms)

/nrPracticeTrials:					the number of practice trials run (default: 20)
											Note: uses the same target: foil rate as the test
											Note: if set to 0, the practice session is simply skipped
											
/nrTestTrials:						the number of test trials run (default: 100)

/targetRate:						the proportion of targets during the test (and practice) (default: 25%)
											Note: the proportion of targets should result in an integer
											Example: 100 test trials * 0.25 targets = > 25 targets

/targetDigitSize:					the proportional size of the digits on screen (default: 20%)

Responsekeys:
/responseKey:						the response key (default: " " -> spacebar)