Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
Created: January 22, 2020
Last Modified: January 11, 2025 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements a Probabilistic Serial Reaction Time Task. The implemented procedure is based on Kaufman et al (2010).
Kaufman, S.B et al (2010). Implicit learning as an ability. Cognition, 116, 321–340.
25 minutes
Participants are presented 4 gray boxes arranged in a horizontal line and have to press a spatially corresponding response button as fast as possible once one of the boxes turns red. The sequence in which the box positions light up are controlled by two sequences: A and B. 85% of boxes follow sequence A; 15% of boxes follow sequence B. The transition btw. sequences respect the second-order conditionals of the upcoming sequence (see Kaufman et al, 2010, for an indepth discussion). The default task runs 8 test blocks of 120 trials each.
1. Practice: 20 practice trials (change under section Editable Parameters)
- 50% sequence A and 50% sequence B trials
- order is randomly determined
- error feedback is provided
- transitions btw. sequence A trials and sequence B trials respect the second-order conditionals
of the upcoming sequence (Explanation below)
2. Test: by default, this script runs 8 blocks with predetermined sequences of sequenceA and sequenceB trials
(see editable parameters for possible changes)
- each block runs 120 trials
- 85% of the trials are sequence A trials; 15% of trials are sequence B trials
- transitions btw. sequence A trials and sequence B trials respect the second-order conditionals
of the upcoming sequence (see Kaufman et al, 2010, for an indepth discussion)
Example:
sequence A: 1, 2, 1, 4, 3, 2, 4, 1, 3, 4, 2, 3 (see Kaufman et al, 2010)
sequence B: 3, 2, 3, 4, 1, 2, 4, 3, 1, 4, 2, 1 (see Kaufman et al, 2010)
If sequenceA has played the sequence '14' the next position would be '3' IF sequence A continued (14->3).
A switch to sequence B would play position '2' instead as '2' follows '14' in sequence B (14->2).
- after each block participants get a break of 30s (editable parameter)
4 gray boxes - size and screen location can be edited under Editable Parameters
are not original to Kaufman et al (2010); edit under section Editable Instructions
File Name: probabilisticsrt_summary*.iqdat
| Name | Description |
|---|---|
| inquisit.version | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| computer.touch | 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities |
| computer.hasKeyboard | 0 = no external keyboard detected; 1 = external keyboard detected |
| startDate | Date the session was run |
| startTime | Time the session was run |
| subjectId | Participant ID |
| groupId | Group number |
| sessionId | Session number |
| elapsedTime | Session duration in ms |
| completed | 0 = Test was not completed 1 = Test was completed |
| runFixedDesign | True (1): the script ran fixed (pre-determined) trial sequences for block1-block8 false (0): the script ran randomized trial sequences for each block |
| testPropSequenceA | The frequency of test trials in a block for sequence A |
| testPropSequenceB | The frequency of test trials in a block for sequence B practice trials run with 50% seqA/seqB |
Across All Test Blocks |
|
| propCorrectSeqA | Proportion correct responses for sequence A trials |
| meanCorrRTSeqA | Mean correct response time (in ms) for sequence A trials |
| propCorrectSeqB | Proportion correct responses for sequence B trials |
| meanCorrRTSeqB | Mean correct response time (in ms) for sequence B trials |
By Block 1-8 |
|
| propCorrect1SeqA | Proportion correct responses for sequence A trials in block1 |
| meanCorrRT1SeqA | Mean correct response time (in ms) for sequence A trials in block1 |
| propCorrect1SeqA | Proportion correct responses for sequence B trials in block1 |
| meanCorrRT1SeqA | Mean correct response time (in ms) for sequence B trials in block1 |
File Name: probabilisticsrt_raw*.iqdat
| Name | Description |
|---|---|
| build | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| computer.touch | 0 = device has no touchscreen capabilities; 1 = device has touchscreen capabilities |
| computer.hasKeyboard | 0 = no external keyboard detected; 1 = external keyboard detected |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| blockcode | The name the current block (built-in Inquisit variable) |
| blocknum | The number of the current block (built-in Inquisit variable) |
| trialcode | The name of the currently recorded trial (built-in Inquisit variable) |
| trialnum | The number of the currently recorded trial (built-in Inquisit variable) trialnum is a built-in Inquisit variable; it counts all trials run even those that do not store data to the data file. |
| runFixedDesign | True (1): the script ran fixed (pre-determined) trial sequences for block1-block8 false (0): the script ran randomized trial sequences for each block |
| testPropSequenceA | The frequency of test trials in a block for sequence A |
| testPropSequenceB | The frequency of test trials in a block for sequence B practice trials run with 50% seqA/seqB |
| blockCounter | Counts the number of blocks run (resets after practice) |
| trialCounterPerBlock | Counts the number of trials run in a block |
| sequence | "A" vs. "B": the sequence the current trial is running |
| listIndex | The item index of list.sequenceA/list.sequenceB that is currently selected |
| position | The position of the highlighted box that is selected by listIndex |
Dv |
|
| response | The participant's response (scancode of response buttons) 47 = V; 48 = B; 49 = N; 50 = M 57 = spacebar |
| correct | Accuracy of response: 1 = correct response; 0 = otherwise |
| latency | The response latency (in ms); measured from: onset of highlighted box |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
Design |
||
| runFixedDesign | True (default): the script runs fixed 'seqA/seqB' trial sequences for the test block (Note; fixed sequences were randomly determined) false: the script generates the 'seqA/seqB' trial sequences during runtime for each block if the fixed design is run this script will run 8 test blocks this script will run 120 trials per block this script will run 85% Sequence A trials and 15% Sequence B trials | true |
| numberOfPracticeBlocks | The number of practice blocks run | 1 |
| numberOfPracticeTrialsPerBlock | The number of practice trials per practice blocks; Kaufman et al (2010) did not specify a number | 20 |
Changes Only Matter If Parameters.Runfixeddesign Is Set To False |
||
| numberOfTestBlocks | The number of test blocks run | 8 |
| numberOfTestTrialsPerBlock | The number of test trials run in each block | 120 |
| testpropSequenceA | The probability of test trials that follow sequence A; this script uses the probabilities as frequencies | 0.85 |
| testpropSequenceB | The probability of test trials that follow sequence B; this script uses the probabilities as frequencies | 0.15 |
Ui: 0% At The Far Left Of Canvas - 100% Far Right Of Canvas |
||
| pos1X | The first (left) horizonal box position from the left in canvas width percentages | 35.5% |
| pos2X | The second horizonal box position from the left in canvas width percentages | 45.0% |
| pos3X | The third horizonal box position from the left in canvas width percentages | 55.0% |
| pos4X | The fourth (right) horizonal box position from the left in canvas width percentages | 65.0% |
| stimHeight | Height of the boxes in canvas height percentages\ | 7% |
Timing Parameters |
||
| getReadyDuration | Duration (in ms) of the get-ready-trial\ | 5000 |
| responseWindow | Duration of response window (in ms)\ | 2000 |
| rsi | Response Stimulus Interval in ms (interval between response and presentation of next stimulus)\ | 500 |
| feedbackDuration | Duration (in ms) of feedback\ | 2000 |
| breakDuration | The duration of the breaks (in ms) in between test blocks\ | 30000 |
Response Keys (From Left To Right, Qwerty Keyboard) |
||
| responseKey1 | "V" | |
| responseKey2 | "B" | |
| responseKey3 | "N" | |
| responseKey4 | "M" | |