Return to the Serial Reaction Time Task page
___________________________________________________________________________________________________________________	

									SERIAL REACTION TIME TASK
___________________________________________________________________________________________________________________	


Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com) for Millisecond Software, LLC
Date: 03-24-2016
last updated:  03-11-2020 by K. Borchert (katjab@millisecond.com) for Millisecond Software, LLC

Script Copyright © 03-11-2020 Millisecond Software

___________________________________________________________________________________________________________________
BACKGROUND INFO 	
___________________________________________________________________________________________________________________	
This script implements a sequenced serial reaction time task (with 4 different response buttons) based on 
several publications and the help of Dr. Maarten Immink:

Nissen, M. J., & Bullemer, P. (1987). Attentional requirements of learning: Evidence from performance measures.
Cognitive Psychology, 19, 1–32.

Reed, J. & Johnson, Peder (1994). Assessing Implicit Learning With Indirect Tests: Determining What Is Learned About Sequence Structure.
Journal of Experimental Psychology: LMC, 20, 585-594.

Abrahamse, E.L & Verwey, W.B. (2008). Context dependent learning in the serial RT task.
Psychological Research, 72:397–404.

Millisecond Software thanks Dr. Maarten Immink for his collaboration and assistance with this script!

___________________________________________________________________________________________________________________
TASK DESCRIPTION	
___________________________________________________________________________________________________________________	
Participants are presented 4 gray boxes in 4 possible screen positions and have to press 
a spatially corresponding response button as fast as possible once one of the boxes turns red.
The task is divided into a 
1) familiarization phase, involving a randomized order of stimulus presentation (default: 36 trials), 
2) 
a) pre-transfer sequence learning phase during which the screen position of the red box order of the stimulus presentation  
follows a predetermined (repeating) sequence (default: 12 blocks), 
b) a transfer phase, involving a new predetermined (repeating) sequence (default: 1 block) and 
c) a post-transfer phase, involving the re-introduction of the sequence (repeating) presented during learning (default: 1 block).
										  
