Script Author: Katja Borchert, Ph.D. (katjab@millisecond.com), Millisecond
Millisecond thanks Dr. Hester et al for generously providing assistance with
script development/clarifications!
Created: January 24, 2013
Last Modified: January 25, 2024 by K. Borchert (katjab@millisecond.com), Millisecond
Script Copyright © Millisecond Software, LLC
This script implements the Error Awareness Task (EAT), a specialized motor Go/NoGo response inhibition task to study error awareness of commission errors. The EAT uses competing rules for Go-Nogo Responses to increase the likelihood of commission errors.
The implemented procedure is based on:
Hester, R, Simões-Franklin, C., & Garavan, H. (2007). Post-error behavior in active cocaine users: poor awareness of errors in the presence of intact performance adjustments. Neuropsychopharmacology, 32, 1974–1984.
30 minutes
Participants are presented with a stream of words (one at a time) in different colors at a constant pace. They are instructed to press the Go-response button if word meaning and color font match AND if the combo (word/font color) is different than the one preceding it (GO trials). They are instructed to withhold the response if word meaning and color font do NOT match (Stroop NOGO) OR if the presented combo (word/font color) repeats the one preceding it (Repeat NOGO). To indicate error awareness participants are asked to press the Go button twice during the Go trials following any commission errors done during the NoGo trials ( a pregenerated sequence of trialtypes is used in which there are at least 2-15 Go trials in between NoGo trials)
• 3 different types of trials
Go trials: congruent word and font color; combination does not repeat previous target => require response
Stroop NoGo: incongruent word and font color => require suppression of response
Repeat NoGo: repeat of previous word and font color => require suppression of response
words can never be repeated unless by Repeat NoGo trials. Colors are chosen randomly in Stroop
trials and could therefore repeat the color of the previous Go trial (but not the word). Similarly,
Go trials could repeat the color of the preceding Stroop trial (but not the word).
• Error Awareness Response: double clicking the response button in the Go trial following the commission error in
NoGo trials
• 900 trials total
=> In this script:
700 Go trials
50 Stroop trials (followed by 50 Go_afternogo trials)
50 Repeat trials (followed by 50 Go_afternogo trials)
• 4 blocks of 225 trials: the sequence of Go and NoGo trials is predetermined and the same for each participant.
(EDITABLE CODE -> Editable Lists -> list.trialsequence)
- Each block contains roughly the same number of NoGo trials (odd blocks contain 12 Stroop/13 Repeat NoGo trials,
even blocks contain 13 Stroop/12 Repeat NoGo trials) and 200 Go trials
- there are 2-15 Go trials in between 2 NoGo trials in each block
practice:
A practice block is provided (not original to Hester et al, 2007): 70 trials (controlled by list.trialsequence_practice)
Participants receive errorfeedback
a) after incorrect suppression of responses in Go trials and
b) after incorrectly responding to NoGo trials. This feedback further includes a reminder to press the response key
twice during the next trial to practice the error awareness response
are not original. Edit under EDITABLE CODE -> Editable Instructions
File Name: errorawarenesstask_summary*.iqdat
| Name | Description |
|---|---|
| inquisit.version | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| 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 |
| hitRate | Proportion correct responses in Go Trials |
| missRate | Proportion missed/omitted responses in Go Trials |
| faRate | Proportion failed suppressions in NoGo trials (=commission errors) across test blocks |
| corrRejectRate | Proportion correct suppressions in NoGo trials |
Signal Detection Measures |
|
| zHitRate | Z-score of the hitRate |
| zFARate | Z-score of the falseAlarm/commission rate *Adjustments to z-scores as recommended 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) => Adjustments are made if the FArate (hitRate) = 0 (increased to 0.005) or 1 (decreased to 0.995)* |
| dPrime | Computes d' (parametric measure of discriminability btw. signals and noise) => Range (in this script) -5.1516586840152740479 <= dprime <= 5.1516586840152740479 (=perfect performance) => The higher the value, the better signals (go stims) were distinguished from noise (nogo stims) (d' = 0: chance performance; negative d-primes: participant treated nontargets as targets and targets as nontargets) |
| c | C-criterion in signal detection:The absolute value of c provides an indication of the strength of the response bias/response style negative: participant more likely to report that signal is present (liberal response style) may favor faster responding in speed-accuracy trade-off response paradigms positive: favoring caution (conservative response style) |
| propNoGoErrorAwareness | Proportion correct error awareness responses after failed suppression in NoGo trials (=commission errors) across all test blocks |
File Name: errorawarenesstask_raw*.iqdat
| Name | Description |
|---|---|
| build | Inquisit version number |
| computer.platform | Device platform: win | mac |ios | android |
| date | Date the session was run |
| time | Time the session was run |
| subject | Participant ID |
| group | Group number |
| session | Session number |
| blockCode | Name of the current block |
| blockNum | Number of the current block |
| trialCode | Name of the current trial |
| trialNum | Number of the current trial |
| practice | 1 = practiceA; 2= PracticeB; 0 = test |
| nextTrial | Stores the trialtype of the next trial 1 = Go trial; 2 = Stroop; 3 = Repeat |
| trialType | 1 = Go trial; 2 = Stroop; 3 = Repeat stores the name of the trialtype "Go", "Go afterNoGo", "Stroop NoGo", "Repeat NoGo" |
| countTrials | Counts the trials in a given block |
| stimulusItem | The presented stimuli in order of trial presentation |
| response | The participant's first response (scancode) 57: spacebar 0: no response |
| acc | Stores the accuracy of the given response 1 = correct response for Go-trial (response key was pressed) and NoGo trial (response was suppressed) 0 = incorrect response for Go-trial (no response key was pressed) and NoGo trial (response key was pressed) |
| latency | Stores the response latency in ms (if no response: it's empty) in error awareness response trials, it's the latency of the first response variables to track error awareness response |
| goResponse1 | Stores the first response in a "Go afterNoGo" trial (scancode of response; 57 = spacebar) |
| goResponse1rt | Stores the latency of the first response in a "Go afterNoGo" trial |
| goResponse2 | Stores the second response in a "Go afterNoGo" trial (scancode of response; 57 = spacebar) |
| goResponse2rt | Stores the latency of the second response in a "Go afterNoGo" trial |
| prevCorrect | Accuracy of the preceding trial |
| errorAwarenessResponse | Stores whether an error awareness response (aka double response) has been given 0 = no double response 1 = error awareness after NoGo trial (given in Go trial) 2 = error awareness after Go trial (given in Go trial) 3 = double response given in NoGo trial |
| correctErrorAwareness | 1 = the given error awareness response was correct (participant err-ed on the previous trial) 0 = the given awareness response was incorrect (no error awareness response was indicated during the current trial) empty = N/A as no error awareness response was given |
| countFailedSuppression | Counts the number of NoGo failed suppression errors across all test blocks |
| countNoGoErrorAwareness | Counts the number of correct error awareness responses for commission errors across all test blocks |
| countOmission | Counts the number of omission errors in Go trials across all test blocks |
| countGo | Go trial count |
| countNoGo | Nogo trial count |
The procedure can be adjusted by setting the following parameters.
| Name | Description | Default |
|---|---|---|
| responseKey | The response key | " " -> spacebar |
| fontSizeTarget | Fontsize of the targets in screen height percentages | 10% |
| fontSizeFixation | Fontsize of the fixation mark in screen height percentages | 3% |
| stimulusDuration | Presentation duration of the targets | 900ms |
| isiDuration | Interstimulus interval in this script participants have stimulusduration + ISIduration to respond | 600ms |
| skipPractice | True = practice block is skipped false = practice block is run | |
| trialsperBlock | The number of trials in a block; computer uses this value to stop each block (default: 225) if this number is changed, list.trialsequence might need to get updated accordingly |