Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
Created: January 25, 2025
Last Modified: January 04, 2025 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements the Deary-Liewald Simple Reaction Time Task (DLS). The DLS is a basic simple reaction time task.
Deary, I. J., Liewald, D., & Nissan, J. (2011). A free, easy-to-use, computer-based simple and four-choice reaction time programme: The Deary-Liewald reaction time task. Behavior Research Methods, 43(1), 258–268. https://doi.org/10.3758/s13428-010-0024-1
1.5 minutes
Participants will see one white box. At random intervals an 'X' appears in it. As soon as they see the X, they are asked to press the response key.
(1) Keyboard Check (optional, see editable parameters): This script can be set to only run on devices with external keyboards
(2) Practice: 8 practice trials (editable)
(3) Test: 20 trials (editable)
(4) Norms*: collects age information and compares response times to published data (Deary et al, 2011, Appendix1)
Trial Sequence:
-> 1 white box in the center of screen
-> target (X) appears in randomly selected box 1000-3000ms after trialOnset (randomly determined delay)
-> X stays on until response (B)
Each trial concludes with a valid response (rt measured from onset of target >= minRT).
Script also notes if participants make anticipatory/early responses.
provided by Millisecond - can be edited under section 'Editable Stimuli'
provided by Millisecond - can be edited in script 'dls_instructions_inc.iqjs'
File Name: dls_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 |
| display.refreshRate | Vertical refreshrate of the current monitor (in Hz) |
| 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 = Test was not completed 1 = Test was completed |
| ageCohort | The entered age cohort 0 = <18 1 = 18-25 2 = 26-44 3 = 45-60 4 = 61-80 5 = >80 |
| trialCounter | The number of testtrials run |
| propCorrect | Prop correct responses |
| errors | Number of errors made |
| eRespCounter | Tracks the number of early responses during the test block (rt < minRT) excessive early responding might be considered a red flag |
| slowRespCounter | Tracks number of invalid rts during the test block (rt > maxRT) |
| percentileNote | Depends on ageCohort Group 0,5: "no empirical data available for this age group" Group 2: "based on intrapolated data" //intrapolated by Millisecond as the means of the data of the adjacent age cohorts => interpret with extra caution Group 1,3,4: "based on empirical data" +> Deary et al (2011), Appendix1 |
| meanCorrRTPercentile | "< 25" //meanCorrRT falls below the 25th percentile (faster than 75% of the age cohort) "within range" //value falls between the 25th and 75th percentile "> 75" //meanCorrRT falls above the 75th percentile (slower than 75% of the age cohort) "NA": no comp data available |
| sdCorrRTPercentile | "< 25" //sdCorrRT falls below the 25th percentile (less rt variability than 75% of the age cohort) "within range" // value falls between the 25th and 75th percentile "> 75" //sdCorrRT falls above the 75th percentile (more rt variability than 75% of the age cohort) "NA": no comp data available |
| errorPercentile | "< 25" //number of errors falls below the 25th percentile (fewer errors than 75% of the age cohort) "within range" // value falls between the 25th and 75th percentile "> 75" //number of errors falls above the 75th percentile (more errors than 75% of the age cohort) "NA": no comp data available |
Response Time Data (For Correct Responses) |
|
| medianCorrRT | Median response time (in ms) of correct responses |
| meanCorrRT | Mean response time (in ms) of correct responses |
| sdCorrRT | Standard deviation of correct response times (in ms) |
| skewCorrRT | Skewness of the distribution of correct response times uses Excel algorithm suggested interpretation -0.5 <= skew <=0.5 -> fairly symmetrical 0.5 < |skew| <= 1 -> moderately skewed |skew| > 1 -> highly skewed |
| kurtosisCorrRT | Measure of kurtosis of the distribution of correct response times (measure of the "tailedness" or "outlyingness" of a data distribution compared to the normal distribution) uses Excel algorithm Suggested Interpretation ~0: The distribution's tails are similar to those of a normal distribution > 0: The distribution is "heavy-tailed," meaning there are more extreme values (outliers) than in a normal distribution (more peaked) < 0: The distribution is "light-tailed," meaning there are fewer extreme values or outliers than in a normal distribution (flatter) |
Response Time Data (For Incorrect Responses) |
|
| medianIncorrRT | Median response time (in ms) of incorrect responses |
| meanIncorrRT | Mean response time (in ms) of incorrect responses |
| sdIncorrRT | Standard deviation of incorrect response times (in ms) |
| skewIncorrRT | Skewness of the distribution of incorrect response times uses Excel algorithm suggested interpretation -0.5 <= skew <=0.5 -> fairly symmetrical 0.5 < |skew| <= 1 -> moderately skewed |skew| > 1 -> highly skewed |
| kurtosisIncorrRT | Measure of kurtosis of the distribution of incorrect response times (measure of the "tailedness" or "outlyingness" of a data distribution compared to the normal distribution) uses Excel algorithm Suggested Interpretation ~0: The distribution's tails are similar to those of a normal distribution > 0: The distribution is "heavy-tailed," meaning there are more extreme values (outliers) than in a normal distribution (more peaked) < 0: The distribution is "light-tailed," meaning there are fewer extreme values or outliers than in a normal distribution (flatter) |
Response Time Data (For All Responses) |
|
| medianTotalRT | Median response time (in ms) of all responses |
| meanTotalRT | Mean response time (in ms) of all responses |
| sdTotalRT | Standard deviation of all response times (in ms) |
| skewTotalRT | Skewness of the distribution of all response times uses Excel algorithm suggested interpretation -0.5 <= skew <=0.5 -> fairly symmetrical 0.5 < |skew| <= 1 -> moderately skewed |skew| > 1 -> highly skewed |
| kurtosisTotalRT | Measure of kurtosis of the distribution of all response times (measure of the "tailedness" or "outlyingness" of a data distribution compared to the normal distribution) uses Excel algorithm Suggested Interpretation ~0: The distribution's tails are similar to those of a normal distribution > 0: The distribution is "heavy-tailed," meaning there are more extreme values (outliers) than in a normal distribution (more peaked) < 0: The distribution is "light-tailed," meaning there are fewer extreme values or outliers than in a normal distribution (flatter) |
File Name: dls_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 |
| display.refreshRate | Vertical refreshrate of the current monitor (in Hz) |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| 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) trialnum is a built-in inquisit variable; it counts all trials run; even those that do not store data to the data file. |
| ageCohort | The entered age cohort 0 = <18 1 = 18-25 2 = 26-44 3 = 45-60 4 = 61-80 5 = >80 |
| minTargetDelayMS | The minimum target delay (in ms) (delay=onset after trialBegin) - parameter setting |
| maxTargetDelayMS | The maximum target delay (in ms) (delay=onset after trialBegin) - parameter setting |
| minRT | The minimum valid response time (in ms); measured from onset of target - parameter setting |
| maxRT | The maximum valid response time (in ms); measured from onset of target - parameter setting |
| trialCounter | Tracks the number of trials run during the current block |
| sampledTargetDelay | The sampled targetDelay |
| actualTargetDelay | The actual targetDelay (the closest to the nearest refreshinterval) |
| response | The response of participant (scancode of response button) |
| responseText | The pressed key |
| corrResp | The correct response key |
| correct | Correctness of response 1 = response key pressed AND response time within specified range (response was not greater than maxRT) 0 = otherwise |
| latency | Response latency (in ms); measured from: start of trial |
| rt | Response latency (in ms); measured from: onset of target early responses (rt < minRT) are tracked BUT are not valid responses => they do NOT end a trial (so accidentally pressing a response key does not end the trial, but the script tracks how often this happens) |
| validRT | 0 = the final rt is invalid (rt > parameters.maxRT) 1 = valid final rt |
| targetTimestamp | The timestamp (elapsedTime of script in ms) of the last target |
| respTimestamp | The responseTimestamp (elapsedTime of script in ms) of the last response |
| eResp | 0 = no early response was detected during the current trial 1 = at least one early response was detected during the current trial early trial = faster than minRT after target onset |
| eRespCounter | Tracks the number of early responses during the current block (rt < minRT) excessive early responding might be considered a red flag |
| slowRespCounter | Tracks number of invalid rts during the current block (rt > maxRT) |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| runKeyboardCheck | True = device is screened for an external keyboard false = no external keyboard check is conducted | false |
Design |
||
| nPracticeTrials | Number of practice trials to run -> Deary et al (2011) | 8 |
| nTestTrials | Number of test trials to run -> Deary et al (2011) | 20 |
Ui |
||
| widthPct | Proportional width of the squares (relative to canvas width) | 10% |
Timing Parameters |
||
| minTargetDelayMS | The minimum delay of the target X (in ms; relative to trialOnset) | 1000 |
| maxTargetDelayMS | The maximum delay of the target X (in ms; relative to trialOnset) | 3000 |
| minRT | The fastest response time (in ms; relative to target onset) that should be considered a valid response (and will end a trial) | 0 |
| maxRT | The slowest response time (in ms; relative to target onset) that should be considered a valid response (that could end in a correct) | 5000 |
Response Keys |
||
| respKey | "B" | |