___________________________________________________________________________________________________________________	
DURATION 
___________________________________________________________________________________________________________________	
the default set-up of the script takes appr. XXX minutes to complete
(if no task duration is provided, please contact Millisecond Software
(katjab@millisecond.com)

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

(1) Raw data file: 'serialreactiontimetask_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.
																
/phase:							"familiarization","learning", "transfer", "post-transfer"
/countTestBlocks:				counts the number of test blocks (training + transfer) run
/countLearningBlocks:			counts number of pre-transfer training blocks run
/countTransferBlocks:			counts number of transfer blocks run
/countpostTransferBlocks:		counts number of post transfer training blocks run 
/countTestTrials:				counts the test trials in a block (resets for each test block - does not count starter trials)
/countSequenceReps:				counts the number of sequence reps in a block (does not count starter trials)
/index:							helper variable to determine the next stim position 
/position:						1, 2, 3, or 4 => screen position of the stim (red box) from left to right
/stim_x:						the screen position of the stim (red box) in canvas width percentages

response:						the participant's response (scancode of response button)
correct:						the correctness of the response (1 = correct; 0 = incorrect)
latency: 						the response latency/reaction time (in ms); measured from onset of red box stimulus


(2) Summary data file: 'serialreactiontimetask_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)


Note: mean and median latencies are reported of correct responses only. Correct responses are correct responses
within the defined response window (default: 2000ms). Error Responses are either wrong responses within the response
window OR no responses (response window terminated).

/propCorrect_overall:			determines the overall proportion correct in learning, transfer and post-transfer trials
/meanRT_overall:				determines the overall mean latency (in ms) of correct responses in learning, transfer and post-transfer trials
/meadianRT_overall:				determines the overall median latency (in ms) of correct responses in learning, transfer and post-transfer trials

/propCorrect_Familiarization1-
/propCorrect_Familiarization3:	the proportion correct in Familiarization Block 1 - 3 (separate for each block)
									Note: if default number of Familiarization Blocks was increased, add corresponding values below
									and edit blocks and summary data accordingly
									
/propCorrect_Learning1-
/propCorrect_Learning12:		the proportion correct in Learning Block 1 - 12 (separate for each block)
									Note: if default number of Learning Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/propCorrect_Transfer1:			the proportion correct in Transfer Block 1
									Note: if default number of Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/propCorrect_postTransfer1:		the proportion correct in Post-Transfer Block 1
									Note: if default number of Post-Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/meanRT_Familiarization-
/meanRT_Familiarization3:		mean reaction time (in ms) of correct responses in Familiarization Block 1-3 (separate for each block)
									Note: if default number of Familiarization Blocks was increased, 
									add corresponding values below and edit blocks and summary data accordingly
									
/meanRT_Learning1-
/meanRT_Learning12:				mean reaction time (in ms) of correct responses in Learning Block 1-12 (separate for each block)
									Note: if default number of Learning Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/meanRT_Transfer1:				mean reaction time (in ms) of correct responses in Transfer Block 1
									Note: if default number of Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/meanRT_postTransfer1:			mean reaction time (in ms) of correct responses in Post-Transfer Block 1
									Note: if default number of Post-Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA

/medianRT_Familiarization-
/medianRT_Familiarization3:		median reaction time (in ms) of correct responses in Familiarization Block 1-3 (separate for each block)
									Note: if default number of Familiarization Blocks was increased, 
									add corresponding values below and edit blocks and summary data accordingly	
									
/medianRT_Learning1-
/medianRT_Learning12:			median reaction time (in ms) of correct responses in Learning Block 1-12 (separate for each block)
									Note: if default number of Learning Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/medianRT_Transfer1:				median reaction time (in ms) of correct responses in Transfer Block 1
									Note: if default number of Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA
									
/medianRT_postTransfer1:		median reaction time (in ms) of correct responses in Post-Transfer Block 1
									Note: if default number of Post-Transfer Blocks was increased, 
									add corresponding code under: sections VALUES/BLOCKS/DATA

___________________________________________________________________________________________________________________	
EXPERIMENTAL SET-UP 
___________________________________________________________________________________________________________________	

- 1 blocks of 36 Familiarization/Familiarization trials (number of blocks can be edited under Editable Parameters) 
with error feedback
- digit order of stimulus presentation is randomly determined with the constraint that successive positions are 
different (aka no immediate position repeats)
- break after each block - unless it's the last familiarization block

Learning and Transfer Phases:
- 12 Learning blocks of 120 learning trials each (12-item sequence repeated for 10 cycles)
	- each Learning block runs 10 repetitions of the learning sequence (see list.learning under Editable Lists)
	- break after each block (default: 30s; editable)
- 1 Transfer block of 120 learning trials using a slightly different sequence
	- each transfer block runs the transfer sequence (see list.transfer under Editable Lists)
	- break after each block (default: 30s; editable)
- 1 postTransfer block of 120 learning trials using the learning sequence
	- each postTransfer block runs 10 repetitions of the learning sequence (see list.learning under Editable Lists)
	- break after each block (default: 30s; editable) - unless it's the last 
	
Each block starts with presentation of 4 gray boxes before presentation of the stimulus for the first trial in each block. 
After a response, the next target is presented after a response-stimulus interval (default RSI is 50 ms; 
this can be edited under Editable Parameters). 
If error feedback is provided, feedback is provided immediately after the error response and is followed by the RSI.
	
___________________________________________________________________________________________________________________
STIMULI
___________________________________________________________________________________________________________________
4 gray boxes - size and screen location can be edited under Editable Parameters.
Note: Abrahamse & Verwey (2008), e.g., used a viewing distance of 50cm and the stimulus angle measured 2.3° × 2.0°

Position of targets (box turning red) can be edited under section Editable Lists

___________________________________________________________________________________________________________________	
INSTRUCTIONS 
___________________________________________________________________________________________________________________
are not original; edit 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:

Procedural Design:
/numberFamiliarizationBlocks:	number of familiarization blocks to run (default: 1); setting it to 0 will skip this block
/numberOfFamiliarizationTrials:	number of familiarization trials to run in a block (default: 36)

/numberLearningBlocks:			sets the number of pre-transfer training blocks (default: 12)
									Note: if default number is changed, summary variables might need to be edited (Go to section VALUES)
									
/numberTransferBlocks:			sets the number of transfer blocks (default: 1)
									Note: if default number is changed, summary variables might need to be edited (Go to section VALUES)
									
/numberpostTransferBlocks:		sets the number of post-transfer training blocks (default: 1)
									Note: if default number is changed, summary variables might need to be edited (Go to section VALUES)
									
/numberOfSequenceRepsPerBlock:	sets the number of sequence repetitions in each training/transfer block (default: 10)
						
/runErrorFeedback:				true = error feedback (incorrect & too slow) is presented during test trials
									false = error feedback (incorrect & too slow) is not presented during test trials
								
Interface: 0% at the far left of canvas - 100% far right of canvas
/pos1_x:							the first horizonal box position from the left in canvas width percentages 
/pos2_x:							the second horizonal box position from the left in canvas width percentages
/pos3_x:							the third horizonal box position from the left in canvas width percentages
/pos4_x:							the fourth horizonal box position from the left in canvas width percentages
/stimHeight:						height of the boxes in canvas height percentages (default: 5%)

Response Keys (from left to right):
/responsekey1:					the first response button ("V")
/responsekey2:					the second response button ("B")
/responsekey3:					the third response button ("N")
/responsekey4:					the fourth response button ("M")

Duration Paramters (in ms):
/responseWindow:				duration of response window (in ms) (default: 2000ms)
/RSI:							Response Stimulus Interval in ms (interval between response and presentation of next stimulus) (default: 50ms)
/feedbackDuration:    			duration (in ms) of feedback (default: 2000ms)								
/breakDuration:					the duration of the breaks (in ms) in between test blocks (default: 30000)